Files
NixOS-Configs/hosts/hades/default.nix
Anish Govind 8010cea0bc home: centralize theme and make home-manager feature-aware
- add home/theme.nix as the single Silicon Volt palette and pass it to
  home modules via extraSpecialArgs
- drive foot, hyprland, hyprlock, mako, fzf, starship, rofi and the
  herdr picker from that palette; raw config files use @color@ tokens
  substituted at build time
- pass my = config.my into home-manager; add my.pi.enable, my.flakeDir
- gate home/pi.nix on my.pi.enable (enabled on hades)
- route zshconf/hyprconf aliases and FLAKE_CONFIG through my.flakeDir
- rename the hyprland monitor option volt.monitors -> hypr.monitors
- fix use_auto_tmux command-substitution bug in zsh/init.zsh
- track home/nvim/config/lazy-lock.json for reproducible plugins
- document theming and toggles in the README
2026-09-19 00:48:19 -07:00

68 lines
1.5 KiB
Nix

{
config,
lib,
pkgs,
inputs,
...
}:
{
imports = [
inputs.disko.nixosModules.disko
./disko.nix
./hardware-configuration.nix
../../modules/hardware/nvidia.nix
];
networking.hostName = "hades";
# Opt this machine into the shared optional feature modules.
my = {
gaming.enable = true;
ai.local.enable = true;
pi.enable = true;
};
# ---------------------------------------------------------------------------
# Host display configuration (absorbed by home/hypr/hyprland.nix)
# ---------------------------------------------------------------------------
home-manager.users.${config.my.username}.hypr.monitors = [
{
# Samsung Odyssey Ark - matched by description so it survives port changes
output = "desc:Samsung Electric Company Odyssey Ark H1AK500000";
mode = "3840x2160@164.99Hz";
position = "auto";
scale = 1;
}
{
# Anything else plugged into hades: sensible automatic fallback
output = "";
mode = "preferred";
position = "auto";
scale = "auto";
}
];
# Enable in-memory compressed swap
zramSwap.enable = true;
# Ensure /games directory is accessible by default user
systemd.tmpfiles.rules = [
"d /games 0755 ${config.my.username} users -"
];
powerManagement.cpuFreqGovernor = "performance";
hardware.nvidia.prime = {
offload.enable = false;
sync.enable = false;
amdgpuBusId = "PCI:121@0:0:0";
nvidiaBusId = "PCI:1@0:0:0";
};
environment.systemPackages = with pkgs; [
nvtopPackages.nvidia
];
}