# hosts/buer/configuration.nix (or default.nix) { config, lib, pkgs, modulesPath, inputs, ... }: { # ============================================================================= # IMPORTS # ============================================================================= imports = [ # Host-specific hardware ./hardware.nix ./secrets.nix # Common modules shared across hosts ../../common/system.nix ../../common/users.nix ../../common/services.nix # Common secrets ../../host-secrets.nix ]; # ============================================================================= # SYSTEM CONFIGURATION # ============================================================================= system.stateVersion = "24.11"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; # Intel microcode updates hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; # ============================================================================= # CUSTOM MODULES # ============================================================================= modules.garage.enable = true; # ============================================================================= # BOOT CONFIGURATION # ============================================================================= boot.loader.grub = { enable = true; device = "/dev/vda"; }; # ============================================================================= # NETWORKING # ============================================================================= networking = { hostName = "buer"; hostId = "1418d29e"; firewall.enable = false; useDHCP = false; }; # Static IP configuration via systemd-networkd systemd.network = { enable = true; networks."10-wan" = { matchConfig.Name = "ens3"; address = [ "103.251.165.107/24" "2a04:52c0:0135:48d1::2/48" ]; gateway = [ "103.251.165.1" "2a04:52c0:0135::1" ]; dns = [ "2a01:6340:1:20:4::10" "2a04:52c0:130:2a5c::10" "185.31.172.240" "5.255.125.240" ]; }; }; # ============================================================================= # VIRTUALIZATION # ============================================================================= virtualisation.docker = { enable = true; enableOnBoot = true; package = pkgs.docker.override { buildGoModule = pkgs.buildGo123Module; }; }; # ============================================================================= # PACKAGES # ============================================================================= environment.systemPackages = with pkgs; [ inputs.agenix.packages.x86_64-linux.default ]; # ============================================================================= # COMMENTED OUT / DISABLED # ============================================================================= # ZFS support (not needed for this VPS) # boot.supportedFilesystems = [ "zfs" ]; # boot.kernelModules = [ "nct6775" "coretemp" ]; # services.zfs.autoScrub.enable = true; # services.zfs.trim.enable = true; # Additional packages (not needed) # lm_sensors # code-server }