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] 4d88339928/bash_completion (L114)
[2] 4d88339928/bash_completion (L2103)
[3] 80b6513fbf/nixos/modules/programs/bash/bash.nix (L22)
This commit is contained in:
Urban Skudnik 2018-08-19 16:00:38 +02:00
parent 1a08bcf198
commit af5511659c

View File

@ -22,7 +22,7 @@ buildPythonApplication rec {
postInstall = '' postInstall = ''
mv "$out/bin/b2" "$out/bin/backblaze-b2" 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 sed 's/^\(complete -F _b2\) b2/\1 backblaze-b2/' -i contrib/bash_completion/b2
mkdir -p "$out/etc/bash_completion.d" mkdir -p "$out/etc/bash_completion.d"