diff --git a/hosts/prophet/default.nix b/hosts/prophet/default.nix index 7dd9177..aadf487 100644 --- a/hosts/prophet/default.nix +++ b/hosts/prophet/default.nix @@ -23,6 +23,6 @@ ../../../variables ]; - networking.hostName = "bomberman"; + networking.hostName = "prophet"; networking.wireguard.interfaces.wgc.ips = [ "10.100.0.19/24" ]; } diff --git a/hosts/prophet/disko/default.nix b/hosts/prophet/disko/default.nix deleted file mode 100644 index ceed70d..0000000 --- a/hosts/prophet/disko/default.nix +++ /dev/null @@ -1,96 +0,0 @@ -{ disko, config, ... }: -{ - imports = [ disko.nixosModules.disko ]; - - disko.devices = { - disk = { - "${config.networking.hostName}" = { - type = "disk"; - device = "/dev/nvme0n1"; - content = { - type = "gpt"; - partitions = { - ESP = { - size = "2G"; - type = "EF00"; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - mountOptions = [ "umask=0077" ]; - }; - }; - luks = { - size = "100%"; - content = { - type = "luks"; - name = "${config.networking.hostName}-disk"; - settings.allowDiscards = true; - passwordFile = "/tmp/secret.key"; - content = { - type = "lvm_pv"; - vg = "${config.networking.hostName}"; - }; - }; - }; - }; - }; - }; - }; - - lvm_vg = { - "${config.networking.hostName}" = { - type = "lvm_vg"; - lvs = { - root = { - size = "100%"; - content = { - type = "btrfs"; - extraArgs = [ "-f" ]; - subvolumes = { - "/root" = { - mountpoint = "/"; - mountOptions = [ "compress=zstd" "noatime" ]; - }; - "/prev" = { - mountpoint = "/prev"; - mountOptions = [ "compress=zstd" "noatime" ]; - }; - "/nix" = { - mountpoint = "/nix"; - mountOptions = [ "compress=zstd" "noatime" ]; - }; - - # Impermanence - "/persist" = { - mountpoint = "/persist"; - mountOptions = [ "compress=zstd" "noatime" ]; - }; - "/persist/.snapshots" = { }; - - "/jimbo" = { - mountpoint = "/persist/home/jimbo"; - mountOptions = [ "compress=zstd" "noatime" ]; - }; - "/jimbo/.snapshots" = { }; - }; - }; - }; - swap = { - size = "8G"; - content = { - type = "swap"; - discardPolicy = "both"; - }; - }; - }; - }; - }; - }; - - # Needed for impermanence - fileSystems = { - "/persist".neededForBoot = true; - "/persist/home/jimbo".neededForBoot = true; - }; -} diff --git a/hosts/prophet/filesystems/default.nix b/hosts/prophet/filesystems/default.nix new file mode 100644 index 0000000..fd47d4b --- /dev/null +++ b/hosts/prophet/filesystems/default.nix @@ -0,0 +1,44 @@ +{ ... }: +{ + fileSystems = { + "/" = { + device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; + fsType = "btrfs"; + options = [ "subvol=@" ]; + }; + "/home" = { + device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; + fsType = "btrfs"; + options = [ "subvol=@home" ]; + }; + "/nix" = { + device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; + fsType = "btrfs"; + options = [ "subvol=@nix" ]; + }; + "/var" = { + device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; + fsType = "btrfs"; + options = [ "subvol=@var" ]; + }; + "/.snapshots" = { + device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; + fsType = "btrfs"; + options = [ "subvol=@snapshots" ]; + }; + "/boot" = { + device = "/dev/disk/by-uuid/7C94-8C9A"; + fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; + }; + "/export/Bulk" = { + device = "/dev/disk/by-uuid/ef465845-cc56-4db5-9260-8ae515eb025e"; + fsType = "btrfs"; + noCheck = true; + }; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/7e8c773d-c8f4-4dd8-a835-bde78e5b6760"; } + ]; +} diff --git a/hosts/prophet/hardware/default.nix b/hosts/prophet/hardware/default.nix index 1ae1ae5..06425dc 100644 --- a/hosts/prophet/hardware/default.nix +++ b/hosts/prophet/hardware/default.nix @@ -1,51 +1,7 @@ -{ config, lib, pkgs, modulesPath, ... }: +{ lib, ... }: { - boot.initrd = { - availableKernelModules = [ "xhci_pci" "virtio_scsi" ]; - kernelModules = [ "dm-snapshot" ]; - }; - - fileSystems = { - "/" = { - device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; - fsType = "btrfs"; - options = [ "subvol=@" ]; - }; - "/home" = { - device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; - fsType = "btrfs"; - options = [ "subvol=@home" ]; - }; - "/nix" = { - device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; - fsType = "btrfs"; - options = [ "subvol=@nix" ]; - }; - "/var" = { - device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; - fsType = "btrfs"; - options = [ "subvol=@var" ]; - }; - "/snapshots" = { - device = "/dev/disk/by-uuid/e50e186d-e5bc-40b0-9cd7-43b609cde3ea"; - fsType = "btrfs"; - options = [ "subvol=@snapshots" ]; - }; - "/boot" = { - device = "/dev/disk/by-uuid/7C94-8C9A"; - fsType = "vfat"; - options = [ "fmask=0022" "dmask=0022" ]; - }; - "/export/Bulk" = { - device = "/dev/disk/by-uuid/ef465845-cc56-4db5-9260-8ae515eb025e"; - fsType = "btrfs"; - noCheck = true; - }; - }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/7e8c773d-c8f4-4dd8-a835-bde78e5b6760"; } - ]; + boot.initrd.availableKernelModules = [ "xhci_pci" "virtio_scsi" ]; + boot.initrd.kernelModules = [ "dm-snapshot" ]; networking.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; diff --git a/hosts/prophet/users/default.nix b/hosts/prophet/users/default.nix new file mode 100644 index 0000000..a0f4778 --- /dev/null +++ b/hosts/prophet/users/default.nix @@ -0,0 +1,4 @@ +{ ... }: +{ + imports = [ ./jimbo ]; +} diff --git a/hosts/prophet/users/jimbo/default.nix b/hosts/prophet/users/jimbo/default.nix new file mode 100644 index 0000000..7171da3 --- /dev/null +++ b/hosts/prophet/users/jimbo/default.nix @@ -0,0 +1,9 @@ +{ lib, ... }: +{ + home-manager.users.jimbo = { + home = { + desktop.enable = false; + stateVersion = lib.mkForce "24.05"; + }; + }; +}