47 lines
1.1 KiB
Nix
47 lines
1.1 KiB
Nix
|
{ extendModules, lib, ... }:
|
||
|
let
|
||
|
|
||
|
inherit (lib)
|
||
|
mkOption
|
||
|
;
|
||
|
|
||
|
vmVariant = extendModules {
|
||
|
modules = [ ./qemu-vm.nix ];
|
||
|
};
|
||
|
|
||
|
vmVariantWithBootLoader = vmVariant.extendModules {
|
||
|
modules = [
|
||
|
({ config, ... }: {
|
||
|
_file = "nixos/default.nix##vmWithBootLoader";
|
||
|
virtualisation.useBootLoader = true;
|
||
|
virtualisation.useEFIBoot =
|
||
|
config.boot.loader.systemd-boot.enable ||
|
||
|
config.boot.loader.efi.canTouchEfiVariables;
|
||
|
})
|
||
|
];
|
||
|
};
|
||
|
in
|
||
|
{
|
||
|
options = {
|
||
|
|
||
|
virtualisation.vmVariant = mkOption {
|
||
|
description = ''
|
||
|
Machine configuration to be added for the vm script produced by <literal>nixos-rebuild build-vm</literal>.
|
||
|
'';
|
||
|
inherit (vmVariant) type;
|
||
|
default = {};
|
||
|
visible = "shallow";
|
||
|
};
|
||
|
|
||
|
virtualisation.vmVariantWithBootLoader = mkOption {
|
||
|
description = ''
|
||
|
Machine configuration to be added for the vm script produced by <literal>nixos-rebuild build-vm-with-bootloader</literal>.
|
||
|
'';
|
||
|
inherit (vmVariantWithBootLoader) type;
|
||
|
default = {};
|
||
|
visible = "shallow";
|
||
|
};
|
||
|
|
||
|
};
|
||
|
}
|