From 8fd49c116bcd256263c7aad8ca5d4b7fa10d4ca2 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Fri, 17 Dec 2021 12:41:12 +0100 Subject: [PATCH] nixos/default.nix: Use extendModules --- nixos/default.nix | 35 ++++++++++++++++------------------- nixos/lib/eval-config.nix | 2 +- 2 files changed, 17 insertions(+), 20 deletions(-) diff --git a/nixos/default.nix b/nixos/default.nix index c11872f1441a..01605e1d5772 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -10,25 +10,22 @@ let }; # This is for `nixos-rebuild build-vm'. - vmConfig = (import ./lib/eval-config.nix { - inherit system; - modules = [ configuration ./modules/virtualisation/qemu-vm.nix ]; - }).config; + vm = eval.extendModules { + modules = [ ./modules/virtualisation/qemu-vm.nix ]; + }; # This is for `nixos-rebuild build-vm-with-bootloader'. - vmWithBootLoaderConfig = (import ./lib/eval-config.nix { - inherit system; - modules = - [ configuration - ./modules/virtualisation/qemu-vm.nix - { virtualisation.useBootLoader = true; } - ({ config, ... }: { - virtualisation.useEFIBoot = - config.boot.loader.systemd-boot.enable || - config.boot.loader.efi.canTouchEfiVariables; - }) - ]; - }).config; + vmWithBootLoader = vm.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 @@ -37,7 +34,7 @@ in system = eval.config.system.build.toplevel; - vm = vmConfig.system.build.vm; + vm = vm.config.system.build.vm; - vmWithBootLoader = vmWithBootLoaderConfig.system.build.vm; + vmWithBootLoader = vmWithBootLoader.config.system.build.vm; } diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix index 62d09b8173bd..89fb93ba70ad 100644 --- a/nixos/lib/eval-config.nix +++ b/nixos/lib/eval-config.nix @@ -92,7 +92,7 @@ in withWarnings { # Merge the option definitions in all modules, forming the full # system configuration. - inherit (nixosWithUserModules) config options _module type; + inherit (nixosWithUserModules) config options _module type extendModules; inherit extraArgs;