mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-20 04:19:00 +02:00
pipx: add shell completions
Install shell completions with `pipx` for `bash`, `zsh` and `fish`. Apart from convenience, this reduces confusion. `pipx completions` is not quite accurate when `pipx` is installed with Nix, since you need to do `nix shell nixpkgs#python311Packages.argcomplete register-python-argcomplete`. It is possible to also put it in the path, as suggested in https://discourse.nixos.org/t/python-how-to-expose-a-dependencys-bin/283, but that would be a separate PR. Fixes https://github.com/NixOS/nixpkgs/issues/299845 Cc: [@natsukium](https://github.com/natsukium), [@mweinelt](https://github.com/mweinelt), [@yshym](https://github.com/yshym) (same people I Cc-ed in the issue)
This commit is contained in:
parent
c6d803b6cd
commit
56be20aa49
|
@ -4,6 +4,7 @@
|
|||
, fetchFromGitHub
|
||||
, hatchling
|
||||
, hatch-vcs
|
||||
, installShellFiles
|
||||
, packaging
|
||||
, platformdirs
|
||||
, pytestCheckHook
|
||||
|
@ -41,6 +42,10 @@ buildPythonPackage rec {
|
|||
tomli
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
git
|
||||
|
@ -79,6 +84,13 @@ buildPythonPackage rec {
|
|||
"test_skip_maintenance"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --cmd pipx \
|
||||
--bash <(${argcomplete}/bin/register-python-argcomplete pipx --shell bash) \
|
||||
--zsh <(${argcomplete}/bin/register-python-argcomplete pipx --shell zsh) \
|
||||
--fish <(${argcomplete}/bin/register-python-argcomplete pipx --shell fish)
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Install and run Python applications in isolated environments";
|
||||
mainProgram = "pipx";
|
||||
|
|
Loading…
Reference in a new issue