{ lib, ... }: { imports = lib.attrValues (lib.modulesIn ./.); nixfiles.modules = { wireguard.client.enable = true; syncthing.enable = true; android.enable = true; bluetooth.enable = true; }; hardware.trackpoint = { enable = true; speed = 500; sensitivity = 250; }; services = { thinkfan = { enable = true; settings = { sensors = [ { hwmon = "/sys/class/hwmon"; name = "coretemp"; indices = [ 1 ]; } ]; fans = [ { tpacpi = "/proc/acpi/ibm/fan"; } ]; levels = [ [ 0 0 50 ] [ "level auto" 50 75 ] [ "level disengaged" 75 32767 ] ]; }; }; fprintd.enable = true; fwupd.enable = true; }; boot = { kernelParams = [ "mem_sleep_default=deep" ]; initrd.prepend = [ "${./acpi.cpio}" ]; }; disko.devices.disk.one = { type = "disk"; device = "/dev/nvme0n1"; content = { type = "gpt"; partitions = { ESP = { size = "512M"; type = "EF00"; content = { type = "filesystem"; format = "vfat"; mountpoint = "/boot"; }; }; LUKS = { size = "100%"; content = { type = "luks"; name = "cryptos"; settings = { allowDiscards = true; bypassWorkqueues = true; }; content = { type = "btrfs"; extraArgs = [ "-f" ]; subvolumes = { "/root" = { mountpoint = "/"; mountOptions = [ "compress=zstd" "noatime" ]; }; "/nix" = { mountpoint = "/nix"; mountOptions = [ "compress=zstd" "noatime" ]; }; "/home" = { mountpoint = "/home"; mountOptions = [ "compress=zstd" "noatime" ]; }; "/swap" = { mountpoint = "/.swapvol"; swap.swapfile.size = "16G"; }; }; }; }; }; }; }; }; fileSystems."/home".neededForBoot = true; zramSwap = { enable = true; memoryPercent = 100; }; nix = { buildMachines = [ { hostName = "eonwe.shire.net"; protocol = "ssh-ng"; sshUser = "builder"; sshKey = "/root/.ssh/id_ed25519"; system = "x86_64-linux"; supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ]; } ]; distributedBuilds = true; settings.builders-use-substitutes = true; }; }