nix/os: tidy up hw/boot handling

This commit is contained in:
steveej 2018-11-05 12:04:06 +01:00
parent 40fd476f0b
commit 8baa3cf42d
13 changed files with 63 additions and 62 deletions

View file

@ -4,10 +4,4 @@
# workaround to disable CPU wining
# current CPU has 9 idle cstates.
boot.kernelParams = [ "intel_idle.max_cstate=9" ];
# Workaround for nm-pptp to enforce module load
boot.kernelModules = [
"nf_conntrack_proto_gre"
"nf_conntrack_pptp"
];
}

View file

@ -4,25 +4,20 @@
{ config, lib, pkgs, ... }:
{
nix.maxJobs = 3;
nix.buildCores = 3;
boot.initrd.availableKernelModules = [
"aesni_intel"
"kvm-intel"
"aes_x86_64"
];
hardware.enableAllFirmware = true;
hardware.trackpoint.emulateWheel = true;
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModprobeConfig = ''
options kvm-intel nested=1
options kvm-intel enable_shadow_vmcs=1
options kvm-intel enable_apicv=1
options kvm-intel ept=1
'';
boot.extraModulePackages = [ ];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
# TODO: migrate this to the encryptedDisk module
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/445D-DBAA";
fsType = "vfat";

View file

@ -1,5 +1,9 @@
{ ... }:
{
hardware.encryptedDisk.diskId = "mmc-SL32G_0x259093f6";
# TASK: new device
hardware.encryptedDisk = {
enable = true;
diskId = "mmc-SL32G_0x259093f6";
};
}

View file

@ -7,14 +7,12 @@
diskId = "nvme-SAMSUNG_MZVLW256HEHP-000L7_S35ENX0K827498";
};
nix.maxJobs = 3;
nix.buildCores = 3;
boot.initrd.availableKernelModules = [
"aesni_intel"
"kvm-intel"
"aes_x86_64"
];
hardware.enableAllFirmware = true;
hardware.trackpoint.emulateWheel = true;
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModprobeConfig = ''
options kvm-intel nested=1
options kvm-intel enable_shadow_vmcs=1

View file

@ -30,11 +30,12 @@
];
};
services.fprintd.enable = true;
security.pam.services = {
login.fprintAuth = true;
sudo.fprintAuth = true;
};
# TODO: get external fingerprint reader
# services.fprintd.enable = true;
# security.pam.services = {
# login.fprintAuth = true;
# sudo.fprintAuth = true;
# };
# Kubernetes
# services.kubernetes.roles = ["master" "node"];

View file

@ -11,7 +11,14 @@
version = 2;
};
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.tmpOnTmpfs = true;
# Workaround for nm-pptp to enforce module load
boot.kernelModules = [
"nf_conntrack_proto_gre"
"nf_conntrack_pptp"
];
}

View file

@ -6,5 +6,6 @@
./pkg.nix
./user.nix
./system.nix
./hw.nix
];
}

View file

@ -0,0 +1,14 @@
{ ... }:
{
hardware.trackpoint.emulateWheel = true;
boot.initrd.availableKernelModules = [
"xhci_pci"
"ahci"
"usb_storage"
"sd_mod"
"rtsx_pci_sdmmc"
"cryptd"
];
}

View file

@ -0,0 +1,7 @@
{ lib
, ...
}:
{
}

View file

@ -4,6 +4,8 @@
{
imports = [
./boot.nix
./system.nix
./hw.nix
];
}

View file

@ -0,0 +1,7 @@
{
...
}:
{
hardware.enableAllFirmware = true;
}

View file

@ -5,33 +5,5 @@
{
boot.loader.grub.efiInstallAsRemovable = lib.mkForce true;
boot.loader.efi.canTouchEfiVariables = lib.mkForce false;
boot.initrd.availableKernelModules = [
"xhci_pci"
"ahci"
"usb_storage"
"sd_mod"
"rtsx_pci_sdmmc"
"aes_x86_64"
"aesni_intel"
"cryptd"
];
boot.kernelModules = [
"kvm-intel"
# Workaround for nm-pptp to enforce module load
"nf_conntrack_proto_gre"
"nf_conntrack_pptp"
];
boot.extraModprobeConfig = ''
options kvm-intel nested=1
options kvm-intel enable_shadow_vmcs=1
options kvm-intel enable_apicv=1
options kvm-intel ept=1
'';
boot.extraModulePackages = [ ];
boot.loader.systemd-boot.enable = true;
}

View file

@ -3,5 +3,4 @@
{
hardware.encryptedDisk.enable = true;
hardware.enableAllFirmware = true;
hardware.trackpoint.emulateWheel = true;
}