diff --git a/nix-os/core.nix b/nix-os/core.nix index 538835d..1b4bb40 100644 --- a/nix-os/core.nix +++ b/nix-os/core.nix @@ -24,6 +24,10 @@ let }; in { + imports = [ + ./module-overrides.nix + ]; + # kernel boot.kernelPackages = pkgs.linuxPackages_latest; diff --git a/nix-os/module-overrides.nix b/nix-os/module-overrides.nix new file mode 100644 index 0000000..6b5f76e --- /dev/null +++ b/nix-os/module-overrides.nix @@ -0,0 +1,27 @@ +{ lib, ... }: +let + moduleOverrides = [ + # TODO: Remove after updating to nixos 25.05 + { + # https://github.com/NixOS/nixpkgs/pull/359882 + disabledModules = [ + "system/boot/luksroot.nix" + ]; + replacementModules = [(builtins.fetchurl { + url = "https://raw.githubusercontent.com/amozeo/nixpkgs/728d5806fe6f975ba3843297332d12e13119fe86/nixos/modules/system/boot/luksroot.nix"; + sha256 = "0s2k8k6rrlwn2zb02q6fkvswln8w4hvh02hm4krqvkh46amyasyy"; + })]; + } + ]; + + toModule = entry: { + imports = entry.replacementModules; + disabledModules = entry.disabledModules; + _file = let + info = builtins.unsafeGetAttrPos "disabledModules" entry; + in "${info.file}:L${info.line}"; + }; +in +{ + imports = lib.map toModule moduleOverrides; +}