- 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
68 lines
1.5 KiB
Nix
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
|
|
];
|
|
}
|