diff options
author | Maximilian Bosch <maximilian@mbosch.me> | 2020-10-23 17:33:10 +0200 |
---|---|---|
committer | Maximilian Bosch <maximilian@mbosch.me> | 2020-10-23 17:37:57 +0200 |
commit | aab534b894c60e69199aba4cc57b8b3f8fd1a8c2 (patch) | |
tree | 97eafd6fa5c7d9c8c1e8bf9b26de4933b848f77c | |
parent | 972ba804fd347c86db110837788157679b3815f0 (diff) |
nixos/nixos-build-vms: use `pkgs.qemu` for virtualisation
When I test a change e.g. in the module system manually, I usually use
`nixos-build-vms(8)` which also gives me a QEMU window where I can play
around in the freshly built VM.
It seems as this has changed recently when the default package for
non-interactive VM tests using the same framework was switched to
`pkgs.qemu_test` to reduce the closure size. While this is a reasonable
decision for our CI tests, I think that you really want a QEMU window of
the VM by default when using `nixos-build-vms(8)`.
[1] bc2188b083dfbbe749a221023e2960b60d4c8951
-rw-r--r-- | nixos/modules/installer/tools/nixos-build-vms/build-vms.nix | 7 | ||||
-rw-r--r-- | nixos/modules/testing/test-instrumentation.nix | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix index 0c9f8522cc12..199e5f9206b1 100644 --- a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix +++ b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix @@ -6,7 +6,12 @@ let nodes = builtins.mapAttrs (vm: module: { _file = "${networkExpr}@node-${vm}"; - imports = [ module ]; + imports = [ + module + ({ pkgs, ... }: { + virtualisation.qemu.package = pkgs.qemu; + }) + ]; }) (import networkExpr); in diff --git a/nixos/modules/testing/test-instrumentation.nix b/nixos/modules/testing/test-instrumentation.nix index e9f5eac7f5f4..2986bd4c4e31 100644 --- a/nixos/modules/testing/test-instrumentation.nix +++ b/nixos/modules/testing/test-instrumentation.nix @@ -53,7 +53,7 @@ with import ../../lib/qemu-flags.nix { inherit pkgs; }; # or declare virtualisation.qemu.console option in a module that's always imported virtualisation.qemu = { consoles = lib.optional (options ? virtualisation.qemu.consoles) qemuSerialDevice; - package = pkgs.qemu_test; + package = lib.mkDefault pkgs.qemu_test; }; boot.initrd.preDeviceCommands = |