nixpkgs/pkgs/development/python-modules/liquidctl/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

86 lines
1.5 KiB
Nix

{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, installShellFiles
, setuptools
, docopt
, hidapi
, pyusb
, smbus-cffi
, i2c-tools
, pytestCheckHook
, colorlog
, crcmod
, pillow
}:
buildPythonPackage rec {
pname = "liquidctl";
version = "1.12.1";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-0QjgnTxqB50JNjSUAgBrGyhN2XC/TDYiC1tvhw1Bl1M=";
};
nativeBuildInputs = [
installShellFiles
setuptools
];
propagatedBuildInputs = [
docopt
hidapi
pyusb
smbus-cffi
i2c-tools
colorlog
crcmod
pillow
];
propagatedNativeBuildInputs = [
smbus-cffi
];
outputs = [
"out"
"man"
];
postInstall = ''
installManPage liquidctl.8
installShellCompletion extra/completions/liquidctl.bash
mkdir -p $out/lib/udev/rules.d
cp extra/linux/71-liquidctl.rules $out/lib/udev/rules.d/.
'';
nativeCheckInputs = [
pytestCheckHook
];
postBuild = ''
# needed for pythonImportsCheck
export XDG_RUNTIME_DIR=$TMPDIR
'';
pythonImportsCheck = [
"liquidctl"
];
meta = with lib; {
description = "Cross-platform CLI and Python drivers for AIO liquid coolers and other devices";
homepage = "https://github.com/liquidctl/liquidctl";
changelog = "https://github.com/liquidctl/liquidctl/blob/v${version}/CHANGELOG.md";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ arturcygan evils ];
};
}