# Hyprland Dotfiles (Portal + MIME Stabilisierung) Diese Konfiguration ist für Nutzung via `stow` ausgelegt und enthält zusätzliche Stabilisierung für Dateizuordnungen (MIME) unter Hyprland. ## WICHTIG: Primärer Fix für MIME-Probleme Wenn Dateizuordnungen in Dolphin verschwinden oder Doppelklicks unzuverlässig sind, ist dies die erste und wichtigste Referenz: - https://github.com/n4zz/Fix-Dolphin-File-Associations Der dort beschriebene Ansatz ist die primäre Lösung. Die lokalen `ensure-mime-defaults`-Skripte in diesen Dotfiles sind nur als Zusatz/Notfall-Fallback gedacht, falls trotz primärem Fix weiterhin nichts zuverlässig funktioniert. ## Aktiver Stand ### Portal-Backends Die Priorität in `.config/xdg-desktop-portal/portals.conf` ist: - `hyprland` (Hyprland-spezifische Portale) - `gtk` (primär für `OpenURI`, `FileChooser`, `Settings`) - `kde` (Fallback) ### Session-Umgebung In `.config/hypr/hyprland.conf` werden diese Variablen gesetzt und an systemd/DBus exportiert: - `XDG_CURRENT_DESKTOP=Hyprland` - `XDG_SESSION_DESKTOP=Hyprland` - `XDG_SESSION_TYPE=wayland` - `XDG_MENU_PREFIX=plasma-` - `GTK_USE_PORTAL=1` ### MIME-Selbstheilung Hinweis: Dieser Block ist bewusst nur Fallback und nicht die Hauptlösung. Dateien: - `.config/hypr/scripts/ensure-mime-defaults.sh` - `.config/systemd/user/ensure-mime-defaults.service` - `.config/systemd/user/ensure-mime-defaults.path` Verhalten: - setzt bevorzugte MIME-Defaults beim Login - setzt sie erneut, wenn `~/.config/mimeapps.list` oder `~/.local/share/applications/mimeapps.list` geändert werden ## Deployment / Reload Nach Änderungen an den Dotfiles: 1. `stow hypr` (falls Symlinks noch nicht gesetzt sind) 2. `hyprctl reload` 3. `systemctl --user daemon-reload` 4. `systemctl --user restart xdg-desktop-portal.service xdg-desktop-portal-hyprland.service xdg-desktop-portal-gtk.service plasma-xdg-desktop-portal-kde.service` 5. `systemctl --user restart ensure-mime-defaults.service` ## Verifikation - `xdg-mime query default image/jpeg` - `xdg-mime query default application/pdf` - `systemctl --user status ensure-mime-defaults.path ensure-mime-defaults.service` - `systemctl --user status xdg-desktop-portal.service xdg-desktop-portal-hyprland.service xdg-desktop-portal-gtk.service plasma-xdg-desktop-portal-kde.service` ## Paketvoraussetzungen Mindestens empfohlen: - `xdg-desktop-portal` - `xdg-desktop-portal-hyprland` - `xdg-desktop-portal-gtk` Optional (Fallback, aktuell genutzt): - `xdg-desktop-portal-kde`