diff options
author | Robin Lange | 2022-03-31 19:25:21 +1100 |
---|---|---|
committer | Robin Lange | 2022-03-31 19:25:21 +1100 |
commit | bd227dcea7f7e1b8c6de80f416ce89ec2288761d (patch) | |
tree | dbaf986c281e9905591e4e29e8a00bd8aa3aeb28 | |
parent | b3040ac5c2f67dd764324beb0d1eca09fd7e4514 (diff) | |
download | aur-bd227dcea7f7e1b8c6de80f416ce89ec2288761d.tar.gz |
Update to 41.3
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | 0002-nvidia-prime.patch (renamed from 0003-nvidia-prime.patch) | 0 | ||||
-rw-r--r-- | 0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch | 73 | ||||
-rw-r--r-- | PKGBUILD | 101 | ||||
-rw-r--r-- | default.pa | 10 |
5 files changed, 68 insertions, 136 deletions
@@ -1,6 +1,6 @@ pkgbase = gdm-prime pkgdesc = Display manager and login screen - pkgver = 41.0+r15+g23ebe617 + pkgver = 41.3 pkgrel = 1 url = https://wiki.gnome.org/Projects/GDM arch = x86_64 @@ -19,16 +19,13 @@ pkgbase = gdm-prime depends = xorg-xhost depends = libxdmcp depends = systemd - source = git+https://gitlab.gnome.org/GNOME/gdm.git#commit=23ebe617119506a0614f1bd2c76cd9bcf7e8fb7c + depends = libcanberra + source = git+https://gitlab.gnome.org/GNOME/gdm.git#commit=cb49bac2fe1160094eae360f985e54073be3c49a source = 0001-Xsession-Don-t-start-ssh-agent-by-default.patch - source = 0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch - source = 0003-nvidia-prime.patch - source = default.pa + source = 0002-nvidia-prime.patch sha256sums = SKIP sha256sums = 39a7e1189d423dd428ace9baac77ba0442c6706a861d3c3db9eb3a6643e223f8 - sha256sums = e3dcaaa5ffa2dd4d3338c8b5827965ea2ca1efd9a95d7272a107e6121cb7898f sha256sums = a1fb80c69454492390e4b7edac0efe55b2178c7031051d3eab99ed8c14d3e0e4 - sha256sums = e88410bcec9e2c7a22a319be0b771d1f8d536863a7fc618b6352a09d61327dcb pkgname = gdm-prime pkgdesc = Display manager and login screen - patched with Prime support for Optimus laptops @@ -42,6 +39,7 @@ pkgname = gdm-prime depends = xorg-xhost depends = libxdmcp depends = systemd + depends = libcanberra depends = libgdm optdepends = fprintd: fingerprint authentication provides = gdm @@ -58,8 +56,10 @@ pkgname = gdm-prime pkgname = libgdm-prime pkgdesc = GDM support library - patched with Prime support for Optimus laptops - depends = systemd - depends = glib2 - depends = dconf + depends = libsystemd.so + depends = libglib-2.0.so + depends = libgobject-2.0.so + depends = libgio-2.0.so + provides = libgdm.so provides = libgdm conflicts = libgdm diff --git a/0003-nvidia-prime.patch b/0002-nvidia-prime.patch index b4b804864ae0..b4b804864ae0 100644 --- a/0003-nvidia-prime.patch +++ b/0002-nvidia-prime.patch diff --git a/0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch b/0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch deleted file mode 100644 index ce6d5539376f..000000000000 --- a/0002-pam-arch-Drop-pam_faillock-counting-from-fingerprint.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org> -Date: Tue, 31 Aug 2021 21:51:46 +0000 -Subject: [PATCH] pam-arch: Drop pam_faillock counting from fingerprint and - smartcard - -As mentioned in an [fprintd issue comment][1], we need to make sure that -the stack's error status is taken from the main auth module, i.e. -pam_fprintd, otherwise GDM will not behave correctly. - -Still use pam_faillock preauth so that we test whether the account is -locked, but don't use authfail/authsucc to log a failure/success so this -stack doesn't participate in triggering the lock. - -Ideally we would check which return values we actually want to treat as -a reason to lock the account (e.g. fingerprint mismatch) and which are -neutral (e.g. no fingerprints enrolled), but that's much more effort. - -Should fix [FS#71750][2]. - -[1]: https://gitlab.freedesktop.org/libfprint/fprintd/-/issues/112#note_1016191 -[2]: https://bugs.archlinux.org/task/71750 ---- - data/pam-arch/gdm-fingerprint.pam | 10 ++-------- - data/pam-arch/gdm-smartcard.pam | 10 ++-------- - 2 files changed, 4 insertions(+), 16 deletions(-) - -diff --git a/data/pam-arch/gdm-fingerprint.pam b/data/pam-arch/gdm-fingerprint.pam -index cc660d9a90ba..2aaf9f6c88a0 100644 ---- a/data/pam-arch/gdm-fingerprint.pam -+++ b/data/pam-arch/gdm-fingerprint.pam -@@ -2,16 +2,10 @@ - - auth required pam_shells.so - auth requisite pam_nologin.so --auth required pam_faillock.so preauth --# Optionally use requisite above if you do not want to prompt for the fingerprint --# on locked accounts. --auth [success=1 default=ignore] pam_fprintd.so --auth [default=die] pam_faillock.so authfail -+auth requisite pam_faillock.so preauth -+auth required pam_fprintd.so - auth optional pam_permit.so - auth required pam_env.so --auth required pam_faillock.so authsucc --# If you drop the above call to pam_faillock.so the lock will be done also --# on non-consecutive authentication failures. - auth [success=ok default=1] pam_gdm.so - auth optional pam_gnome_keyring.so - -diff --git a/data/pam-arch/gdm-smartcard.pam b/data/pam-arch/gdm-smartcard.pam -index e6ec129948a7..6d7333bf4204 100644 ---- a/data/pam-arch/gdm-smartcard.pam -+++ b/data/pam-arch/gdm-smartcard.pam -@@ -2,16 +2,10 @@ - - auth required pam_shells.so - auth requisite pam_nologin.so --auth required pam_faillock.so preauth --# Optionally use requisite above if you do not want to prompt for the smartcard --# on locked accounts. --auth [success=1 default=ignore] pam_pkcs11.so wait_for_card card_only --auth [default=die] pam_faillock.so authfail -+auth requisite pam_faillock.so preauth -+auth required pam_pkcs11.so wait_for_card card_only - auth optional pam_permit.so - auth required pam_env.so --auth required pam_faillock.so authsucc --# If you drop the above call to pam_faillock.so the lock will be done also --# on non-consecutive authentication failures. - auth [success=ok default=1] pam_gdm.so - auth optional pam_gnome_keyring.so - @@ -1,30 +1,25 @@ -# Maintainer: Robin Lange <robin dot langenc at gmail dot com> # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> pkgbase=gdm-prime pkgname=(gdm-prime libgdm-prime) -pkgver=41.0+r15+g23ebe617 +pkgver=41.3 pkgrel=1 pkgdesc="Display manager and login screen" url="https://wiki.gnome.org/Projects/GDM" arch=(x86_64) license=(GPL) depends=(gnome-shell gnome-session upower xorg-xrdb xorg-server xorg-xhost - libxdmcp systemd) + libxdmcp systemd libcanberra) 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 - 0003-nvidia-prime.patch - default.pa) + 0002-nvidia-prime.patch) sha256sums=('SKIP' '39a7e1189d423dd428ace9baac77ba0442c6706a861d3c3db9eb3a6643e223f8' - 'e3dcaaa5ffa2dd4d3338c8b5827965ea2ca1efd9a95d7272a107e6121cb7898f' - 'a1fb80c69454492390e4b7edac0efe55b2178c7031051d3eab99ed8c14d3e0e4' - 'e88410bcec9e2c7a22a319be0b771d1f8d536863a7fc618b6352a09d61327dcb') + 'a1fb80c69454492390e4b7edac0efe55b2178c7031051d3eab99ed8c14d3e0e4') pkgver() { cd gdm @@ -34,28 +29,25 @@ pkgver() { prepare() { cd gdm - # 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 - - git apply -3 ../0003-nvidia-prime.patch + git apply -3 ../0002-nvidia-prime.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 plymouth=disabled \ - -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 plymouth=disabled + -D run-dir=/run/gdm -D selinux=disabled + ) + + arch-meson gdm build "${meson_options[@]}" meson compile -C build } @@ -63,6 +55,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-prime() { provides=(gdm) conflicts=(gdm) @@ -77,33 +79,46 @@ package_gdm-prime() { 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 + install -Dm644 /dev/stdin 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-prime() { - provides=(libgdm) - conflicts=(libgdm) pkgdesc="GDM support library - patched with Prime support for Optimus laptops" - depends=(systemd glib2 dconf) - mv libgdm "$pkgdir/usr" + depends=(libsystemd.so libg{lib,object,io}-2.0.so) + provides=(libgdm.so libgdm) + conflicts=(libgdm) + + mv libgdm/* "$pkgdir" } diff --git a/default.pa b/default.pa deleted file mode 100644 index 3b7d67f6cab9..000000000000 --- a/default.pa +++ /dev/null @@ -1,10 +0,0 @@ -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 |