{ lib, modulesPath, ... }: { imports = [ (modulesPath + "/profiles/qemu-guest.nix") ]; boot = { loader.systemd-boot = { enable = true; }; loader.efi.canTouchEfiVariables = true; supportedFilesystems = [ "btrfs" ]; initrd = { availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "sr_mod" "virtio_blk" ]; kernelModules = [ ]; }; kernelModules = [ ]; extraModulePackages = [ ]; }; fileSystems = let btrfsDev = "13d40c4f-baaa-4a17-9032-b25aad202384"; in { "/" = { device = "none"; fsType = "tmpfs"; neededForBoot = true; options = [ "defaults" "size=4G" "mode=755" "noexec" ]; }; "/tmp" = { device = "/dev/disk/by-uuid/${btrfsDev}"; fsType = "btrfs"; options = [ "noexec" "noatime" "compress=zstd" "subvol=tmp" ]; neededForBoot = true; }; "/snapshots" = { device = "/dev/disk/by-uuid/${btrfsDev}"; fsType = "btrfs"; options = [ "noexec" "noatime" "compress=zstd" "subvol=snapshots" ]; neededForBoot = false; }; "/persist" = { device = "/dev/disk/by-uuid/${btrfsDev}"; fsType = "btrfs"; options = [ "noexec" "noatime" "compress=zstd" "subvol=persist" ]; neededForBoot = true; }; "/nix" = { device = "/dev/disk/by-uuid/${btrfsDev}"; fsType = "btrfs"; options = [ "noatime" "compress=zstd" "subvol=nix" ]; neededForBoot = true; }; "/boot" = { device = "/dev/disk/by-uuid/5491-80AC"; fsType = "vfat"; options = [ "fmask=0022" "dmask=0022" ]; }; }; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking # (the default) this is the recommended approach. When using systemd-networkd it's # still possible to use this option, but it's recommended to use it in conjunction # with explicit per-interface declarations with `networking.interfaces..useDHCP`. networking.useDHCP = lib.mkDefault true; time.timeZone = "Europe/Berlin"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; }