Drei Fixes:
1. ai-command-center.conf aus hyprland.conf entfernt
(existiert nicht auf frischer VM -> source= globbing error)
2. hyprpaper.conf in standard hyprpaper Format geschrieben
(preload=/wallpaper= statt awww-block-format)
awww.conf wird separat geschrieben falls awww installiert ist
3. apply-theme.sh Fehlerbehandlung: tui_spin || return 1
(vorher wurde immer 'Theme applied' gemeldet auch bei Fehler)
4. replace_home_paths auch fuer wofi/ hinzugefuegt
Vier Änderungen:
1. Duplikat in apply_wallpaper entfernt (überlappende Edits hinterließen
einen zweiten hyprctl-Block außerhalb des pgrep-Guards)
2. gsettings in write_gtk_settings hinter pgrep -x Hyprland guard
(gsettings set → D-Bus → könnte swaync auto-starten → hängt)
3. kwriteconfig6 in write_kde_color_scheme hinter pgrep -x Hyprland
(kwriteconfig6 schreibt nicht nur Config, macht auch D-Bus-Calls)
4. apply_theme() blockt jetzt komplett: ALLE Display-Aufrufe
(hyprctl, swaync-client, waybar, notify, awww, swww, gsettings,
kwriteconfig6) werden nur ausgeführt wenn Hyprland läuft.
Ohne Hyprland: nur Config-Files schreiben (load_theme, write_app_styles,
write_desktop_app_theme, write_hyprlock_theme, write_starship_theme,
write_sddm_theme_assets, apply_wallpaper-schreibt-nur). Kein einziger
D-Bus-Call fällt mehr an.
apply_theme() rief hyprctl (keyword + hyprpaper) und restart_waybar
ohne zu prüfen ob Hyprland läuft → hyprctl hing bis Timeout im TTY.
Fix: pgrep -x Hyprland guard vor allen hyprctl/waybar-Aufrufen.
apply_theme schreibt jetzt Config-Files (gelten beim nächsten Login),
überspringt aber Display-abhängige Kommandos.