diff --git a/modules/home/hyprland/settings.nix b/modules/home/hyprland/settings.nix index 2c61471..c347a35 100644 --- a/modules/home/hyprland/settings.nix +++ b/modules/home/hyprland/settings.nix @@ -3,15 +3,30 @@ let cfg = config.wayland.windowManager.hyprland; - inherit (builtins) toString; + nonFloatingClasses = [ + "Gimp" + "steam" + "KiCad" + ]; + + nonFloatingClassesRegex = concatStringsSep "|" nonFloatingClasses; + + inherit (builtins) concatStringsSep toString; inherit (lib) mkDefault; in { # Do not add binds here. Use `./binds/default.nix` instead. "$mod" = cfg.modifier; + exec-once = [ + "dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP" # dbus package comes from NixOS module option `services.dbus.dbusPackage` [1] + "gnome-keyring-daemon --start --components=secrets" # gnome-keyring package comes from NixOS module `services.gnome.gnome-keyring` [1] + ]; + # 1: see Hyprland NixOS module + windowrule = [ - "center, floating:1, not class:^(Gimp)$, not class:^(steam)$" + # "float, class:^(${nonFloatingClassesRegex})$" + "center, floating:1, class:^(?!.*(${nonFloatingClassesRegex})).*$" "float, title:^(Open|Save) Files?$" "noborder, onworkspace:w[t1]" "bordersize ${toString cfg.settings.general.border_size}, floating:1"