backblaze-b2: Fix backblaze bash autocomplete issue

Backblaze's CLI tool is relying on `have` function which is
deprecated[1] and gets dereferenced[2] at the end of `bash-completion`.

This causes issues for NixOS because those bash completions are
run after bash-completion[3] has already run and unset the
`have` function.

[1] https://github.com/scop/bash-completion/blob/4d88339928aa064a567d5feb40694dfd24a274c5/bash_completion#L114
[2] https://github.com/scop/bash-completion/blob/4d88339928aa064a567d5feb40694dfd24a274c5/bash_completion#L2103
[3] https://github.com/NixOS/nixpkgs/blob/80b6513fbf5789ff0208c19a89bae49df2b503ad/nixos/modules/programs/bash/bash.nix#L22
This commit is contained in:
Urban Skudnik
2018-08-19 22:13:42 +02:00
parent 1a08bcf198
commit af5511659c
@@ -22,7 +22,7 @@ buildPythonApplication rec {
postInstall = ''
mv "$out/bin/b2" "$out/bin/backblaze-b2"
sed 's/^have b2 \&\&$/have backblaze-b2 \&\&/' -i contrib/bash_completion/b2
sed 's/^have b2 \&\&$/_have backblaze-b2 \&\&/' -i contrib/bash_completion/b2
sed 's/^\(complete -F _b2\) b2/\1 backblaze-b2/' -i contrib/bash_completion/b2
mkdir -p "$out/etc/bash_completion.d"