{ pkgs, hostName, ... }: { imports = [ ../../nixos/profiles/hardware/X201.nix ../../nixos/profiles/zfs.nix ../../nixos/profiles/zramSwap.nix ]; # Setting the machine-id avoids to reencrypt all credentials # when reinstalling NixOS on a new drive. # Manually generated with : uuidgen | tr -d - environment.etc.machine-id.source = ./machine-id.clear; # The 32-bit host id of the host, formatted as 8 hexadecimal characters. # You should try to make this id unique among your hosts. # Manually generated with : uuidgen | head -c8 networking.hostId = "ce53d0c3"; /* boot.loader.efi = { canTouchEfiVariables = true; efiSysMountPoint = "/boot/efi"; }; */ boot.loader.grub = { enable = true; memtest86.enable = true; devices = [ "/dev/disk/by-id/ata-Samsung_SSD_850_PRO_128GB_S1SMNSAFC36436X" ]; configurationLimit = 16; #zfsSupport = true; #efiSupport = true; #enableCryptodisk = true; }; boot.zfs.requestEncryptionCredentials = [ hostName ]; hardware.enableRedistributableFirmware = true; # Note that gobi_loader -2000 has to be rerun if the SIM is hot swapped services.udev.extraRules = '' ACTION=="add", SUBSYSTEM=="tty", KERNEL=="ttyUSB*", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9204", RUN+="${pkgs.gobi_loader}/lib/udev/gobi_loader -2000 $env{DEVNAME} /home/julm/files/thinkpad-x201/gobi" ''; fileSystems."/boot" = { device = "/dev/disk/by-partlabel/${hostName}_ssd_boot"; fsType = "ext2"; }; fileSystems."/boot/efi" = { device = "/dev/disk/by-partlabel/${hostName}_ssd_efi"; fsType = "vfat"; }; swapDevices = [ { device = "/dev/disk/by-partlabel/${hostName}_ssd_swap"; randomEncryption = { enable = true; cipher = "aes-xts-plain64"; source = "/dev/urandom"; }; } ]; boot.supportedFilesystems = [ "ntfs" "vfat" ]; fileSystems."/" = { device = "${hostName}/root"; fsType = "zfs"; }; fileSystems."/nix" = { device = "${hostName}/nix"; fsType = "zfs"; }; fileSystems."/var" = { device = "${hostName}/var"; fsType = "zfs"; }; services.pipewire.jack.enable = true; }