1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 importlib-metadata, 7 numpy, 8 rpyc4, 9 scipy, 10 appdirs, 11 callPackage, 12}: 13 14buildPythonPackage rec { 15 pname = "linien-common"; 16 version = "1.0.2"; 17 pyproject = true; 18 19 src = fetchFromGitHub { 20 owner = "linien-org"; 21 repo = "linien"; 22 rev = "refs/tags/v${version}"; 23 hash = "sha256-V6oo0a4cNlvn4pIwzchvCTOu7qtUGS+Pc0qpbEsvGZo="; 24 }; 25 26 sourceRoot = "${src.name}/linien-common"; 27 28 preBuild = '' 29 export HOME=$(mktemp -d) 30 ''; 31 32 nativeBuildInputs = [ setuptools ]; 33 34 propagatedBuildInputs = [ 35 importlib-metadata 36 numpy 37 rpyc4 38 scipy 39 appdirs 40 ]; 41 42 pythonImportsCheck = [ "linien_common" ]; 43 44 passthru.tests = { 45 pytest = callPackage ./tests.nix { }; 46 }; 47 48 meta = with lib; { 49 description = "Shared components of the Linien spectroscopy lock application"; 50 homepage = "https://github.com/linien-org/linien/tree/develop/linien-common"; 51 license = licenses.gpl3Plus; 52 maintainers = with maintainers; [ 53 fsagbuya 54 doronbehar 55 ]; 56 }; 57}