2024-01-02 14:02:45 +00:00
|
|
|
{
|
|
|
|
lib,
|
|
|
|
buildPythonPackage,
|
|
|
|
fetchFromSourcehut,
|
2024-05-22 14:01:06 +00:00
|
|
|
|
2024-01-02 14:02:45 +00:00
|
|
|
# build-system
|
|
|
|
setuptools,
|
2024-05-22 14:01:06 +00:00
|
|
|
|
2024-01-02 14:02:45 +00:00
|
|
|
# dependencies
|
|
|
|
pyusb,
|
|
|
|
tqdm,
|
|
|
|
zeroconf,
|
2024-05-22 14:01:06 +00:00
|
|
|
|
2024-01-02 14:02:45 +00:00
|
|
|
# tests
|
|
|
|
pillow,
|
|
|
|
pytestCheckHook,
|
|
|
|
}:
|
|
|
|
|
|
|
|
buildPythonPackage rec {
|
|
|
|
pname = "pyatem";
|
2024-06-20 15:08:11 +00:00
|
|
|
version = "0.11.0"; # check latest version in setup.py
|
2024-01-02 14:02:45 +00:00
|
|
|
pyproject = true;
|
|
|
|
|
|
|
|
src = fetchFromSourcehut {
|
|
|
|
owner = "~martijnbraam";
|
|
|
|
repo = "pyatem";
|
|
|
|
rev = version;
|
2024-06-20 15:08:11 +00:00
|
|
|
hash = "sha256-VBuOnUVB6n8ahVtunubgao9jHPu9ncX0dhDT0PdSFhU=";
|
2024-01-02 14:02:45 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
nativeBuildInputs = [ setuptools ];
|
|
|
|
|
|
|
|
propagatedBuildInputs = [
|
|
|
|
pyusb
|
|
|
|
tqdm
|
|
|
|
zeroconf
|
|
|
|
];
|
|
|
|
|
|
|
|
nativeCheckInputs = [
|
|
|
|
pillow
|
|
|
|
pytestCheckHook
|
|
|
|
];
|
|
|
|
|
|
|
|
preCheck = ''
|
|
|
|
TESTDIR=$(mktemp -d)
|
|
|
|
cp -r pyatem/{test_*.py,fixtures} $TESTDIR/
|
|
|
|
pushd $TESTDIR
|
|
|
|
'';
|
|
|
|
|
|
|
|
postCheck = ''
|
|
|
|
popd
|
|
|
|
'';
|
|
|
|
|
|
|
|
pythonImportsCheck = [ "pyatem" ];
|
|
|
|
|
|
|
|
meta = with lib; {
|
|
|
|
description = "Library for controlling Blackmagic Design ATEM video mixers";
|
|
|
|
homepage = "https://git.sr.ht/~martijnbraam/pyatem";
|
|
|
|
license = licenses.lgpl3Only;
|
|
|
|
maintainers = with maintainers; [ hexa ];
|
|
|
|
};
|
|
|
|
}
|