{ pkgs, ... }: { imports = [ ./disko-config.nix ./hardware-configuration.nix ]; system.stateVersion = "24.05"; swapDevices = [ { device = "/swapfile"; size = 2048; # MB } ]; boot.loader.grub = { efiSupport = true; efiInstallAsRemovable = true; }; time.timeZone = "Europe/Kyiv"; i18n.defaultLocale = "en_US.UTF-8"; networking = { hostName = "vps"; useDHCP = true; # Interface names will be auto-detected in hardware-configuration.nix # Using generic DHCP setting interfaces = { }; firewall = { enable = true; allowedTCPPorts = [ 80 443 ]; }; }; environment.systemPackages = with pkgs; [ neovim git htop tmux ]; age.identityPaths = [ "/keys.txt" ]; # TODO: i dont like that i overwrites literally everything services = { caddy.enable = true; openssh = { enable = true; settings = { PasswordAuthentication = false; PermitRootLogin = "no"; }; }; }; nix = { gc = { automatic = true; dates = "weekly"; options = "--delete-older-than 30d"; }; settings = { auto-optimise-store = true; experimental-features = [ "nix-command" "flakes" ]; }; }; }