modules: hardware: add firmware

This commit is contained in:
Bruno BELANYI 2022-04-27 13:55:00 +02:00
parent cb84b49438
commit 43cb3ae582
2 changed files with 39 additions and 0 deletions

View file

@ -5,6 +5,7 @@
imports = [
./bluetooth
./ergodox
./firmware
./mx-ergo
./networking
./sound

View file

@ -0,0 +1,38 @@
{ config, lib, pkgs, ... }:
let
cfg = config.my.hardware.firmware;
in
{
options.my.hardware.firmware = with lib; {
enable = my.mkDisableOption "firmware configuration";
cpuFlavor = mkOption {
type = with types; nullOr (enum [ "intel" "amd" ]);
default = null;
example = "intel";
description = "Which kind of CPU to activate micro-code updates";
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
{
hardware = {
enableRedistributableFirmware = true;
};
}
# Intel CPU
(lib.mkIf (cfg.cpuFlavor == "intel") {
hardware = {
cpu.intel.updateMicrocode = true;
};
})
# AMD CPU
(lib.mkIf (cfg.cpuFlavor == "amd") {
hardware = {
cpu.amd.updateMicrocode = true;
};
})
]);
}