46 lines
1.9 KiB
Bash
Executable File
46 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/bash
|
|
set -eoux pipefail
|
|
|
|
###############################################################################
|
|
# Transaction: Login-Stack (greetd + tuigreet-Fallback + Noctalia-Greeter)
|
|
###############################################################################
|
|
# - greetd ist der Display-Manager (leicht, Wayland-nativ).
|
|
# - noctalia-greeter (aus Terra, siehe 10-repos.sh) ist die Login-UI in
|
|
# Noctalia-Optik. Braucht ZWINGEND greetd als Unterbau.
|
|
# - tuigreet bleibt als sparsamer Fallback, falls der grafische Greeter
|
|
# je streikt (in /etc/greetd/config.toml per Kommentar umschaltbar).
|
|
###############################################################################
|
|
echo "Installing login stack (greetd + Noctalia greeter)..."
|
|
|
|
# greetd + D-Bus + polkit sind harte Voraussetzungen des Noctalia-Greeters
|
|
# (https://docs.noctalia.dev/greeter/installation/) und werden hier explizit
|
|
# installiert statt von der Basis vorausgesetzt.
|
|
dnf5 install -y \
|
|
--allowerasing \
|
|
greetd \
|
|
greetd-selinux \
|
|
dbus-daemon \
|
|
polkit \
|
|
tuigreet \
|
|
noctalia-greeter
|
|
|
|
dnf5 clean all
|
|
|
|
# accounts-daemon: liefert User-Avatare auf dem Login-Screen.
|
|
systemctl enable accounts-daemon.service
|
|
|
|
# System-Setup des Greeters: legt /var/lib/noctalia-greeter/ + greeter.toml
|
|
# fuer den greetd-Session-User an und gibt die fertige config.toml-Zeile aus.
|
|
# Pfad laut PACKAGING.md: share/noctalia-greeter/setup_greeter_system.sh
|
|
if [[ -x /usr/share/noctalia-greeter/setup_greeter_system.sh ]]; then
|
|
/usr/share/noctalia-greeter/setup_greeter_system.sh || true
|
|
else
|
|
echo "WARN: setup_greeter_system.sh nicht gefunden - Greeter-State wird erst beim Boot angelegt"
|
|
fi
|
|
|
|
# Alte Display-Manager explizit aus (zwei DMs = Blackscreen).
|
|
# Auf fedora-bootc-Basis existieren sie i.d.R. nicht -> Fehler tolerieren.
|
|
systemctl disable sddm.service gdm.service lightdm.service 2>/dev/null || true
|
|
systemctl enable greetd.service
|
|
systemctl set-default graphical.target || true
|