{ config, modulesPath, pkgs, inputs, ... }: { imports = [ (modulesPath + "/virtualisation/proxmox-lxc.nix") ]; nix.settings = { sandbox = false; experimental-features = [ "nix-command" "flakes" ]; auto-optimise-store = true; trusted-users = [ "root" "alex" ]; }; nix.gc = { automatic = true; dates = "weekly"; options = "--delete-older-than 30d"; }; proxmoxLXC = { manageNetwork = false; privileged = false; }; networking.hostName = "bootstrap"; time.timeZone = "Australia/Brisbane"; i18n.defaultLocale = "en_GB.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "en_AU.UTF-8"; LC_IDENTIFICATION = "en_AU.UTF-8"; LC_MEASUREMENT = "en_AU.UTF-8"; LC_MONETARY = "en_AU.UTF-8"; LC_NAME = "en_AU.UTF-8"; LC_NUMERIC = "en_AU.UTF-8"; LC_PAPER = "en_AU.UTF-8"; LC_TELEPHONE = "en_AU.UTF-8"; LC_TIME = "en_AU.UTF-8"; }; console.keyMap = "dvorak"; nixpkgs.config.allowUnfree = true; documentation.man.generateCaches = false; programs.fish.enable = true; services.openssh = { enable = true; settings.PermitRootLogin = "prohibit-password"; }; services.avahi = { enable = true; nssmdns4 = true; nssmdns6 = true; publish = { enable = true; addresses = true; }; openFirewall = true; }; users.users.alex = { isNormalUser = true; description = "Alexander Wainwright"; extraGroups = [ "wheel" ]; shell = pkgs.fish; openssh.authorizedKeys.keys = [ # TODO: add your SSH public key here ]; }; users.users.root.openssh.authorizedKeys.keys = [ # TODO: add your SSH public key here ]; environment.variables.EDITOR = "nvim"; environment.systemPackages = with pkgs; [ curl git htop neovim rsync wget ]; system.stateVersion = "25.11"; }