{ config, lib, pkgs, hostName, ... }:
{
imports = [
  ../../nixos/profiles/hardware/X201.nix
  ../../nixos/profiles/zfs.nix
  ../../nixos/profiles/zramSwap.nix
];

/*
boot.loader.efi = {
  canTouchEfiVariables = true;
  efiSysMountPoint = "/boot/efi";
};
*/
boot.loader.grub = {
  enable  = true;
  version = 2;
  devices = [
    "/dev/disk/by-id/ata-Samsung_SSD_850_PRO_128GB_S1SMNSAFC36436X"
  ];
  configurationLimit = 16;

  #zfsSupport = true;
  #efiSupport = true;
  #enableCryptodisk = true;
};

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/documents/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";
    };
  }
];

# 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 : head -c4 /dev/urandom | od -A none -t x4 | cut -d ' ' -f 2
networking.hostId = "ce53d0c3";

boot.supportedFilesystems = [ "ntfs" "vfat" ];

powerManagement.powertop.enable = true;
#services.fprintd.enable = true;

fileSystems."/" =
  { device = "${hostName}/root";
    fsType = "zfs";
  };
fileSystems."/nix" =
  { device = "${hostName}/nix";
    fsType = "zfs";
  };
fileSystems."/var" =
  { device = "${hostName}/var";
    fsType = "zfs";
  };

}