diff --git a/systems/game-laptop/default.nix b/systems/game-laptop/default.nix index 02da4dd..61acf66 100644 --- a/systems/game-laptop/default.nix +++ b/systems/game-laptop/default.nix @@ -7,10 +7,11 @@ inputs: { }: { imports = [ (import ./prime.nix inputs) - (import ./disko.nix inputs) (import ./gaming.nix inputs) ]; + disko.devices = import ./disko.nix; + localModules = { DE.gnome.enable = true; DM = { diff --git a/systems/game-laptop/disko.nix b/systems/game-laptop/disko.nix index 802a109..ea4620b 100644 --- a/systems/game-laptop/disko.nix +++ b/systems/game-laptop/disko.nix @@ -1,39 +1,37 @@ _: { - disko.devices = { - disk.nvme0n1 = { - device = "/dev/disk/by-id/nvme-WDC_PC_SN530_SDBPNPZ-512G-1006_21311N802456"; - type = "disk"; - content = { - type = "table"; - format = "gpt"; - partitions = [ - { - type = "partition"; - name = "ESP"; - start = "1MiB"; - end = "1GiB"; - bootable = true; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - }; - } - { - name = "root"; - type = "partition"; - start = "1GiB"; - end = "100%"; - part-type = "primary"; - bootable = true; - content = { - type = "filesystem"; - format = "ext4"; - mountpoint = "/"; - }; - } - ]; - }; + disk.nvme0n1 = { + device = "/dev/disk/by-id/nvme-WDC_PC_SN530_SDBPNPZ-512G-1006_21311N802456"; + type = "disk"; + content = { + type = "table"; + format = "gpt"; + partitions = [ + { + type = "partition"; + name = "ESP"; + start = "1MiB"; + end = "1GiB"; + bootable = true; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + }; + } + { + name = "root"; + type = "partition"; + start = "1GiB"; + end = "100%"; + part-type = "primary"; + bootable = true; + content = { + type = "filesystem"; + format = "ext4"; + mountpoint = "/"; + }; + } + ]; }; }; } diff --git a/systems/gerg-desktop/default.nix b/systems/gerg-desktop/default.nix index ce22e9e..4fff656 100644 --- a/systems/gerg-desktop/default.nix +++ b/systems/gerg-desktop/default.nix @@ -12,9 +12,10 @@ inputs: { (import ./spicetify.nix inputs) (import ./zfs.nix inputs) (import ./containers inputs) - (import ./disko.nix inputs) ]; + disko.devices = import ./disko.nix; + system.stateVersion = "unstable"; localModules = { X11Programs = { diff --git a/systems/gerg-desktop/disko.nix b/systems/gerg-desktop/disko.nix index 1af439b..08579d3 100644 --- a/systems/gerg-desktop/disko.nix +++ b/systems/gerg-desktop/disko.nix @@ -1,208 +1,200 @@ _: { - disko.devices = { - disk = { - nvme0 = { - type = "disk"; - device = "/dev/disk/by-id/nvme-SHPP41-500GM_SSB4N6719101A4N22"; - content = { - type = "table"; - format = "gpt"; - partitions = [ - { - name = "boot"; - type = "partition"; - start = "0"; - end = "1M"; - part-type = "primary"; - flags = ["bios_grub"]; - } - { - name = "ESP"; - type = "partition"; - start = "1M"; - end = "1G"; - bootable = true; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot/efis/nvme-SHPP41-500GM_SSB4N6719101A4N22"; - }; - } - { - name = "zfsboot"; - type = "partition"; - start = "1G"; - end = "5G"; - content = { - type = "zfs"; - pool = "bpool"; - }; - } - { - name = "swap"; - type = "partition"; - start = "5G"; - end = "21G"; - content = { - type = "swap"; - randomEncryption = true; - }; - } - { - name = "zfsroot"; - type = "partition"; - start = "21G"; - end = "100%"; - content = { - type = "zfs"; - pool = "rpool"; - }; - } - ]; - }; + disk = { + nvme0 = { + type = "disk"; + device = "/dev/disk/by-id/nvme-SHPP41-500GM_SSB4N6719101A4N22"; + content = { + type = "table"; + format = "gpt"; + partitions = [ + { + name = "boot"; + type = "partition"; + start = "0"; + end = "1M"; + part-type = "primary"; + flags = ["bios_grub"]; + } + { + name = "ESP"; + type = "partition"; + start = "1M"; + end = "1G"; + bootable = true; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot/efis/nvme-SHPP41-500GM_SSB4N6719101A4N22"; + }; + } + { + name = "zfsboot"; + type = "partition"; + start = "1G"; + end = "5G"; + content = { + type = "zfs"; + pool = "bpool"; + }; + } + { + name = "swap"; + type = "partition"; + start = "5G"; + end = "21G"; + content = { + type = "swap"; + randomEncryption = true; + }; + } + { + name = "zfsroot"; + type = "partition"; + start = "21G"; + end = "100%"; + content = { + type = "zfs"; + pool = "rpool"; + }; + } + ]; }; - nvme1 = { - type = "disk"; - device = "/dev/disk/by-id/nvme-SHPP41-500GM_SSB4N6719101A4N0E"; - content = { - type = "table"; - format = "gpt"; - partitions = [ - { - name = "BIOS"; - type = "partition"; - start = "0"; - end = "1M"; - part-type = "primary"; - flags = ["bios_grub"]; - } - { - name = "ESP"; - type = "partition"; - start = "1M"; - end = "1G"; - bootable = true; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot/efis/nvme-SHPP41-500GM_SSB4N6719101A4N0E"; - }; - } - { - name = "zfsboot"; - type = "partition"; - start = "1G"; - end = "5G"; - content = { - type = "zfs"; - pool = "bpool"; - }; - } - { - name = "swap"; - type = "partition"; - start = "5G"; - end = "21G"; - content = { - type = "swap"; - randomEncryption = true; - }; - } - { - name = "zfsroot"; - type = "partition"; - start = "21G"; - end = "100%"; - content = { - type = "zfs"; - pool = "rpool"; - }; - } - ]; + }; + nvme1 = { + type = "disk"; + device = "/dev/disk/by-id/nvme-SHPP41-500GM_SSB4N6719101A4N0E"; + content = { + type = "table"; + format = "gpt"; + partitions = [ + { + name = "BIOS"; + type = "partition"; + start = "0"; + end = "1M"; + part-type = "primary"; + flags = ["bios_grub"]; + } + { + name = "ESP"; + type = "partition"; + start = "1M"; + end = "1G"; + bootable = true; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot/efis/nvme-SHPP41-500GM_SSB4N6719101A4N0E"; + }; + } + { + name = "zfsboot"; + type = "partition"; + start = "1G"; + end = "5G"; + content = { + type = "zfs"; + pool = "bpool"; + }; + } + { + name = "swap"; + type = "partition"; + start = "5G"; + end = "21G"; + content = { + type = "swap"; + randomEncryption = true; + }; + } + { + name = "zfsroot"; + type = "partition"; + start = "21G"; + end = "100%"; + content = { + type = "zfs"; + pool = "rpool"; + }; + } + ]; + }; + }; + }; + zpool = { + rpool = { + type = "zpool"; + mode = "mirror"; + rootFsOptions = { + acltype = "posixacl"; + compression = "zstd"; + dnodesize = "auto"; + normalization = "formD"; + relatime = "on"; + xattr = "sa"; + canmount = "off"; + encryption = "on"; + keyformat = "passphrase"; + keylocation = "prompt"; + }; + options = { + ashift = "12"; + autotrim = "on"; + }; + datasets = { + "root" = { + zfs_type = "filesystem"; + options.mountpoint = "legacy"; + mountpoint = "/"; + }; + "root/nix" = { + zfs_type = "filesystem"; + options.mountpoint = "legacy"; + mountpoint = "/nix"; + }; + "root/var" = { + zfs_type = "filesystem"; + + options.mountpoint = "legacy"; + mountpoint = "/var"; + }; + "root/persist" = { + zfs_type = "filesystem"; + + options.mountpoint = "legacy"; + mountpoint = "/persist"; + }; + "root/home" = { + zfs_type = "filesystem"; + + options.mountpoint = "legacy"; + mountpoint = "/home"; }; }; }; - zpool = { - rpool = { - type = "zpool"; - mode = "mirror"; - rootFsOptions = { - acltype = "posixacl"; - canmount = "off"; - compression = "zstd"; - dnodesize = "auto"; - normalization = "formD"; - relatime = "true"; - xattr = "sa"; - }; - options = { - ashift = "12"; - autotrim = "on"; - }; - datasets = { - "nixos" = { - zfs_type = "filesystem"; - options = { - canmount = "off"; - encryption = "on"; - keyformat = "passphrase"; - keylocation = "prompt"; - }; - }; - - "nixos/root" = { - zfs_type = "filesystem"; - options.mountpoint = "legacy"; - mountpoint = "/"; - }; - - "nixos/home" = { - zfs_type = "filesystem"; - options.mountpoint = "legacy"; - mountpoint = "/home"; - }; - "nixos/var" = { - zfs_type = "filesystem"; - options.mountpoint = "legacy"; - mountpoint = "/var"; - }; - "nixos/var/log" = { - zfs_type = "filesystem"; - options.mountpoint = "legacy"; - mountpoint = "/var/log"; - }; - "nixos/var/lib" = { - zfs_type = "filesystem"; - options.mountpoint = "legacy"; - mountpoint = "/var/lib"; - }; - }; + bpool = { + type = "zpool"; + mode = "mirror"; + rootFsOptions = { + acltype = "posixacl"; + compression = "lz4"; + devices = "off"; + normalization = "formD"; + relatime = "on"; + xattr = "sa"; + canmount = "off"; }; - bpool = { - type = "zpool"; - mode = "mirror"; - rootFsOptions = { - acltype = "posixacl"; - canmount = "off"; - compression = "lz4"; - devices = "off"; - normalization = "formD"; - relatime = "on"; - xattr = "sa"; - mountpoint = "/boot"; - }; - options = { - compatibility = "grub2"; - ashift = "12"; - autotrim = "on"; - }; - datasets = { - "nixos/root" = { - zfs_type = "filesystem"; - options.mountpoint = "legacy"; - mountpoint = "/boot"; - }; + options = { + compatibility = "grub2"; + ashift = "12"; + autotrim = "on"; + }; + datasets = { + "boot" = { + zfs_type = "filesystem"; + options.mountpoint = "legacy"; + mountpoint = "/boot"; }; }; }; diff --git a/systems/moms-laptop/default.nix b/systems/moms-laptop/default.nix index d03b224..3b3206b 100644 --- a/systems/moms-laptop/default.nix +++ b/systems/moms-laptop/default.nix @@ -6,8 +6,10 @@ inputs: { }: { imports = [ (import ./printing.nix inputs) - (import ./disko.nix inputs) ]; + + disko.devices = import ./disko.nix; + localModules = { DM = { lightdm.enable = true; diff --git a/systems/moms-laptop/disko.nix b/systems/moms-laptop/disko.nix index 2c129ff..2b20e41 100644 --- a/systems/moms-laptop/disko.nix +++ b/systems/moms-laptop/disko.nix @@ -1,39 +1,37 @@ _: { - disko.devices = { - disk.sda = { - device = "/dev/disk/by-id/ata-WDC_WDS240G2G0A-00JH30_180936803144"; - type = "disk"; - content = { - type = "table"; - format = "gpt"; - partitions = [ - { - type = "partition"; - name = "ESP"; - start = "1MiB"; - end = "1GiB"; - bootable = true; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - }; - } - { - name = "root"; - type = "partition"; - start = "1GiB"; - end = "100%"; - part-type = "primary"; - bootable = true; - content = { - type = "filesystem"; - format = "ext4"; - mountpoint = "/"; - }; - } - ]; - }; + disk.sda = { + device = "/dev/disk/by-id/ata-WDC_WDS240G2G0A-00JH30_180936803144"; + type = "disk"; + content = { + type = "table"; + format = "gpt"; + partitions = [ + { + type = "partition"; + name = "ESP"; + start = "1MiB"; + end = "1GiB"; + bootable = true; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + }; + } + { + name = "root"; + type = "partition"; + start = "1GiB"; + end = "100%"; + part-type = "primary"; + bootable = true; + content = { + type = "filesystem"; + format = "ext4"; + mountpoint = "/"; + }; + } + ]; }; }; }