Files
nix-config-ryan4yin/home/hosts/linux/idols-ai.nix
T
Ryan Yin 7131041107 feat(hypridle): define config in home-manager with per-host timeouts
Replace the static hypridle.conf with services.hypridle.settings and add required timeout options so each host tunes its own values:

- idols-ai (PC): 15 min keyboard, 20 min screen-off, 30 min lock.
- 12kingdoms-shoukei (laptop): 3 / 6 / 20 min (previous values).

The options have no defaults because the right values depend on the machine. Update the home-manager eval test to inspect the settings option instead of the old config file text.
2026-09-13 23:45:42 +08:00

33 lines
960 B
Nix

{ config, ... }:
let
mkSymlink = config.lib.file.mkOutOfStoreSymlink;
in
{
imports = [ ../../linux/gui.nix ];
programs.ssh.settings."github.com".IdentityFile = "${config.home.homeDirectory}/.ssh/idols-ai";
modules.desktop.gaming.enable = true;
modules.desktop.niri.enable = true;
# PC: keep the screen on longer than on the laptop.
modules.desktop.hypridle = {
keyboardBacklightTimeout = 900;
screenOffTimeout = 1200;
lockTimeout = 1800;
};
programs.zed-editor.userSettings = {
ui_font_size = 18.0;
buffer_font_size = 17.0;
agent_ui_font_size = 18.0;
agent_buffer_font_size = 17.0;
};
xdg.configFile."niri/niri-hardware.kdl".source =
mkSymlink "${config.home.homeDirectory}/nix-config/hosts/idols-ai/niri-hardware.kdl";
# The desktop speakers are already loud, so use the broadcast-standard -23 dB.
services.easyeffects.extraPresets."loudness-normalization".output."autogain#0".target = -23.0;
}