diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 96 |
1 files changed, 55 insertions, 41 deletions
@@ -7,7 +7,7 @@ _pkgbase=gdm pkgbase=gdm-plymouth pkgname=(gdm-plymouth libgdm-plymouth) -pkgver=41.0+r15+g23ebe617 +pkgver=41.3 pkgrel=1 pkgdesc="Display manager and login screen with plymouth support" url="https://wiki.gnome.org/Projects/GDM" @@ -16,15 +16,11 @@ license=(GPL) depends=(plymouth gnome-shell gnome-session upower systemd xorg-xrdb xorg-server xorg-xhost libxdmcp) makedepends=(yelp-tools gobject-introspection git docbook-xsl meson) checkdepends=(check) -_commit=23ebe617119506a0614f1bd2c76cd9bcf7e8fb7c # main +_commit=cb49bac2fe1160094eae360f985e54073be3c49a # tags/41.3^0 source=("git+https://gitlab.gnome.org/GNOME/gdm.git#commit=$_commit" - 0001-Xsession-Don-t-start-ssh-agent-by-default.patch - 0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch - default.pa) + 0001-Xsession-Don-t-start-ssh-agent-by-default.patch) sha256sums=('SKIP' - '39a7e1189d423dd428ace9baac77ba0442c6706a861d3c3db9eb3a6643e223f8' - 'e3dcaaa5ffa2dd4d3338c8b5827965ea2ca1efd9a95d7272a107e6121cb7898f' - 'e88410bcec9e2c7a22a319be0b771d1f8d536863a7fc618b6352a09d61327dcb') + '39a7e1189d423dd428ace9baac77ba0442c6706a861d3c3db9eb3a6643e223f8') pkgver() { cd $_pkgbase @@ -34,27 +30,22 @@ pkgver() { prepare() { cd $_pkgbase - - # https://bugs.archlinux.org/task/67485 - git cherry-pick -n 8528a503ad70669a5f0c03d0a92ba19326983b82 - - # Don't start ssh-agent by default git apply -3 ../0001-Xsession-Don-t-start-ssh-agent-by-default.patch - - # https://bugs.archlinux.org/task/71750 - git apply -3 ../0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch } build() { - arch-meson gdm build \ - -D dbus-sys="/usr/share/dbus-1/system.d" \ - -D default-pam-config=arch \ - -D default-path="/usr/local/bin:/usr/local/sbin:/usr/bin" \ - -D gdm-xsession=true \ - -D ipv6=true \ - -D run-dir=/run/gdm \ + local meson_options=( + -D dbus-sys="/usr/share/dbus-1/system.d" + -D default-pam-config=arch + -D default-path="/usr/local/bin:/usr/local/sbin:/usr/bin" + -D gdm-xsession=true + -D ipv6=true + -D run-dir=/run/gdm -D selinux=disabled + ) + + arch-meson gdm build "${meson_options[@]}" meson compile -C build } @@ -62,6 +53,16 @@ check() { meson test -C build --print-errorlogs } +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done +} + package_gdm-plymouth() { depends+=(libgdm-plymouth) optdepends=('fprintd: fingerprint authentication') @@ -75,33 +76,46 @@ package_gdm-plymouth() { meson install -C build --destdir "$pkgdir" - install -d "$pkgdir/var/lib" - install -d "$pkgdir/var/lib/gdm" -o120 -g120 -m1770 - install -d "$pkgdir/var/lib/gdm/.config" -o120 -g120 -m700 - install -d "$pkgdir/var/lib/gdm/.config/pulse" -o120 -g120 -m700 - install -d "$pkgdir/var/lib/gdm/.local" -o120 -g120 -m700 - install -d "$pkgdir/var/lib/gdm/.local/share" -o120 -g120 - install -d "$pkgdir/var/lib/gdm/.local/share/applications" -o120 -g120 + cd "$pkgdir" + + install -d -o 0 -g 0 -m 0755 var + install -d -o 0 -g 0 -m 0755 var/lib + install -d -o 120 -g 120 -m 1770 var/lib/gdm + install -d -o 120 -g 120 -m 0700 var/lib/gdm/.config + install -d -o 120 -g 120 -m 0700 var/lib/gdm/.config/pulse + install -d -o 120 -g 120 -m 0700 var/lib/gdm/.local + install -d -o 120 -g 120 -m 0755 var/lib/gdm/.local/share + install -d -o 120 -g 120 -m 0755 var/lib/gdm/.local/share/applications # https://src.fedoraproject.org/rpms/gdm/blob/master/f/default.pa-for-gdm - install -t "$pkgdir/var/lib/gdm/.config/pulse" -o120 -g120 -m644 default.pa + install -o120 -g120 -m644 /dev/stdin var/lib/gdm/.config/pulse/default.pa <<END +load-module module-device-restore +load-module module-card-restore +load-module module-udev-detect +load-module module-native-protocol-unix +load-module module-default-device-restore +load-module module-always-sink +load-module module-intended-roles +load-module module-suspend-on-idle +load-module module-systemd-login +load-module module-position-event-sounds +END install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/gdm.conf" <<END g gdm 120 - u gdm 120 "Gnome Display Manager" /var/lib/gdm END -### Split libgdm - mkdir -p libgdm/{lib,share} - mv -t libgdm "$pkgdir"/usr/include - mv -t libgdm/lib "$pkgdir"/usr/lib/{girepository-1.0,libgdm*,pkgconfig} - mv -t libgdm/share "$pkgdir"/usr/share/{gir-1.0,glib-2.0} + _pick libgdm usr/include + _pick libgdm usr/lib/{girepository-1.0,libgdm*,pkgconfig} + _pick libgdm usr/share/{gir-1.0,glib-2.0} } package_libgdm-plymouth() { - pkgdesc="GDM support library with plymouth support" - depends=(systemd glib2 dconf) - provides=("libgdm") - conflicts=("libgdm") - mv libgdm "$pkgdir/usr" + pkgdesc+=" - support library" + depends=(libsystemd.so libg{lib,object,io}-2.0.so) + provides=(libgdm) + conflicts=(libgdm) + + mv libgdm/* "$pkgdir" } |