at master 1.5 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 pybind11, 6 setuptools, 7 pytestCheckHook, 8 tzdata, 9 python, 10 pkgs, 11}: 12 13buildPythonPackage rec { 14 pname = "pyorc"; 15 version = "0.10.0"; 16 pyproject = true; 17 18 src = fetchFromGitHub { 19 owner = "noirello"; 20 repo = "pyorc"; 21 tag = "v${version}"; 22 hash = "sha256-2w3Qh6g+Yg+D10kTow9YR6B6FhQ+z2DvgDy5GtYxH4g="; 23 }; 24 25 build-system = [ 26 pybind11 27 setuptools 28 ]; 29 30 env = { 31 PYORC_SKIP_ORC_BUILD = "true"; 32 }; 33 34 buildInputs = [ 35 pkgs.lz4 36 pkgs.protobuf_31 37 pkgs.snappy 38 pkgs.zlib 39 pkgs.zstd 40 pkgs.apache-orc 41 ]; 42 43 preCheck = '' 44 # provide timezone data, works only on linux 45 export TZDIR=${tzdata}/${python.sitePackages}/tzdata/zoneinfo 46 47 substituteInPlace "tests/compare/test_writer_cmp.py" \ 48 --replace-fail "deps/bin/orc-contents" "orc-contents" 49 50 substituteInPlace "tests/compare/test_reader_cmp.py" \ 51 --replace-fail "deps/bin/orc-metadata" "orc-metadata" 52 53 mkdir -p deps 54 ln -s "${pkgs.apache-orc.src}/examples" "deps/" 55 ''; 56 57 pythonImportsCheck = [ 58 "pyorc" 59 ]; 60 61 nativeCheckInputs = [ 62 pytestCheckHook 63 pkgs.apache-orc 64 ]; 65 66 meta = { 67 changelog = "https://github.com/noirello/pyorc/blob/${version}/CHANGELOG.rst"; 68 description = "Python module for Apache ORC file format"; 69 homepage = "https://github.com/noirello/pyorc"; 70 license = lib.licenses.asl20; 71 maintainers = with lib.maintainers; [ ]; 72 }; 73}