{ config, lib, pkgs, modulesPath, ... }:

{
  imports =
    [ (modulesPath + "/installer/scan/not-detected.nix")
    ];

  boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" ];
  boot.initrd.kernelModules = [ ];
  boot.kernelModules = [ "kvm-intel" ];
  boot.extraModulePackages = [ ];

  fileSystems = {
    "/" = {
      device = "/dev/disk/by-uuid/d626409d-8166-45c2-a168-09dfab31b8a4";
      fsType = "btrfs";
      options = [ "compress=zstd" "subvol=@nix-root" ];
    };
    "/home" = {
      device = "/dev/disk/by-uuid/d626409d-8166-45c2-a168-09dfab31b8a4";
      fsType = "btrfs";
      options = [ "compress=zstd" "subvol=@home" ];
    };
    "/nix" = {
      device = "/dev/disk/by-uuid/d626409d-8166-45c2-a168-09dfab31b8a4";
      fsType = "btrfs";
      options = [ "compress=zstd" "subvol=@nix-store" "noatime"];
    };
    "/persist" = {
      device = "/dev/disk/by-uuid/d626409d-8166-45c2-a168-09dfab31b8a4";
      fsType = "btrfs";
      options = [ "compress=zstd" "subvol=@persist" ];
    };
  };

  boot.initrd.luks.devices."luksdev".device = "/dev/disk/by-uuid/100a5596-671b-48ba-a1d1-0723559baf87";

  swapDevices = [ ];

  nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
  powerManagement.cpuFreqGovernor = lib.mkDefault "schedutil";
  hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}