diff --git a/flake.nix b/flake.nix index c2eeb56..d3712aa 100644 --- a/flake.nix +++ b/flake.nix @@ -12,10 +12,10 @@ url = "github:derfenix/photocatalog"; inputs.nixpkgs.follows = "nixpkgs"; }; - # disko = { - # url = "github:nix-community/disko/latest"; - # inputs.nixpkgs.follows = "nixpkgs"; - # }; + disko = { + url = "github:nix-community/disko/latest"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = @@ -23,6 +23,7 @@ self, nixpkgs, nixpkgs-stable, + disko, ... }@inputs: let @@ -82,6 +83,7 @@ ) inputs.home-manager.nixosModules.home-manager inputs.photocatalog.nixosModules.photocatalog + disko.nixosModules.disko ./options.nix ./nix.nix ] diff --git a/hosts/fenixbook/hardware-configuration.nix b/hosts/fenixbook/hardware-configuration.nix index 7c7db3e..63cd609 100644 --- a/hosts/fenixbook/hardware-configuration.nix +++ b/hosts/fenixbook/hardware-configuration.nix @@ -41,49 +41,64 @@ ]; }; - fileSystems = { - "/boot" = { - device = "/dev/disk/by-uuid/71AB-29E0"; - fsType = "vfat"; - options = [ - "fmask=0022" - "dmask=0022" - ]; - }; - "/" = { - device = "/dev/disk/by-uuid/57df3204-a8c7-4842-957c-9752f996bc0f"; - fsType = "btrfs"; - options = [ - "compress=zstd" - "subvol=/root" - "noatime" - ]; - }; - "/home" = { - device = "/dev/disk/by-uuid/57df3204-a8c7-4842-957c-9752f996bc0f"; - fsType = "btrfs"; - options = [ - "compress=zstd" - "subvol=/home" - "noatime" - ]; - }; - "/nix" = { - device = "/dev/disk/by-uuid/57df3204-a8c7-4842-957c-9752f996bc0f"; - fsType = "btrfs"; - options = [ - "compress=zstd" - "subvol=/nix" - "noatime" - ]; + disko.devices.disk.main = { + type = "disk"; + device = "/dev/nvme0n1"; + content = { + type = "gpt"; + partitions = { + ESP = { + size = "512M"; + type = "EF00"; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + mountOptions = [ "umask=0077" ]; + }; + }; + luks = { + size = "100%"; + content = { + type = "luks"; + name = "cryptedroot"; + passwordFile = "/tmp/secret.key"; + settings.allowDiscards = true; + content = { + type = "btrfs"; + extraArgs = [ "-f" ]; + subvolumes = { + "/root" = { + mountpoint = "/"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "/home" = { + mountpoint = "/home"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "/nix" = { + mountpoint = "/nix"; + mountOptions = [ + "compress=zstd" + "noatime" + ]; + }; + "/swap" = { + mountpoint = "/.swapvol"; + swap.swapfile.size = "16G"; + }; + }; + }; + }; + }; + }; }; }; - swapDevices = [ - { - device = "/dev/disk/by-uuid/56ad966f-3268-4b59-999a-48a082bb8052"; - priority = 100; - } - ]; - }