diff --git a/modules/home/de-utils/brightnessctl.nix b/modules/home/de-utils/brightnessctl.nix new file mode 100644 index 0000000..a5745ff --- /dev/null +++ b/modules/home/de-utils/brightnessctl.nix @@ -0,0 +1,13 @@ +{ + config, + pkgs, + lib, + ... +}: +{ + options.myConfig.deUtils.brightnessctl.enable = lib.mkEnableOption ""; + + config = lib.mkIf config.myConfig.deUtils.brightnessctl.enable { + home.packages = [ pkgs.brightnessctl ]; + }; +} diff --git a/modules/home/de-utils/cliphist.nix b/modules/home/de-utils/cliphist.nix index 1b99917..59d0e3b 100644 --- a/modules/home/de-utils/cliphist.nix +++ b/modules/home/de-utils/cliphist.nix @@ -8,6 +8,13 @@ options.myConfig.deUtils.cliphist.enable = lib.mkEnableOption ""; config = lib.mkIf config.myConfig.deUtils.cliphist.enable { + assertions = [ + { + assertion = config.myConfig.deUtils.rofi.enable; + message = "cliphist requires rofi"; + } + ]; + services.cliphist = { enable = true; allowImages = false; diff --git a/modules/home/de-utils/hypridle.nix b/modules/home/de-utils/hypridle.nix index c3d4ce3..6acbaa4 100644 --- a/modules/home/de-utils/hypridle.nix +++ b/modules/home/de-utils/hypridle.nix @@ -17,17 +17,17 @@ settings = { general = { - lock_cmd = "pidof hyprlock || hyprlock"; + lock_cmd = lib.mkIf config.myConfig.deUtils.hyprlock.enable "pidof hyprlock || hyprlock"; before_sleep_cmd = "loginctl lock-session"; after_sleep_cmd = "hyprctl dispatch dpms on"; }; listener = [ - { + (lib.mkIf config.myConfig.deUtils.brightnessctl.enable { timeout = 5 * 60; on-timeout = "brightnessctl --save --exponent set 10%"; on-resume = "brightnessctl --restore"; - } + }) { timeout = 10 * 60; on-timeout = "hyprctl dispatch dpms off"; diff --git a/modules/home/de/hyprland/default.nix b/modules/home/de/hyprland/default.nix index d9541f4..b3db853 100644 --- a/modules/home/de/hyprland/default.nix +++ b/modules/home/de/hyprland/default.nix @@ -22,9 +22,7 @@ }; home.packages = [ - pkgs.wl-clipboard pkgs.playerctl - pkgs.brightnessctl pkgs.grimblast ]; diff --git a/modules/home/de/hyprland/keybinds.nix b/modules/home/de/hyprland/keybinds.nix index 8bb9923..969fae2 100644 --- a/modules/home/de/hyprland/keybinds.nix +++ b/modules/home/de/hyprland/keybinds.nix @@ -83,9 +83,11 @@ bindel = SUPER ALT, down, exec, $volume-down bindl = SUPER ALT, M, exec, $mute-mic - # Adjust brightness - bindel = , XF86MonBrightnessUp, exec, brightnessctl --exponent set +2% - bindel = , XF86MonBrightnessDown, exec, brightnessctl --exponent set 2%- + ${lib.optionalString config.myConfig.deUtils.brightnessctl.enable '' + # Adjust brightness + bindel = , XF86MonBrightnessUp, exec, brightnessctl --exponent set +2% + bindel = , XF86MonBrightnessDown, exec, brightnessctl --exponent set 2%- + ''} # Screenshot bind = , Print, exec, grimblast --notify --freeze copysave output diff --git a/users/seb/@fern/home.nix b/users/seb/@fern/home.nix index acac0b1..a270a1e 100644 --- a/users/seb/@fern/home.nix +++ b/users/seb/@fern/home.nix @@ -3,7 +3,10 @@ home.stateVersion = "24.11"; - myConfig.theme = "light"; + myConfig = { + theme = "light"; + deUtils.brightnessctl.enable = true; + }; wayland.windowManager.hyprland.settings.monitor = [ "eDP-1,2880x1920@120,0x0,2,vrr,1"