diff --git a/extra-repos/systemd/plasma-login-manager/APKBUILD b/extra-repos/systemd/plasma-login-manager/APKBUILD new file mode 100644 index 000000000..3422af4ec --- /dev/null +++ b/extra-repos/systemd/plasma-login-manager/APKBUILD @@ -0,0 +1,84 @@ +# The group tag is just to easily find this APKBUILD by some scripts for automation +# group=kde-plasma +maintainer="team/kde " +pkgname=plasma-login-manager +pkgver=6.6.0 +pkgrel=0 +pkgdesc="A display manager for KDE Plasma" +arch="all" +url="https://kde.org/plasma-desktop" +license="GPL-2.0-or-later" +makedepends=" + doxygen + extra-cmake-modules + graphviz + kauth-dev + kcmutils-dev + kconfig-dev + kdbusaddons-dev + kde-qdoc-common + ki18n-dev + kio-dev + kpackage-dev + kwindowsystem-dev + layer-shell-qt-dev + linux-pam-dev + libxau-dev + plasma-workspace-dev + qt6-qtbase-dev + qt6-qtdeclarative-dev + qt6-qttools-dev + samurai + systemd-dev + " +subpackages=" + $pkgname-lang + $pkgname-systemd + " + +case "$pkgver" in + *.*.9*) _rel=unstable;; + *) _rel=stable;; +esac + +# strip fourth version component for source URL +case "$pkgver" in + *.*.*.*) _pkgver="${pkgver%.*}" ;; + *) _pkgver="$pkgver" ;; +esac + +_repo_url="https://invent.kde.org/plasma/plasma-login-manager.git" +source="https://download.kde.org/$_rel/plasma/$_pkgver/plasma-login-manager-$pkgver.tar.xz + plasmalogin.pam + plasmalogin-autologin.pam + plasmalogin-greeter.pam + " + +build() { + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DINSTALL_PAM_CONFIGURATION=OFF + cmake --build build +} + +check() { + ctest --test-dir build +} + +package() { + DESTDIR="$pkgdir" cmake --install build + + install -Dm644 "$srcdir"/plasmalogin.pam "$pkgdir"/usr/lib/pam.d/plasmalogin + install -Dm644 "$srcdir"/plasmalogin-autologin.pam "$pkgdir"/usr/lib/pam.d/plasmalogin-autologin + install -Dm644 "$srcdir"/plasmalogin-greeter.pam "$pkgdir"/usr/lib/pam.d/plasmalogin-greeter +} + + +sha512sums=" +788583bc094501bc7cc6e8c43992e418f8982922930f5d8ad092002542b59f0f56bb8865760fb11b017af0f663307c01314f59e2dfd88ad08c073876b864e3d5 plasma-login-manager-6.6.0.tar.xz +77fcd3ace910cc694266afb32ac75258e954dfcefa206dfc5f42204b4e3e14528d47a9e28e6cb0aa7f1670450a42023ce4ee85eac76fce2806bab54b2d1aa37c plasmalogin.pam +44d0fce5ed4dd19c0a66cd3b191f33658dcaadf619711c8ed8dccfa8697e8464836780404307271922a910e3df631b8cecfec77822a252e3eabf12c28e65dfa1 plasmalogin-autologin.pam +e82cf4dbca78ea73cc26378ca94dca12d9bb48fe13c29ff1e8403f44f4c83ba5000b8cfff0d2c4161ef9e8218edda82d4226ea571b70ffe7042ed3f2580538cd plasmalogin-greeter.pam +" diff --git a/extra-repos/systemd/plasma-login-manager/plasmalogin-autologin.pam b/extra-repos/systemd/plasma-login-manager/plasmalogin-autologin.pam new file mode 100644 index 000000000..25c43d1eb --- /dev/null +++ b/extra-repos/systemd/plasma-login-manager/plasmalogin-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 base-account +password include base-password +session include base-session +-session optional pam_gnome_keyring.so auto_start +-session optional pam_kwallet5.so auto_start diff --git a/extra-repos/systemd/plasma-login-manager/plasmalogin-greeter.pam b/extra-repos/systemd/plasma-login-manager/plasmalogin-greeter.pam new file mode 100644 index 000000000..44e209e90 --- /dev/null +++ b/extra-repos/systemd/plasma-login-manager/plasmalogin-greeter.pam @@ -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 pam_systemd.so diff --git a/extra-repos/systemd/plasma-login-manager/plasmalogin.pam b/extra-repos/systemd/plasma-login-manager/plasmalogin.pam new file mode 100644 index 000000000..5c2d8a647 --- /dev/null +++ b/extra-repos/systemd/plasma-login-manager/plasmalogin.pam @@ -0,0 +1,15 @@ +#%PAM-1.0 + +auth include base-auth +-auth optional pam_gnome_keyring.so +-auth optional pam_kwallet5.so + +account include base-account + +password include base-password +-password optional pam_gnome_keyring.so use_authtok + +session optional pam_keyinit.so force revoke +session include base-session +-session optional pam_gnome_keyring.so auto_start +-session optional pam_kwallet5.so auto_start diff --git a/extra-repos/systemd/postmarketos-base-systemd/APKBUILD b/extra-repos/systemd/postmarketos-base-systemd/APKBUILD index d659cc5ca..e0f2233c2 100644 --- a/extra-repos/systemd/postmarketos-base-systemd/APKBUILD +++ b/extra-repos/systemd/postmarketos-base-systemd/APKBUILD @@ -4,6 +4,7 @@ maintainer="Oliver Smith " pkgname=postmarketos-base-systemd pkgver=70 pkgrel=0 +pkgrel=1 pkgdesc="Meta package for running postmarketOS with systemd" url="https://postmarketos.org" # armhf: pmb#2618 @@ -107,7 +108,7 @@ sha512sums=" 2faac294bb632762e247b850f09ff4b544ccff6c462efd8d4faca71ba30bdfa9c460377a0dc88e92c5dbbe251017d164064a56ac0e0410f224b45d4f5f81866c rootfs-etc-systemd-logind.conf 15423bfda57c90ab62fe69865ca4072a0aeb83bf77d9c278257e346f4da81843d010b41003c91ae9f3fcb1c67447645e7c19078eea2bf11312051e6ad7523ad1 rootfs-usr-share-mkinitfs-files-extra-01-initramfs-base-systemd.files 94063e3a3f983b7613d9de6bfc067096f79b12688f45667faf968f9a9bae194c4c8e554311f2ab5614edcc4d4499f6d30aa965a67b7417c26ce4d07edc847178 rootfs-usr-lib-NetworkManager-conf.d-50-dns.conf -6602e98f2d54333c5e087530ee7fb50292573f42de11ecedc3039fc87a2edffb2e743ee7102976234dfb0c5d2dedd0a2284be09d9a6a0037b5edc4ddffe642f8 rootfs-usr-lib-systemd-system-preset-90-base.preset +451399fbab8e221fd7019c4f34eb091c880ca5edbb79c09aff02505f79a0ff90276c01b439f73b27825106f054e4ff30572fb7e13eba759c92fa9ee1b80fe0f5 rootfs-usr-lib-systemd-system-preset-90-base.preset bde7052939d1ddde22fe1df86439d3f1b0cd41810911cee7acf26aac08afe1610360cbbd257b3c1a2e5e7409dff27ade8f3a302a38cd1b99c6cc6eed4cc64a78 rootfs-usr-lib-systemd-system--.slice.d-10-oomd-defaults.conf bde7052939d1ddde22fe1df86439d3f1b0cd41810911cee7acf26aac08afe1610360cbbd257b3c1a2e5e7409dff27ade8f3a302a38cd1b99c6cc6eed4cc64a78 rootfs-usr-lib-systemd-system-system.slice.d-10-oomd-defaults.conf c5252710d8e2f95f5c216cce17737bb14e112c7f1e0b73f085ac0bc3da5a718bb831cc62c0c62e7e5e99337fdcc5c4ace76c5c11bb0ae1f242181ce6829e4fd3 rootfs-usr-lib-systemd-system-user@.service.d-10-oomd-defaults.conf diff --git a/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset b/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset index 315d6cfc0..276f555ed 100644 --- a/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset +++ b/extra-repos/systemd/postmarketos-base-systemd/rootfs-usr-lib-systemd-system-preset-90-base.preset @@ -54,7 +54,8 @@ enable hfd-service.service enable urfkill.service enable plasma-mobile.service -enable sddm.service +disable sddm.service +enable plasmalogin.service enable drkonqi-coredump-processor@.service diff --git a/main/postmarketos-ui-plasma-desktop/APKBUILD b/main/postmarketos-ui-plasma-desktop/APKBUILD index daea1640c..9cc6d87eb 100644 --- a/main/postmarketos-ui-plasma-desktop/APKBUILD +++ b/main/postmarketos-ui-plasma-desktop/APKBUILD @@ -1,8 +1,8 @@ # Reference: https://postmarketos.org/uipkg maintainer="Bart Ribbers " pkgname=postmarketos-ui-plasma-desktop -pkgver=3 -pkgrel=6 +pkgver=4 +pkgrel=0 pkgdesc="(Wayland) KDE Desktop Environment (works well with tablets)" url="https://www.kde.org" # armhf and riscv64 blocked by plasma @@ -11,8 +11,8 @@ arch="noarch !armhf !riscv64 !x86" license="GPL-3.0-or-later" depends=" plasma + plasma-login-manager postmarketos-base-ui-plasma - sddm " _pmb_recommends=" ark diff --git a/main/postmarketos-ui-plasma-desktop/postmarketos-ui-plasma-desktop-systemd.post-install b/main/postmarketos-ui-plasma-desktop/postmarketos-ui-plasma-desktop-systemd.post-install index 99477db3a..91b56a617 100644 --- a/main/postmarketos-ui-plasma-desktop/postmarketos-ui-plasma-desktop-systemd.post-install +++ b/main/postmarketos-ui-plasma-desktop/postmarketos-ui-plasma-desktop-systemd.post-install @@ -8,4 +8,3 @@ if [ -f ${SDDM_CONF} ]; then fi fi -systemctl enable sddm