nixpkgs/pkgs/development/python-modules/pygltflib/default.nix
2024-05-22 17:32:03 +02:00

58 lines
1.3 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitLab,
fetchFromGitHub,
pythonOlder,
setuptools,
dataclasses-json,
deprecated,
pytestCheckHook,
}:
let
gltf-sample-models = fetchFromGitHub {
owner = "KhronosGroup";
repo = "glTF-Sample-Models";
rev = "d7a3cc8e51d7c573771ae77a57f16b0662a905c6";
hash = "sha256-TxSg1O6eIiaKagcZUoWZ5Iw/tBKvQIoepRFp3MdVlyI=";
};
in
buildPythonPackage rec {
pname = "pygltflib";
version = "1.16.2";
pyproject = true;
disabled = pythonOlder "3.6";
src = fetchFromGitLab {
owner = "dodgyville";
repo = "pygltflib";
rev = "refs/tags/v${version}";
hash = "sha256-rUAg05M5biVsdG2yEH0Olng/0jH1R/Jo5/+j4ToKkTI=";
};
nativeBuildInputs = [ setuptools ];
propagatedBuildInputs = [
dataclasses-json
deprecated
];
nativeCheckInputs = [ pytestCheckHook ];
preCheck = ''
ln -s ${gltf-sample-models} glTF-Sample-Models
'';
pythonImportsCheck = [ "pygltflib" ];
meta = with lib; {
description = "Module for reading and writing basic glTF files";
homepage = "https://gitlab.com/dodgyville/pygltflib";
changelog = "https://gitlab.com/dodgyville/pygltflib/-/blob/v${version}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ bcdarwin ];
};
}