1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 cmake, 6 numpy, 7 scikit-build, 8 setuptools, 9 setuptools-scm, 10 wheel, 11 packaging, 12 pybind11, 13 pydantic, 14 rich, 15 awkward, 16 pytestCheckHook, 17 scipy, 18 zlib, 19}: 20 21buildPythonPackage rec { 22 pname = "correctionlib"; 23 version = "2.5.0"; 24 pyproject = true; 25 26 src = fetchPypi { 27 inherit pname version; 28 hash = "sha256-H8QCdU6piBdqJEJOGVbsz+6eyMhFVuwTpIHKUoKaf4A="; 29 }; 30 31 nativeBuildInputs = [ 32 cmake 33 scikit-build 34 setuptools 35 setuptools-scm 36 pybind11 37 ]; 38 39 buildInputs = [ zlib ]; 40 41 propagatedBuildInputs = [ 42 numpy 43 packaging 44 pydantic 45 rich 46 ]; 47 48 dontUseCmakeConfigure = true; 49 50 nativeCheckInputs = [ 51 awkward 52 pytestCheckHook 53 scipy 54 ]; 55 56 pythonImportsCheck = [ "correctionlib" ]; 57 58 meta = with lib; { 59 description = "Provides a well-structured JSON data format for a wide variety of ad-hoc correction factors encountered in a typical HEP analysis"; 60 mainProgram = "correction"; 61 homepage = "https://cms-nanoaod.github.io/correctionlib/"; 62 license = with licenses; [ bsd3 ]; 63 maintainers = with maintainers; [ veprbl ]; 64 }; 65}