diff options
Diffstat (limited to 'hosts/vps/cfg.nix')
-rw-r--r-- | hosts/vps/cfg.nix | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/hosts/vps/cfg.nix b/hosts/vps/cfg.nix new file mode 100644 index 0000000..f32afea --- /dev/null +++ b/hosts/vps/cfg.nix @@ -0,0 +1,72 @@ +{config, lib, pkgs, ...}: { + imports = [ + ../../profiles/core.nix + ../../profiles/user.nix + ../../profiles/ssh.nix + ../../mixins/tailscale.nix + ../../mixins/cli.nix + (modulesPath + "/profiles/qemu-guest.nix") + ]; + + config = { + _module.args.nixinate = { + host = "95.179.249.76"; + sshUser = "nixos"; + buildOn = "remote"; # valid args are "local" or "remote" + substituteOnTarget = true; # if buildOn is "local" then it will substitute on the target, "-s" + hermetic = false; + }; + + disko.devices = import ../disko.nix { + lib = pkgs.lib; + }; + networking.hostName = "vps"; + + boot = { + initrd = { + supportedFilesystems = ["btrfs"]; + }; + kernelPackages = lib.mkDefault pkgs.linuxPackages_latest; + kernelParams = [ + "console=ttyS0" + "init_on_free=1" + "page_poison=1" + "page_alloc.shuffle=1" + "slab_nomerge" + "vsyscall=none" + ]; + cleanTmpDir = true; + loader = { + systemd-boot = { + enable = true; + }; + efi = { + canTouchEfiVariables = true; + efiSysMountPoint = "/boot"; + }; + }; + }; + + time.timeZone = lib.mkDefault "Frankfurt"; + + fileSystems = { + "/" = { + device = "none"; + fsType = "tmpfs"; + options = ["noexec" "defaults" "size=2G" "mode=755"]; + }; + "/nix" = { + device = "/dev/disk/by-partlabel/nix"; + options = ["noatime" "compress=zstd"]; + }; + "/boot" = { + device = "/dev/disk/by-partlabel/boot"; + }; + }; + + zramSwap = { + enable = true; + algorithm = "zstd"; + }; + }; +} \ No newline at end of file |