diff --git a/pkgs/applications/virtualization/docker/cli-system-plugin-dir-from-env-25.patch b/pkgs/applications/virtualization/docker/cli-system-plugin-dir-from-env-25.patch new file mode 100644 index 000000000000..616b501d2ff8 --- /dev/null +++ b/pkgs/applications/virtualization/docker/cli-system-plugin-dir-from-env-25.patch @@ -0,0 +1,22 @@ +diff --git a/cli-plugins/manager/manager_unix.go b/cli-plugins/manager/manager_unix.go +index 000c058df0..246c427cba 100644 +--- a/cli-plugins/manager/manager_unix.go ++++ b/cli-plugins/manager/manager_unix.go +@@ -2,7 +2,13 @@ + + package manager + +-var defaultSystemPluginDirs = []string{ +- "/usr/local/lib/docker/cli-plugins", "/usr/local/libexec/docker/cli-plugins", +- "/usr/lib/docker/cli-plugins", "/usr/libexec/docker/cli-plugins", ++import ( ++ "os" ++ "path/filepath" ++) ++ ++var defaultSystemPluginDirs []string ++ ++func init() { ++ defaultSystemPluginDirs = filepath.SplitList(os.Getenv("DOCKER_CLI_PLUGIN_DIRS")) + } + \ No newline at end of file diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index 571b3116d8c0..91dda130ccce 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -277,7 +277,12 @@ let }; patches = [ - ./cli-system-plugin-dir-from-env.patch + ( + if lib.versionOlder version "26.0.0" then + ./cli-system-plugin-dir-from-env-25.patch + else + ./cli-system-plugin-dir-from-env.patch + ) ]; vendorHash = null;