nixpkgs/pkgs/development/python-modules/osc/default.nix
Sascha Grunert 5f599df38e
osc: 1.3.1 -> 1.6.1
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2024-04-10 13:00:09 +02:00

53 lines
1.4 KiB
Nix

{ stdenv
, bashInteractive
, buildPythonPackage
, cryptography
, diffstat
, fetchFromGitHub
, lib
, rpm
, urllib3
, keyring
}:
buildPythonPackage rec {
pname = "osc";
version = "1.6.1";
format = "setuptools";
src = fetchFromGitHub {
owner = "openSUSE";
repo = "osc";
rev = version;
hash = "sha256-U76nAE7NdLIdrKzRC0sP8hy6G6A8Tr4Qe2PGZI2xvyk=";
};
buildInputs = [ bashInteractive ]; # needed for bash-completion helper
nativeCheckInputs = [ rpm diffstat ];
propagatedBuildInputs = [ urllib3 cryptography keyring ];
postInstall = ''
install -D -m444 contrib/osc.fish $out/etc/fish/completions/osc.fish
install -D -m555 contrib/osc.complete $out/share/bash-completion/helpers/osc-helper
mkdir -p $out/share/bash-completion/completions
cat >>$out/share/bash-completion/completions/osc <<EOF
test -z "\$BASH_VERSION" && return
complete -o default _nullcommand >/dev/null 2>&1 || return
complete -r _nullcommand >/dev/null 2>&1 || return
complete -o default -C $out/share/bash-completion/helpers/osc-helper osc
EOF
'';
preCheck = "HOME=$TOP/tmp";
meta = with lib; {
broken = stdenv.isDarwin;
homepage = "https://github.com/openSUSE/osc";
description = "opensuse-commander with svn like handling";
mainProgram = "osc";
maintainers = with maintainers; [ peti saschagrunert ];
license = licenses.gpl2;
};
}