#!/usr/bin/bash set -eoux pipefail ############################################################################### # Transaction: Noctalia Shell v5 (nativer Wayland-Desktop-Shell) ############################################################################### # Paket `noctalia` aus den offiziellen Fedora-Repos (ab F44). # KEIN COPR noetig. Start via labwc-autostart (siehe configs/skel). # Doku: https://docs.noctalia.dev/noctalia/getting-started/installation/ ############################################################################### echo "Installing Noctalia Shell v5..." # Versionsdynamik: Wallpaper-Pakete heissen f-backgrounds*. # Bei Basis-Wechsel (z.B. F44 -> F45 im Containerfile) kommen automatisch # die neuen Motive mit. Bricht das Schema je, knallt der Build laut # (kein stiller leerer Picker). FEDORA_VERSION="$(rpm -E %fedora)" # Nur das Paket selbst: v5 ist nativ (C++/OpenGL ES), Bildformate und # Theming sind einkompiliert bzw. kommen als RPM-Abhaengigkeiten mit. # ImageMagick/Python/git waren v4-Bedarf und entfallen. # # Theming-Unterbau fuer die aktivierten Templates (siehe # configs/skel/.config/noctalia/templates.toml): # - flatpak: fehlt in der fedora-bootc-Basis, wird aber vom # Flatpak-Preinstall-Layer/Service (50-xxx, Bazaar/Brave) benoetigt # - adw-gtk3-theme: GTK-Theme, das Noctalias gtk-Hook umfaerbt (inkl. -dark). # HINWEIS: Paket heisst -theme, nicht -gtk3! # - dconf + Schemas: damit der Hook gtk-theme/color-scheme setzen kann. # (nwg-look gibt es nicht in Fedora (nur COPR) und wird nicht gebraucht - # der Hook setzt das Theme selbst.) dnf5 install -y \ --allowerasing \ noctalia \ flatpak \ adw-gtk3-theme \ dconf \ gsettings-desktop-schemas \ f${FEDORA_VERSION}-backgrounds \ f${FEDORA_VERSION}-backgrounds-extras-gnome # Standard-Wallpaper fuer ~/Pictures neuer Benutzer (Noctalias Picker zeigt # das XDG-Bilderverzeichnis; ohne Inhalt bleibt er leer). Fedora-eigene # Motive (Defaults aller Desktops + Supplemental-Pool, offen lizenziert), # deterministisch umbenannt. Vollauswahl bleibt zusaetzlich unter # /usr/share/backgrounds (Picker-Verzeichnis dorthin umstellbar). mkdir -p /etc/skel/Pictures i=0 while IFS= read -r img; do i=$((i + 1)) if [ "$i" -gt 12 ]; then break fi ext="${img##*.}" cp "$img" "/etc/skel/Pictures/fluffy-wallpaper-${i}.${ext}" done < <(find /usr/share/backgrounds -type f \( -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' \) | sort) if [ "$i" -lt 1 ]; then echo "FEHLER: keine Wallpaper unter /usr/share/backgrounds gefunden" exit 1 fi ls -l /etc/skel/Pictures dnf5 clean all