fix: refine shoukei idle screen off

This commit is contained in:
Ryan Yin
2026-09-03 23:26:03 +08:00
parent 1ec29059ad
commit 7661be6a69
3 changed files with 35 additions and 3 deletions
@@ -10,5 +10,25 @@ let
];
in
lib.genAttrs hosts (
name: outputs.nixosConfigurations.${name}.config.home-manager.users.${username}.home.homeDirectory
name:
let
hm = outputs.nixosConfigurations.${name}.config.home-manager.users.${username};
hypridleConfig = builtins.readFile hm.xdg.configFile."hypr/hypridle.conf".source;
hasHypridleLines = lines: lib.hasInfix (lib.concatStringsSep "\n" lines) hypridleConfig;
in
{
homeDirectory = hm.home.homeDirectory;
hypridleScreenOffIgnoresInhibitors = hasHypridleLines [
" timeout = 360 # 6 minutes"
" ignore_inhibit = true"
];
hypridleScreenOffSkipsPlayingMedia = hasHypridleLines [
" condition_cmd = ! playerctl -a status 2>/dev/null | grep -q '^Playing$'"
" condition_retry = 30"
];
hypridleLockIgnoresInhibitors = hasHypridleLines [
" timeout = 1200 # 20 minutes"
" ignore_inhibit = true"
];
}
)