Nix configurations for my homelab
at main 3.1 kB view raw
1{ ... }: 2{ 3 imports = [ 4 ./hardware.nix 5 ./services/fail2ban.nix 6 7 ../modules/basic.nix 8 ../modules/caddy.nix 9 ../modules/editor.nix 10 ../modules/fail2ban.nix 11 ../modules/machine-id.nix 12 ../modules/machine-info.nix 13 ../modules/netbird.nix 14 ../modules/network-info.nix 15 ../modules/nix.nix 16 ../modules/openrgb.nix 17 ../modules/qbittorrent.nix 18 ../modules/remote-build-machines.nix 19 ../modules/remote-builder.nix 20 ../modules/smartd.nix 21 ../modules/vpn-container.nix 22 23 ../modules/services/caddy 24 ../modules/services/caddy/atproto-did.nix 25 ../modules/services/caddy/cp-certs.nix 26 ../modules/services/caddy/jellyfin.nix 27 ../modules/services/caddy/mumble.nix 28 ../modules/services/caddy/nextcloud.nix 29 ../modules/services/caddy/pds.nix 30 ../modules/services/caddy/soju.nix 31 ../modules/services/caddy/tangled-knot.nix 32 ../modules/services/caddy/websites/boo-b77.nix 33 ../modules/services/caddy/websites/boo-y6d.nix 34 ../modules/services/caddy/websites/org-biotabit.nix 35 ../modules/services/caddy/websites/org-butwho.nix 36 ../modules/services/caddy/websites/pink-lilac.nix 37 ../modules/services/caddy/websites/pink-meyou.nix 38 ../modules/services/caddy/websites/pink-yemou.nix 39 40 ../modules/services/arr.nix 41 ../modules/services/jellyfin.nix 42 ../modules/services/murmur.nix 43 ../modules/services/nextcloud.nix 44 ../modules/services/openssh.nix 45 ../modules/services/pds.nix 46 ../modules/services/soju.nix 47 ../modules/services/tangled.nix 48 ]; 49 50 garden = { 51 caddy.package = { 52 plugins = [ 53 "github.com/mholt/caddy-events-exec@v0.1.0" 54 "github.com/mholt/caddy-l4@v0.0.0-20250825142355-52451c524d96" 55 ]; 56 hash = "sha256-lsJLZibzK1PTugICnbfFPk7oGTgUYkotqduAdUpf4Ns="; 57 }; 58 info.host.server = true; 59 }; 60 61 sops = { 62 defaultSopsFile = ../secrets/lily.yaml; 63 defaultSopsFormat = "yaml"; 64 age.keyFile = "/data/keys.txt"; 65 }; 66 67 networking.hostName = "lily"; 68 services.thermald.enable = true; 69 70 nix.settings = { 71 cores = 6; 72 max-jobs = 2; 73 }; 74 75 # This option defines the first version of NixOS you have installed on this particular machine, 76 # and is used to maintain compatibility with application data (e.g. databases) created on older 77 # NixOS versions. Most users should NEVER change this value after the initial install, for any 78 # reason, even if you've upgraded your system to a new NixOS release. This value does NOT affect 79 # the Nixpkgs version your packages and OS are pulled from, so changing it will NOT upgrade your 80 # system. This value being lower than the current NixOS release does NOT mean your system is out 81 # of date, out of support, or vulnerable. Do NOT change this value unless you have manually 82 # inspected all the changes it would make to your configuration, and migrated your data 83 # accordingly. For more information, see `man configuration.nix` or 84 # https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . 85 system.stateVersion = "24.05"; # Did you read the comment? 86}