nixpkgs/pkgs/development/python-modules/cmd2/default.nix
Guillaume Girol 33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00

78 lines
1.5 KiB
Nix

{ lib
, stdenv
, attrs
, buildPythonPackage
, colorama
, fetchPypi
, glibcLocales
, importlib-metadata
, pyperclip
, pytest-mock
, pytestCheckHook
, pythonOlder
, setuptools-scm
, typing-extensions
, wcwidth
}:
buildPythonPackage rec {
pname = "cmd2";
version = "2.4.2";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-Bz5VXAWFOw9pZfPQMym6vfnjil8s6gKOYaZM1+63StU=";
};
LC_ALL = "en_US.UTF-8";
buildInputs = [
setuptools-scm
];
propagatedBuildInputs = [
attrs
colorama
pyperclip
wcwidth
] ++ lib.optionals (pythonOlder "3.8") [
typing-extensions
importlib-metadata
];
nativeCheckInputs = [
pytestCheckHook
glibcLocales
pytest-mock
];
disabledTests = [
# don't require vim for tests, it causes lots of rebuilds
"test_find_editor_not_specified"
"test_transcript"
];
postPatch = ''
sed -i "/--cov/d" setup.cfg
'' + lib.optionalString stdenv.isDarwin ''
# Fake the impure dependencies pbpaste and pbcopy
mkdir bin
echo '#!${stdenv.shell}' > bin/pbpaste
echo '#!${stdenv.shell}' > bin/pbcopy
chmod +x bin/{pbcopy,pbpaste}
export PATH=$(realpath bin):$PATH
'';
doCheck = !stdenv.isDarwin;
pythonImportsCheck = [ "cmd2" ];
meta = with lib; {
description = "Enhancements for standard library's cmd module";
homepage = "https://github.com/python-cmd2/cmd2";
license = with licenses; [ mit ];
maintainers = with maintainers; [ teto ];
};
}