PKGBUILD 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
  2. # Contributor: Ionut Biru <ibiru@archlinux.org>
  3. # Contributor: Flamelab <panosfilip@gmail.com
  4. pkgname=gnome-shell
  5. pkgver=44.2
  6. pkgrel=1
  7. epoch=1
  8. pkgdesc="Next generation desktop shell"
  9. url="https://wiki.gnome.org/Projects/GnomeShell"
  10. arch=(x86_64)
  11. license=(GPL)
  12. depends=(
  13. accountsservice
  14. gcr-4
  15. gjs
  16. gnome-autoar
  17. gnome-session
  18. gnome-settings-daemon
  19. gsettings-desktop-schemas
  20. gtk4
  21. libadwaita
  22. libcanberra-pulse
  23. libgdm
  24. libgweather-4
  25. libibus
  26. libnma-gtk4
  27. libsecret
  28. libsoup3
  29. mutter
  30. unzip
  31. upower
  32. )
  33. makedepends=(
  34. asciidoc
  35. bash-completion
  36. evolution-data-server
  37. git
  38. gnome-control-center
  39. gobject-introspection
  40. gtk-doc
  41. meson
  42. sassc
  43. )
  44. checkdepends=(
  45. appstream-glib
  46. python-dbusmock
  47. xorg-server-xvfb
  48. )
  49. optdepends=(
  50. 'evolution-data-server: Evolution calendar integration'
  51. 'gnome-bluetooth-3.0: Bluetooth support'
  52. 'gnome-control-center: System settings'
  53. 'gnome-disk-utility: Mount with keyfiles'
  54. 'gst-plugin-pipewire: Screen recording'
  55. 'gst-plugins-good: Screen recording'
  56. 'power-profiles-daemon: Power profile switching'
  57. 'switcheroo-control: Multi-GPU support'
  58. )
  59. groups=(gnome)
  60. _commit=071a47ba27d7117f56fd965ad2a9675d1ab823f6 # tags/44.2^0
  61. source=(
  62. "git+https://gitlab.gnome.org/GNOME/gnome-shell.git#commit=$_commit"
  63. "git+https://gitlab.gnome.org/GNOME/libgnome-volume-control.git"
  64. )
  65. b2sums=('SKIP'
  66. 'SKIP')
  67. pkgver() {
  68. cd $pkgname
  69. git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
  70. }
  71. prepare() {
  72. cd $pkgname
  73. git submodule init
  74. git submodule set-url subprojects/gvc "$srcdir/libgnome-volume-control"
  75. git -c protocol.file.allow=always submodule update
  76. }
  77. build() {
  78. local meson_options=(
  79. -D gtk_doc=true
  80. )
  81. CFLAGS="${CFLAGS/-O2/-O3} -fno-semantic-interposition"
  82. LDFLAGS+=" -Wl,-Bsymbolic-functions"
  83. arch-meson $pkgname build "${meson_options[@]}"
  84. meson compile -C build
  85. }
  86. _check() (
  87. export XDG_RUNTIME_DIR="$PWD/rdir"
  88. mkdir -p -m 700 "$XDG_RUNTIME_DIR"
  89. meson test -C build --print-errorlogs -t 3
  90. )
  91. check() {
  92. dbus-run-session xvfb-run -s '-nolisten local +iglx -noreset' \
  93. bash -c "$(declare -f _check); _check"
  94. }
  95. package() {
  96. depends+=(libmutter-12.so)
  97. meson install -C build --destdir "$pkgdir"
  98. }
  99. # vim:set sw=2 sts=-1 et: