From ffacb08c63d78e1d62fc206096569ba8995f26c6 Mon Sep 17 00:00:00 2001 From: Kiara Grouwstra Date: Thu, 26 Dec 2024 23:15:33 +0100 Subject: [PATCH] opentofu: move the plugin patch from `plugins` to `withPlugins` makes it easier to transparently swap out terraform/opentofu. --- pkgs/by-name/op/opentofu/package.nix | 29 ++++++++++++---------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/pkgs/by-name/op/opentofu/package.nix b/pkgs/by-name/op/opentofu/package.nix index 592e41687554..9d43d0272efc 100644 --- a/pkgs/by-name/op/opentofu/package.nix +++ b/pkgs/by-name/op/opentofu/package.nix @@ -99,10 +99,17 @@ let in test; - plugins = - lib.mapAttrs - ( - _: provider: + plugins = removeAttrs terraform-providers [ + "override" + "overrideDerivation" + "recurseForDerivations" + ]; + + withPlugins = + plugins: + let + actualPlugins = lib.lists.map ( + provider: if provider ? override then # use opentofu plugin registry over terraform's provider.override (oldArgs: { @@ -116,19 +123,7 @@ let }) else provider - ) - ( - removeAttrs terraform-providers [ - "override" - "overrideDerivation" - "recurseForDerivations" - ] - ); - - withPlugins = - plugins: - let - actualPlugins = plugins package.plugins; + ) (plugins package.plugins); # Wrap PATH of plugins propagatedBuildInputs, plugins may have runtime dependencies on external binaries wrapperInputs = lib.unique (