nixos-configuration/hosts/copper/configuration.nix
2025-12-02 16:32:57 +01:00

77 lines
1.6 KiB
Nix

{ lib, ... }:
{
imports = [
./hardware-configuration.nix
./disko.nix
../../users/jalr
./services
./framework-fixes.nix
];
networking = {
hostName = "copper";
extraHosts = lib.concatStringsSep "\n" (
lib.attrsets.mapAttrsToList
(addr: hosts:
lib.concatStringsSep " " ([ addr ] ++ hosts)
)
{
#"192.0.2.1" = ["example.com"];
}
);
firewall.interfaces.virbr0.allowedTCPPorts = [ 53 64172 ];
firewall.interfaces.virbr0.allowedUDPPorts = [ 53 67 69 4011 ];
};
zramSwap = {
enable = true;
algorithm = "zstd";
memoryPercent = 60;
priority = 1;
};
services = {
fstrim.enable = true;
flatpak.enable = true;
snapper.configs = {
home = {
SUBVOLUME = "/home";
ALLOW_USERS = [ "jalr" ];
TIMELINE_CREATE = true;
TIMELINE_CLEANUP = true;
TIMELINE_LIMIT_HOURLY = 12;
TIMELINE_LIMIT_DAILY = 7;
TIMELINE_LIMIT_WEEKLY = 4;
TIMELINE_LIMIT_MONTHLY = 3;
TIMELINE_LIMIT_YEARLY = 0;
BACKGROUND_COMPARISON = "yes";
NUMBER_CLEANUP = "no";
NUMBER_MIN_AGE = "1800";
NUMBER_LIMIT = "100";
NUMBER_LIMIT_IMPORTANT = "10";
EMPTY_PRE_POST_CLEANUP = "yes";
EMPTY_PRE_POST_MIN_AGE = "1800";
};
};
};
jalr = {
bootloader = "lanzaboote";
bluetooth.enable = true;
uefi.enable = true;
gui = {
enable = true;
sway.enable = true;
};
workstation.enable = true;
libvirt.enable = true;
autologin = {
enable = true;
username = "jalr";
};
};
system.stateVersion = "25.11";
}