Name: plasma-login-manager Version: 6.7.4 Release: 1%{?dist} Summary: QML based login manager from KDE (Plasma Login) License: BSD-3-Clause AND CC0-1.0 AND (GPL-2.0-only OR GPL-3.0-only) AND GPL-2.0-or-later AND LGPL-2.0-or-later AND LGPL-2.1-or-later URL: https://invent.kde.org/plasma/plasma-login-manager Source0: https://download.kde.org/stable/plasma/%{version}/%{name}-%{version}.tar.xz # Real, already-merged-upstream fix for a boot/logout VT-switch hang # regression (unconditional VT takeover raced logind's own device-pause # ordering). Verified it applies cleanly against this exact tarball. Patch0: 170.patch Provides: service(graphical-login) = plasmalogin BuildRequires: desktop-file-utils BuildRequires: cmake >= 3.22 BuildRequires: extra-cmake-modules BuildRequires: gcc-c++ BuildRequires: pam-devel BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xcb-xkb) BuildRequires: libX11-devel BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6DBus) BuildRequires: cmake(Qt6Gui) BuildRequires: cmake(Qt6Qml) BuildRequires: cmake(Qt6Quick) BuildRequires: cmake(Qt6LinguistTools) BuildRequires: cmake(Qt6ShaderTools) BuildRequires: cmake(Qt6Test) BuildRequires: cmake(Qt6QuickTest) BuildRequires: cmake(KF6Config) BuildRequires: cmake(KF6Package) BuildRequires: cmake(KF6WindowSystem) BuildRequires: cmake(KF6I18n) BuildRequires: cmake(KF6DBusAddons) BuildRequires: cmake(KF6KCMUtils) BuildRequires: cmake(KF6Auth) BuildRequires: cmake(KF6KIO) BuildRequires: cmake(KF6KirigamiPlatform) BuildRequires: cmake(PlasmaQuick) BuildRequires: cmake(LayerShellQt) BuildRequires: cmake(LibKWorkspace) BuildRequires: cmake(LibKLookAndFeel) BuildRequires: cmake(KF6Screen) BuildRequires: shadow-utils BuildRequires: systemd BuildRequires: systemd-rpm-macros BuildRequires: kf6-rpm-macros %{?systemd_requires} Requires: kf6-kauth Requires(pre): shadow-utils Requires: kwin%{?_isa} %description Plasma Login provides a display manager for KDE Plasma, forked from SDDM's backend with a new QML frontend providing a greeter, wallpaper plugin integration, and a System Settings module (KCM). Built Wayland-only, consistent with the rest of this repo (no xorg-x11-xinit Requires, no X11 session wiring): the plasma-login-greeter runs under our own kwin_wayland via LayerShellQt, the same way SDDM's native Wayland greeter mode would have (see plasma-workspace's sddm-wayland-session/plasma-wayland.conf, now unused since we're not building SDDM). %package -n kcm-plasmalogin Summary: KDE KCM for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: dbus-common Requires: polkit Requires: qt6-qtbase%{?_isa} %description -n kcm-plasmalogin %{summary}. %prep %autosetup -p1 %build %cmake_kf6 \ -DCMAKE_BUILD_TYPE:STRING="Release" \ -DPAM_OS_CONFIGURATION:STRING="fedora" %cmake_build_kf6 %install %cmake_install_kf6 %find_lang plasma_login %find_lang kcm_plasmalogin mkdir -p %{buildroot}%{_sysconfdir}/plasmalogin.conf.d mkdir -p %{buildroot}%{_prefix}/lib/plasmalogin/plasmalogin.conf.d mkdir -p %{buildroot}/run/plasmalogin mkdir -p %{buildroot}%{_localstatedir}/lib/plasmalogin # De-conflict the dbus file name (org.freedesktop.DisplayManager.conf is a # generic name any display manager could ship; namespace it to this pkg) mv %{buildroot}%{_datadir}/dbus-1/system.d/org.freedesktop.DisplayManager.conf \ %{buildroot}%{_datadir}/dbus-1/system.d/org.freedesktop.DisplayManager-plasmalogin.conf %check desktop-file-validate %{buildroot}/%{_datadir}/applications/kcm_plasmalogin.desktop %pre getent group plasmalogin >/dev/null || groupadd -r plasmalogin getent passwd plasmalogin >/dev/null || \ useradd -r -g plasmalogin -d %{_localstatedir}/lib/plasmalogin \ -s /sbin/nologin -c "Plasma Login Manager" plasmalogin exit 0 %post %systemd_post plasmalogin.service %systemd_user_post plasma-login.service plasma-login-kwin_wayland.service plasma-login-wayland.target plasma-wallpaper.service %preun %systemd_preun plasmalogin.service %systemd_user_preun plasma-login.service plasma-login-kwin_wayland.service plasma-login-wayland.target plasma-wallpaper.service %postun %systemd_postun plasmalogin.service %systemd_user_postun plasma-login.service plasma-login-kwin_wayland.service plasma-login-wayland.target plasma-wallpaper.service %files -f plasma_login.lang %license LICENSE LICENSE.* LICENSES/* %doc README.md %dir %{_sysconfdir}/plasmalogin.conf.d %dir %{_prefix}/lib/plasmalogin %dir %{_prefix}/lib/plasmalogin/plasmalogin.conf.d %{_prefix}/lib/pam.d/plasmalogin* %{_datadir}/dbus-1/system.d/org.freedesktop.DisplayManager-plasmalogin.conf %{_bindir}/plasmalogin %{_bindir}/startplasma-login-wayland %{_bindir}/plasma-login-wallpaper %{_libexecdir}/plasmalogin-helper %{_libexecdir}/plasmalogin-helper-start-x11user %{_libexecdir}/plasma-login-greeter %{_tmpfilesdir}/plasmalogin.conf %{_sysusersdir}/plasmalogin.conf %attr(0711, root, plasmalogin) %dir /run/plasmalogin %attr(1770, plasmalogin, plasmalogin) %dir %{_localstatedir}/lib/plasmalogin %{_unitdir}/plasmalogin.service %{_userunitdir}/plasma-login.service %{_userunitdir}/plasma-login-kwin_wayland.service %{_userunitdir}/plasma-login-wayland.target %{_userunitdir}/plasma-wallpaper.service %dir %{_datadir}/plasmalogin %{_datadir}/plasmalogin/scripts/ %files -n kcm-plasmalogin -f kcm_plasmalogin.lang %{_kf6_libexecdir}/kauth/kcmplasmalogin_authhelper %{_kf6_qtplugindir}/plasma/kcms/systemsettings/kcm_plasmalogin.so %{_datadir}/applications/kcm_plasmalogin.desktop %{_datadir}/dbus-1/system-services/org.kde.kcontrol.kcmplasmalogin.service %{_datadir}/dbus-1/system.d/org.kde.kcontrol.kcmplasmalogin.conf %{_datadir}/polkit-1/actions/org.kde.kcontrol.kcmplasmalogin.policy %changelog * Sat Aug 29 2026 Smech - 6.7.4-1 - Real upstream source (KDE's actual SDDM successor, not SDDM itself -- confirmed real project at invent.kde.org/plasma/plasma-login-manager). Applied Patch0 (real, already-proposed-upstream VT-switch hang fix, tested to apply cleanly against this tarball). Dropped Fedora-specific bits: kf6-kimageformats Requires (JXL wallpaper support, optional, not built in this repo), kde-settings-plasma Requires (Fedora branding meta-package), the rich boolean Requires on plasma-systemsettings (not built yet in this repo), the SESSION_COMMAND/WAYLAND_SESSION_COMMAND cmake overrides pointing at /etc/X11/xinit and an /etc/plasmalogin copy-out (X11 path unused, Wayland-only build consistent with the rest of this repo -- default upstream WAYLAND_SESSION_COMMAND under %%{_datadir}/plasmalogin/scripts/ is used as-is). Fixed the "kwin-wayland" Requires to the real package name in this repo ("kwin", not split into wayland/x11 subpackages). %pre creates the plasmalogin system user/group directly (shadow-utils useradd/groupadd) rather than via %%sysusers_create_compat + a duplicated Source sysusers file, since the upstream-shipped plasmalogin-sysuser.conf is already installed at %%{_sysusersdir}/plasmalogin.conf and %%pre only needs to guarantee the user exists before scripts reference it.