summaryrefslogtreecommitdiff
path: root/pcr/sddm-elogind
diff options
context:
space:
mode:
authorOmar Vega Ramos <ovruni@gnu.org.pe>2017-03-15 14:40:45 -0500
committerOmar Vega Ramos <ovruni@gnu.org.pe>2017-03-15 14:40:45 -0500
commit4c43080acb9ab0d768f16360ef211e90001704e4 (patch)
tree751fc82a6490ebe72b2f9e5a7da87853146f99ff /pcr/sddm-elogind
parent779d8a5b2552016201851fe22838f7750e9b40b9 (diff)
sddm-elogind: add new package to [pcr]
Diffstat (limited to 'pcr/sddm-elogind')
-rw-r--r--pcr/sddm-elogind/PKGBUILD56
-rw-r--r--pcr/sddm-elogind/sddm-elogind-pam.patch31
-rw-r--r--pcr/sddm-elogind/sddm.install15
3 files changed, 102 insertions, 0 deletions
diff --git a/pcr/sddm-elogind/PKGBUILD b/pcr/sddm-elogind/PKGBUILD
new file mode 100644
index 000000000..2e2d9231e
--- /dev/null
+++ b/pcr/sddm-elogind/PKGBUILD
@@ -0,0 +1,56 @@
+# Maintainer (Manjaro): artoo <artoo@manjaro.org>
+# Contributor (Manjaro): Andrea Scarpino <andrea@archlinux.org>
+# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
+
+_pkgname=sddm
+
+pkgname=sddm-elogind
+pkgver=0.14.0
+pkgrel=1
+pkgdesc='QML based X11 display manager'
+arch=('i686' 'x86_64' 'armv7h')
+url='http://github.com/sddm/sddm'
+license=('GPL')
+provides=('display-manager' 'sddm')
+depends=('qt5-declarative' 'dbus' 'elogind')
+makedepends=('extra-cmake-modules' 'python-docutils' 'qt5-tools')
+optdepends=('dbus-openrc: dbus initscript'
+ 'displaymanager-openrc: displaymanager initscript')
+conflicts=('display-manager' 'sddm' 'sddm-consolekit')
+install="${_pkgname}.install"
+backup=('usr/share/sddm/scripts/Xsetup'
+ 'etc/pam.d/sddm'
+ 'etc/sddm.conf')
+source=("${_pkgname}-${pkgver}.tar.gz::https://github.com/${_pkgname}/${_pkgname}/archive/v${pkgver}.tar.gz"
+ "sddm-fix-avatars.patch::https://github.com/sddm/sddm/commit/ecb903e4.patch"
+ 'sddm-elogind-pam.patch')
+sha256sums=('a551551a6ba324e9c384c89bc63e871de65fea3740eadbea2d63df86045f8205'
+ 'b091f02d6d5b2ddc9d5208b17213a181c6e8deae23e5633d694119e79b66d38b'
+ '0cbaf41fc677ec1ef3e120e351a09ebc875ffc6b92b98a7270f58d2fbe7eddf3')
+
+prepare() {
+ mkdir -p build
+ cd ${_pkgname}-${pkgver}
+ patch -p1 -i ${srcdir}/sddm-elogind-pam.patch
+}
+
+build() {
+ cd build
+ cmake ../${_pkgname}-${pkgver} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib/sddm \
+ -DDBUS_CONFIG_FILENAME=org.freedesktop.sddm.conf \
+ -DBUILD_MAN_PAGES=ON
+ make
+}
+
+package() {
+ cd build
+ make DESTDIR="${pkgdir}" install
+
+# sed -e 's|systemctl reboot|shutdown -r now|' \
+# -e 's|systemctl poweroff|shutdown -h -P|' \
+# -e 's|MinimumVT=1|MinimumVT=7|' \
+# -i ${pkgdir}/etc/sddm.conf
+}
diff --git a/pcr/sddm-elogind/sddm-elogind-pam.patch b/pcr/sddm-elogind/sddm-elogind-pam.patch
new file mode 100644
index 000000000..fe014e0a3
--- /dev/null
+++ b/pcr/sddm-elogind/sddm-elogind-pam.patch
@@ -0,0 +1,31 @@
+diff --git a/services/sddm-greeter.pam b/services/sddm-greeter.pam
+index 44e209e..633a128 100644
+--- a/services/sddm-greeter.pam
++++ b/services/sddm-greeter.pam
+@@ -14,4 +14,4 @@ password required pam_deny.so
+
+ # Setup session
+ session required pam_unix.so
+-session optional pam_systemd.so
++session optional pam_elogind.so
+--- a/services/sddm.pam 2015-08-17 18:06:19.000000000 +0200
++++ b/services/sddm.pam 2016-02-21 19:54:08.654091951 +0100
+@@ -4,3 +4,8 @@
+ account include system-login
+ password include system-login
+ session include system-login
++-auth optional pam_gnome_keyring.so
++-auth optional pam_kwallet5.so
++-password optional pam_gnome_keyring.so use_authtok
++-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
+index 4c82048..3b48708 100755
+--- a/services/sddm-autologin.pam
++++ b/services/sddm-autologin.pam
+@@ -9,3 +9,5 @@
+ password include system-local-login
+ session include system-local-login
+ -session optional pam_gnome_keyring.so auto_start
++-auth optional pam_kwallet5.so
++-session optional pam_kwallet5.so auto_start
diff --git a/pcr/sddm-elogind/sddm.install b/pcr/sddm-elogind/sddm.install
new file mode 100644
index 000000000..f078c1466
--- /dev/null
+++ b/pcr/sddm-elogind/sddm.install
@@ -0,0 +1,15 @@
+post_install() {
+ if ! getent group sddm > /dev/null; then
+ groupadd --system sddm
+ fi
+ if ! getent passwd sddm > /dev/null; then
+ useradd -c "Simple Desktop Display Manager" --system -d /var/lib/sddm -s /usr/bin/nologin -g sddm sddm
+ passwd -l sddm > /dev/null
+ fi
+ mkdir -p /var/lib/sddm
+ chown -R sddm:sddm /var/lib/sddm > /dev/null
+}
+
+post_upgrade() {
+ post_install $1
+}