{ config, lib, modulesPath, ... }: { imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usbhid" "usb_storage" "sd_mod"]; boot.initrd.kernelModules = []; boot.kernelModules = ["kvm-intel"]; boot.extraModulePackages = []; boot.tmp.useTmpfs = true; fileSystems."/" = { device = "/dev/disk/by-uuid/d375c3a3-63a3-47f8-8b77-58fabbb8f67b"; fsType = "btrfs"; options = ["subvol=root"]; }; # boot.initrd.systemd.services.wipe-root = { # requires = ["dev-mapper-enc.device"]; # after = ["dev-mapper-enc.device"]; # wantedBy = ["initrd.target"]; # script = lib.mkAfter '' # mkdir /btrfs_tmp # mount /dev/disk/by-uuid/d375c3a3-63a3-47f8-8b77-58fabbb8f67b /btrfs_tmp # if [[ -e /btrfs_tmp/root ]]; then # mkdir -p /btrfs_tmp/old_roots # timestamp=$(date --date="@$(stat -c %Y /btrfs_tmp/root)" "+%Y-%m-%-d_%H:%M:%S") # mv /btrfs_tmp/root "/btrfs_tmp/old_roots/$timestamp" # fi # # delete_subvolume_recursively() { # IFS=$'\n' # for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do # delete_subvolume_recursively "/btrfs_tmp/$i" # done # btrfs subvolume delete "$1" # } # # for i in $(find /btrfs_tmp/old_roots/ -maxdepth 1 -mtime +30); do # delete_subvolume_recursively "$i" # done # # btrfs subvolume create /btrfs_tmp/root # umount /btrfs_tmp # ''; # }; boot.initrd.luks.devices."enc".device = "/dev/disk/by-uuid/9952fcd1-46eb-4c9c-ab7d-361d31fdb9a2"; fileSystems."/home" = { device = "/dev/disk/by-uuid/d375c3a3-63a3-47f8-8b77-58fabbb8f67b"; fsType = "btrfs"; options = ["subvol=home" "compress=zstd"]; }; fileSystems."/nix" = { device = "/dev/disk/by-uuid/d375c3a3-63a3-47f8-8b77-58fabbb8f67b"; fsType = "btrfs"; options = ["subvol=nix" "compress=zstd" "noatime"]; }; fileSystems."/persist" = { device = "/dev/disk/by-uuid/d375c3a3-63a3-47f8-8b77-58fabbb8f67b"; neededForBoot = true; fsType = "btrfs"; options = ["subvol=persist" "compress=zstd"]; }; fileSystems."/var/log" = { device = "/dev/disk/by-uuid/d375c3a3-63a3-47f8-8b77-58fabbb8f67b"; fsType = "btrfs"; options = ["subvol=log" "compress=zstd" "noatime"]; neededForBoot = true; }; fileSystems."/boot" = { device = "/dev/disk/by-uuid/12CE-A600"; fsType = "vfat"; options = ["fmask=0022" "dmask=0022"]; }; swapDevices = []; networking.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; }