Skip to content

Commit 5a79d6f

Browse files
committed
feat(firmware): use ucodenix to update firmwares
1 parent 8cad388 commit 5a79d6f

File tree

7 files changed

+82
-36
lines changed

7 files changed

+82
-36
lines changed

flake.lock

Lines changed: 36 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flake.nix

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@
1616
nixos-generators.url = "github:nix-community/nixos-generators";
1717
nixos-generators.inputs.nixpkgs.follows = "nixpkgs";
1818

19+
ucodenix.url = "github:e-tho/ucodenix";
20+
1921
nixos-hardware.url = "github:nixos/nixos-hardware";
22+
2023
impermanence.url = "github:nix-community/impermanence";
2124

2225
home-manager.url = "github:nix-community/home-manager";
@@ -108,6 +111,7 @@
108111
disko.nixosModules.disko
109112
impermanence.nixosModules.impermanence
110113
stylix.nixosModules.stylix
114+
ucodenix.nixosModules.default
111115
# xremap.nixosModules.default
112116
];
113117

modules/nixos/archetypes/server/default.nix

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,12 @@ mkModule ./. false config { } (_cfg: {
1212
suites = {
1313
common = enabled;
1414
};
15-
hardware.power = {
16-
governor = "powersave";
17-
energy_performance_preference = "balance_power";
15+
hardware = {
16+
firmware.enable = true;
17+
power = {
18+
governor = "powersave";
19+
energy_performance_preference = "balance_power";
20+
};
1821
};
1922
system = {
2023
boot = {

modules/nixos/hardware/cpu/amd/default.nix

Lines changed: 0 additions & 22 deletions
This file was deleted.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
{
2+
config,
3+
lib,
4+
namespace,
5+
...
6+
}:
7+
let
8+
inherit (lib.${namespace}) mkModule;
9+
inherit (config.facter) report reportPath;
10+
virtualized = (report.virtualisation or null) != "none";
11+
in
12+
mkModule ./. false config { } (_cfg: {
13+
services = {
14+
fwupd = {
15+
enable = !virtualized;
16+
daemonSettings.EspUpdateLevel = config.boot.loader.efi.efiSysMountPoint;
17+
};
18+
19+
ucodenix = {
20+
enable = !virtualized;
21+
cpuModelId = reportPath;
22+
};
23+
};
24+
25+
# NOTE: force disable when running via build-vm
26+
virtualisation.vmVariant = {
27+
services = {
28+
fwupd.enable = false;
29+
ucodenix.enable = false;
30+
};
31+
};
32+
})

modules/nixos/suites/common/default.nix

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@ mkModule ./. false config { } (_cfg: {
1313
${namespace} = {
1414
nix = mkDefault enabled;
1515
theme.stylix = mkDefault enabled;
16-
hardware.power = mkDefault enabled;
16+
hardware = {
17+
firmware = mkDefault enabled;
18+
power = mkDefault enabled;
19+
};
1720
};
1821

1922
environment = {

modules/nixos/system/boot/default.nix

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -88,14 +88,4 @@ mkModule ./. false config
8888
tmpfsSize = "50%";
8989
};
9090
};
91-
92-
services.fwupd = {
93-
# NOTE: need to be false for VMs
94-
enable = true;
95-
daemonSettings.EspUpdateLevel = config.boot.loader.efi.efiSysMountPoint;
96-
};
97-
98-
virtualisation.vmVariant = {
99-
services.fwupd.enable = false;
100-
};
10191
})

0 commit comments

Comments
 (0)