From c35e1f6c26b643598a0726fc0b9fcdb00962de36 Mon Sep 17 00:00:00 2001 From: Michal Sojka Date: Fri, 25 Nov 2022 00:29:14 +0100 Subject: [PATCH] nix-zsh-completions: remove broken _nix completion function That completion function works only with nix 2.3 (and older). The newer versions use ANSI escape sequences in the --help output, and this seems to confuse the function. Nix 2.4+ has zsh completion built in so removing it from nix-zsh-completions should not harm most users. --- pkgs/shells/zsh/nix-zsh-completions/default.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/shells/zsh/nix-zsh-completions/default.nix b/pkgs/shells/zsh/nix-zsh-completions/default.nix index dab73419ab5..59e9fa8d8d4 100644 --- a/pkgs/shells/zsh/nix-zsh-completions/default.nix +++ b/pkgs/shells/zsh/nix-zsh-completions/default.nix @@ -11,6 +11,17 @@ stdenv.mkDerivation rec { sha256 = "1n9whlys95k4wc57cnz3n07p7zpkv796qkmn68a50ygkx6h3afqf"; }; + # https://github.com/spwhitt/nix-zsh-completions/issues/42 + # + # _nix completion is broken. Remove it; _nix provided by the nix + # package will be used instead. It is not sufficient to set low + # meta.priority below if nix is installed in the system profile and + # nix-zsh-completions in an user profile. In that case, the broken + # version takes precedence over the good one. + postPatch = '' + rm _nix + ''; + strictDeps = true; installPhase = '' mkdir -p $out/share/zsh/{site-functions,plugins/nix}