refactor: use helper funcs for hyprland conf

This commit is contained in:
matt1432 2024-11-20 20:12:24 -05:00
commit 85348d1a6c
13 changed files with 414 additions and 173 deletions
nixosModules/desktop/environment/modules

View file

@ -4,12 +4,13 @@ self: {
pkgs,
...
}: let
inherit (self.lib.hypr) mkBind;
inherit (self.inputs) jellyfin-flake;
in {
imports = [./dolphin.nix];
config = let
inherit (lib) getExe optionals;
inherit (lib) getExe map optionals;
inherit (pkgs.writers) writeTOML;
flakeDir = config.environment.variables.FLAKE;
@ -187,13 +188,31 @@ in {
"workspace special:spot silent,^(Spotify)$"
];
bind = [
"$mainMod, Q, exec, foot"
bind = map mkBind [
{
modifier = "$mainMod";
key = "Q";
command = "foot";
}
"$mainMod SHIFT, C, exec, wl-color-picker"
{
modifier = "$mainMod SHIFT";
key = "C";
command = "wl-color-picker";
}
"$mainMod, P, togglespecialworkspace, protonmail"
"$mainMod, S, togglespecialworkspace, spot"
{
modifier = "$mainMod";
key = "P";
dispatcher = "togglespecialworkspace";
command = "protonmail";
}
{
modifier = "$mainMod";
key = "S";
dispatcher = "togglespecialworkspace";
command = "spot";
}
];
};
};

View file

@ -1,11 +1,12 @@
{
self: {
config,
lib,
pkgs,
...
}: {
config = let
inherit (lib) getExe mkIf;
inherit (self.lib.hypr) mkBind;
inherit (lib) getExe map mkIf;
cfg = config.roles.desktop;
@ -71,27 +72,29 @@
lockPkg
];
wayland.windowManager.hyprland = {
settings = {
exec-once = [
"gnome-keyring-daemon --start --components=secrets"
"${pkgs.plasma5Packages.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1"
];
wayland.windowManager.hyprland.settings = {
exec-once = [
"gnome-keyring-daemon --start --components=secrets"
"${pkgs.plasma5Packages.polkit-kde-agent}/libexec/polkit-kde-authentication-agent-1"
];
windowrule = [
"float,^(org.kde.polkit-kde-authentication-agent-1)$"
"size 741 288,^(org.kde.polkit-kde-authentication-agent-1)$"
"center,^(org.kde.polkit-kde-authentication-agent-1)$"
windowrule = [
"float,^(org.kde.polkit-kde-authentication-agent-1)$"
"size 741 288,^(org.kde.polkit-kde-authentication-agent-1)$"
"center,^(org.kde.polkit-kde-authentication-agent-1)$"
# For GParted auth
"size 741 288,^(org.kde.ksshaskpass)$"
"move cursor -370 -144,^(org.kde.ksshaskpass)$"
];
# For GParted auth
"size 741 288,^(org.kde.ksshaskpass)$"
"move cursor -370 -144,^(org.kde.ksshaskpass)$"
];
bind = [
"$mainMod, L, exec, ${getExe lockPkg}"
];
};
bind = map mkBind [
{
modifier = "$mainMod";
key = "L";
command = getExe lockPkg;
}
];
};
};
};