summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPiotr Gorski2024-03-05 22:37:15 +0100
committerPiotr Gorski2024-03-05 22:37:15 +0100
commit6b182d021decff2983182ecbe2e49eb26d93f154 (patch)
tree59bcf752f2be6bc65a8ebac8fe58eb16c815a3cd
parente4888e9ab6a07213b14d469152a791b066414182 (diff)
downloadaur-6b182d021decff2983182ecbe2e49eb26d93f154.tar.gz
sddm-git: update PKGBUILD
Signed-off-by: Piotr Gorski <lucjan.lucjanov@gmail.com>
-rw-r--r--.SRCINFO4
-rw-r--r--0001-Revert-cmake-remove-the-final-Arch-PAM-modules.patch144
-rw-r--r--PKGBUILD29
3 files changed, 169 insertions, 8 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8d65cce1d6d0..7cad7c59401d 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = sddm-git
pkgdesc = The Simple Desktop Display Manager
pkgver = 0.21.0.14.gae072f9
- pkgrel = 1
+ pkgrel = 3
url = https://github.com/sddm/sddm
arch = x86_64
license = GPL
@@ -34,6 +34,8 @@ pkgbase = sddm-git
backup = etc/pam.d/sddm-autologin
backup = etc/pam.d/sddm-greeter
source = git+https://github.com/sddm/sddm.git#branch=develop
+ source = 0001-Revert-cmake-remove-the-final-Arch-PAM-modules.patch
sha256sums = SKIP
+ sha256sums = 8939dabe3dd539ff44cf3e5740a1a4a518836ae147fbe54f163bd9f0b10ccc6e
pkgname = sddm-git
diff --git a/0001-Revert-cmake-remove-the-final-Arch-PAM-modules.patch b/0001-Revert-cmake-remove-the-final-Arch-PAM-modules.patch
new file mode 100644
index 000000000000..36c3a8d7454d
--- /dev/null
+++ b/0001-Revert-cmake-remove-the-final-Arch-PAM-modules.patch
@@ -0,0 +1,144 @@
+From 1159c7d0ccc28cdcf3a299afd43ea737a993a7d3 Mon Sep 17 00:00:00 2001
+From: Piotr Gorski <lucjan.lucjanov@gmail.com>
+Date: Tue, 5 Mar 2024 22:30:38 +0100
+Subject: [PATCH] Revert "cmake: remove the final (Arch) PAM modules"
+
+This reverts commit ae072f901671b68861da9577e3e12e350a9053d5.
+
+Signed-off-by: Piotr Gorski <lucjan.lucjanov@gmail.com>
+---
+ CMakeLists.txt | 1 +
+ services/CMakeLists.txt | 18 ++++++++++++++++++
+ services/sddm-autologin-tally2.pam | 13 +++++++++++++
+ services/sddm-autologin.pam | 13 +++++++++++++
+ services/sddm-greeter.pam.in | 17 +++++++++++++++++
+ services/sddm.pam | 15 +++++++++++++++
+ 6 files changed, 77 insertions(+)
+ create mode 100644 services/sddm-autologin-tally2.pam
+ create mode 100644 services/sddm-autologin.pam
+ create mode 100644 services/sddm-greeter.pam.in
+ create mode 100644 services/sddm.pam
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4e84543..1b8a147 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -19,6 +19,7 @@ option(ENABLE_JOURNALD "Enable logging to journald" ON)
+ option(NO_SYSTEMD "Disable systemd support" OFF)
+ option(USE_ELOGIND "Use elogind instead of logind" OFF)
+ option(BUILD_WITH_QT6 "Build with Qt 6" OFF)
++option(INSTALL_PAM_CONFIGURATION "Install PAM configuration files" ON)
+
+ set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+diff --git a/services/CMakeLists.txt b/services/CMakeLists.txt
+index f542c55..5406f8b 100644
+--- a/services/CMakeLists.txt
++++ b/services/CMakeLists.txt
+@@ -11,3 +11,21 @@ if(DEFINED SYSTEMD_TMPFILES_DIR)
+ configure_file(sddm-tmpfiles.conf.in sddm-tmpfiles.conf)
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sddm-tmpfiles.conf" DESTINATION "${SYSTEMD_TMPFILES_DIR}" RENAME sddm.conf)
+ endif()
++
++if(USE_ELOGIND)
++ set(LOGIND_PAM_MODULE "pam_elogind.so")
++else()
++ set(LOGIND_PAM_MODULE "pam_systemd.so")
++endif()
++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/sddm-greeter.pam.in" "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam")
++
++if(INSTALL_PAM_CONFIGURATION)
++ if(HAVE_PAM_FAILLOCK)
++ install(FILES sddm-autologin.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-autologin)
++ else()
++ install(FILES sddm-autologin-tally2.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-autologin)
++ endif()
++
++ install(FILES sddm.pam DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm)
++ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/sddm-greeter.pam" DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d RENAME sddm-greeter)
++endif()
+diff --git a/services/sddm-autologin-tally2.pam b/services/sddm-autologin-tally2.pam
+new file mode 100644
+index 0000000..99729bc
+--- /dev/null
++++ b/services/sddm-autologin-tally2.pam
+@@ -0,0 +1,13 @@
++#%PAM-1.0
++auth required pam_env.so
++auth required pam_tally2.so file=/var/log/tallylog onerr=succeed
++auth required pam_shells.so
++auth required pam_nologin.so
++auth required pam_permit.so
++-auth optional pam_gnome_keyring.so
++-auth optional pam_kwallet5.so
++account include system-local-login
++password include system-local-login
++session include system-local-login
++-session optional pam_gnome_keyring.so auto_start
++-session optional pam_kwallet5.so auto_start
+diff --git a/services/sddm-autologin.pam b/services/sddm-autologin.pam
+new file mode 100644
+index 0000000..b42991e
+--- /dev/null
++++ b/services/sddm-autologin.pam
+@@ -0,0 +1,13 @@
++#%PAM-1.0
++auth required pam_env.so
++auth required pam_faillock.so preauth
++auth required pam_shells.so
++auth required pam_nologin.so
++auth required pam_permit.so
++-auth optional pam_gnome_keyring.so
++-auth optional pam_kwallet5.so
++account include system-local-login
++password include system-local-login
++session include system-local-login
++-session optional pam_gnome_keyring.so auto_start
++-session optional pam_kwallet5.so auto_start
+diff --git a/services/sddm-greeter.pam.in b/services/sddm-greeter.pam.in
+new file mode 100644
+index 0000000..d41792d
+--- /dev/null
++++ b/services/sddm-greeter.pam.in
+@@ -0,0 +1,17 @@
++#%PAM-1.0
++
++# Load environment from /etc/environment and ~/.pam_environment
++auth required pam_env.so
++
++# Always let the greeter start without authentication
++auth required pam_permit.so
++
++# No action required for account management
++account required pam_permit.so
++
++# Can't change password
++password required pam_deny.so
++
++# Setup session
++session required pam_unix.so
++session optional @LOGIND_PAM_MODULE@
+diff --git a/services/sddm.pam b/services/sddm.pam
+new file mode 100644
+index 0000000..df11003
+--- /dev/null
++++ b/services/sddm.pam
+@@ -0,0 +1,15 @@
++#%PAM-1.0
++
++auth include system-login
++-auth optional pam_gnome_keyring.so
++-auth optional pam_kwallet5.so
++
++account include system-login
++
++password include system-login
++-password optional pam_gnome_keyring.so use_authtok
++
++session optional pam_keyinit.so force revoke
++session include system-login
++-session optional pam_gnome_keyring.so auto_start
++-session optional pam_kwallet5.so auto_start
+--
+2.43.0.232.ge79552d197
+
diff --git a/PKGBUILD b/PKGBUILD
index 635f3c372db9..14d06f0ccf32 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
_pkgbase="sddm"
pkgname="$_pkgbase-git"
pkgver=0.21.0.14.gae072f9
-pkgrel=1
+pkgrel=3
pkgdesc="The Simple Desktop Display Manager"
arch=("x86_64")
url="https://github.com/sddm/sddm"
@@ -37,14 +37,29 @@ backup=('usr/share/sddm/scripts/Xsetup'
'etc/pam.d/sddm'
'etc/pam.d/sddm-autologin'
'etc/pam.d/sddm-greeter')
-source=("git+https://github.com/sddm/sddm.git#branch=develop")
-sha256sums=('SKIP')
+source=("git+https://github.com/sddm/sddm.git#branch=develop"
+ '0001-Revert-cmake-remove-the-final-Arch-PAM-modules.patch')
+sha256sums=('SKIP'
+ '8939dabe3dd539ff44cf3e5740a1a4a518836ae147fbe54f163bd9f0b10ccc6e')
pkgver() {
- cd $_pkgbase
- #_ver="$(cat CMakeLists.txt | grep -m3 -e _VERSION_MAJOR -e _VERSION_MINOR -e _VERSION_PATCH | grep -o "[[:digit:]]*" | paste -sd'.')"
- #echo "${_ver}.r$(git rev-list --count HEAD).g$(git rev-parse --short HEAD)"
- git describe --tags --long | sed 's/^v//;s/-/./g'
+ cd $_pkgbase
+ #_ver="$(cat CMakeLists.txt | grep -m3 -e _VERSION_MAJOR -e _VERSION_MINOR -e _VERSION_PATCH | grep -o "[[:digit:]]*" | paste -sd'.')"
+ #echo "${_ver}.r$(git rev-list --count HEAD).g$(git rev-parse --short HEAD)"
+ git describe --tags --long | sed 's/^v//;s/-/./g'
+}
+
+prepare() {
+ cd $_pkgbase
+
+ local src
+ for src in "${source[@]}"; do
+ src="${src%%::*}"
+ src="${src##*/}"
+ [[ $src = *.patch ]] || continue
+ echo "Applying patch $src..."
+ patch -Np1 < "../$src"
+ done
}
build() {