diff --git a/nix/configurations/vanadium.nix b/nix/configurations/vanadium.nix index c9e02c13..e34f3c58 100644 --- a/nix/configurations/vanadium.nix +++ b/nix/configurations/vanadium.nix @@ -107,7 +107,6 @@ in ../nixosModules/common/network.nix ../nixosModules/common/sudo-conf.nix ../nixosModules/common/system-nixconf.nix - ../nixosModules/common/xscreensaver.nix ../nixosModules/extra/zram.nix ../nixosModules/extra/leana.nix diff --git a/nix/configurations/vanadium/home/xmobar/xmobar.hs b/nix/configurations/vanadium/home/xmobar/xmobar.hs index 88837948..42755533 100644 --- a/nix/configurations/vanadium/home/xmobar/xmobar.hs +++ b/nix/configurations/vanadium/home/xmobar/xmobar.hs @@ -76,8 +76,7 @@ config = , "--target", "2025-09-16=snip snip" , "--target", "2025-10-13=no teef" , "--target", "2025-10-31=dragon book" - , "--target", "2025-11-29=à deux" - , "--target", "2025-12-30=seule" + , "--target", "2025-12-22=escape my fate" ] "" (60 &minute) diff --git a/nix/configurations/vanadium/nixos/display.nix b/nix/configurations/vanadium/nixos/display.nix index fbc65165..6737924a 100644 --- a/nix/configurations/vanadium/nixos/display.nix +++ b/nix/configurations/vanadium/nixos/display.nix @@ -51,7 +51,7 @@ switches = { setDPI = {dpi}: - singleton "10_xrdb-dpi" "${lib.getExe pkgs.xorg.xrdb} -merge ${pkgs.writeText "xrdb-dpi-config" '' + singleton "10_xrdb-dpi" "xrdb -merge ${pkgs.writeText "xrdb-dpi-config" '' Xcursor.size: 64 Xft.dpi: ${toString dpi} ''}"; @@ -61,12 +61,8 @@ device, # obtain with `xrandr` brightness, # [0..1] }: - # Hack: - # xrandr would consider the display being connected before we can change its brightness - # For that reason, we can't base our delay on its output, sadly. singleton "10_xrandr_brightness" '' - sleep 10 - ${lib.getExe pkgs.xorg.xrandr} --output ${device} --brightness ${toString brightness} + xrandr --output ${device} --brightness ${toString brightness} ''; # Is scoped to an output device, no need to be called on built-in display @@ -75,7 +71,7 @@ brightness, # [0..1] }: singleton "10_ddc_brightness" '' - ${lib.getExe pkgs.ddcutil} --model ${modelName} setvcp 10 ${toString (builtins.floor (brightness * 100))} + ddcutil --model ${modelName} setvcp 10 ${toString (builtins.floor (brightness * 100))} ''; setDDCContrast = { @@ -83,7 +79,7 @@ contrast, # [0..1] }: singleton "10_ddc_contrast" '' - ${lib.getExe pkgs.ddcutil} --model ${modelName} setvcp 12 ${toString (builtins.floor (contrast * 100))} + ddcutil --model ${modelName} setvcp 12 ${toString (builtins.floor (contrast * 100))} ''; }; @@ -164,13 +160,21 @@ configs.allOff (configs.enableOrchid name) ]; - # seems like this display doesn't support DDC hooks.postswitch = lib.mkMerge [ (switches.setDPI {dpi = 100;}) (switches.setSoftwareBrightness { device = name; - brightness = 0.7; + brightness = 1; }) + # # seems like this display doesn't support DDC + # (switches.setDDCBrightness { + # modelName = "VG27AQL3A"; + # brightness = 0; + # }) + # (switches.setDDCContrast { + # modelName = "VG27AQL3A"; + # contrast = 0.5; + # }) ]; }; in diff --git a/nix/configurations/vanadium/nixos/gui.nix b/nix/configurations/vanadium/nixos/gui.nix index b96b9a65..7c0091f2 100644 --- a/nix/configurations/vanadium/nixos/gui.nix +++ b/nix/configurations/vanadium/nixos/gui.nix @@ -1,8 +1,4 @@ -{ - pkgs, - lib, - ... -}: { +{pkgs, ...}: { services.xserver.windowManager.xmonad = { enable = true; enableContribAndExtras = true; @@ -24,15 +20,7 @@ }; }; - services.xscreensaver = { - enable = true; - hooks = { - # Reset display setting on login - "UNBLANK" = '' - ${lib.getExe pkgs.autorandr} --change --ignore-lid - ''; - }; - }; + services.xscreensaver.enable = true; services.picom = { enable = true; diff --git a/nix/nixosModules/common/xscreensaver.nix b/nix/nixosModules/common/xscreensaver.nix deleted file mode 100644 index 2359f830..00000000 --- a/nix/nixosModules/common/xscreensaver.nix +++ /dev/null @@ -1,48 +0,0 @@ -# -# This module provides a service react to xscreensaver events -# -{ - config, - lib, - ... -}: let - cfg = config.services.xscreensaver; -in { - options = { - services.xscreensaver.hooks = lib.mkOption { - type = with lib.types; attrsOf str; - description = "An attrset of events mapped a block of shell command to be run"; - default = {}; - }; - }; - - config = lib.mkIf cfg.enable { - systemd.user.services = { - "xscreensaver-hooks" = { - description = "Run commands on xscreensaver events"; - after = ["graphical-session.target" "xscreensaver.service"]; - partOf = ["graphical-session.target"]; - wantedBy = ["graphical-session.target"]; - script = let - handlers = - lib.concatMapAttrsStringSep "\n" (event: action: '' - "${event}") - ( ${action} - ) - ;; - '') - cfg.hooks; - in '' - xscreensaver-command -watch | while read event rest; do - case $event in - ${handlers} - esac - done - ''; - path = [ - cfg.package # contains xscreensaver-command - ]; - }; - }; - }; -}