From 14d367e50f51462f85521d75de6f2e779f3e3969 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Mon, 7 Jul 2025 17:57:28 +0200 Subject: [PATCH 1/2] clanServices/wifi: update test with a second instance --- clanServices/wifi/tests/vm/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/clanServices/wifi/tests/vm/default.nix b/clanServices/wifi/tests/vm/default.nix index a632da8e3..6f82932ab 100644 --- a/clanServices/wifi/tests/vm/default.nix +++ b/clanServices/wifi/tests/vm/default.nix @@ -7,8 +7,16 @@ inventory = { machines.test = { }; + machines.second = { }; instances = { + wg-test-all = { + module.name = "@clan/wifi"; + module.input = "self"; + roles.default.tags.all = { }; + roles.default.settings.networks.all = { }; + }; + wg-test-one = { module.name = "@clan/wifi"; module.input = "self"; From 158b98ee05ebd8859b60689a62921565dd1fa659 Mon Sep 17 00:00:00 2001 From: Guilhem Saurel Date: Tue, 8 Jul 2025 02:15:02 +0200 Subject: [PATCH 2/2] clanServices/wifi: fix for multiple instances MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Without this, `nix build .#checks.x86_64-linux.wifi` fails with: ``` error: The option `nodes.first.systemd.services.NetworkManager-setup-secrets.serviceConfig.ExecStart' has conflicting definition values: - In `/nix/store/x0…45-source/clanServices/wifi/default.nix, via option mappedServices."self-@clan/wifi".roles.default.perInstance, via option nixosModule': - In `/nix/store/x0…45-source/clanServices/wifi/default.nix, via option mappedServices."self-@clan/wifi".roles.default.perInstance, via option nixosModule': Use `lib.mkForce value` or `lib.mkDefault value` to change the priority on any of these definitions. ``` --- clanServices/wifi/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clanServices/wifi/default.nix b/clanServices/wifi/default.nix index e6226b476..897a1802b 100644 --- a/clanServices/wifi/default.nix +++ b/clanServices/wifi/default.nix @@ -39,7 +39,7 @@ in }; perInstance = - { settings, ... }: + { instanceName, settings, ... }: { nixosModule = { pkgs, config, ... }: @@ -86,7 +86,7 @@ in # service to generate the environment file containing all secrets, as # expected by the nixos NetworkManager-ensure-profile service - systemd.services.NetworkManager-setup-secrets = { + systemd.services."NetworkManager-setup-secrets-${instanceName}" = { description = "Generate wifi secrets for NetworkManager"; requiredBy = [ "NetworkManager-ensure-profiles.service" ]; partOf = [ "NetworkManager-ensure-profiles.service" ];