Skip to content

Commit e10db28

Browse files
committed
feat: add evaluatedConfig field
This field allows using custom system configs, not necessarily nixos' eval-config
1 parent 6c2123b commit e10db28

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

nixos-modules/host/default.nix

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,9 @@ in
5858
isFlake = flake != null;
5959
guestConfig = if isFlake
6060
then flake.nixosConfigurations.${name}.config
61-
else microvmConfig.config.config;
61+
else if microvmConfig.evaluatedConfig != null
62+
then microvmConfig.evaluatedConfig.config
63+
else microvmConfig.config.config;
6264
runner = guestConfig.microvm.declaredRunner;
6365
in
6466
{

nixos-modules/host/options.nix

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,15 @@
2525
vms = mkOption {
2626
type = with types; attrsOf (submodule ({ config, name, ... }: {
2727
options = {
28+
evaluatedConfig = mkOption {
29+
description = ''
30+
An already evaluated configuration of this MicroVM.
31+
Allows supplying an already evaluated configuration or an alternative configuration evaluation function instead of NixOS's default eval-config.
32+
'';
33+
default = null;
34+
type = nullOr types.unspecified;
35+
};
36+
2837
config = mkOption {
2938
description = ''
3039
A specification of the desired configuration of this MicroVM,

0 commit comments

Comments
 (0)