default.nix (2132B)
1 { lib, fetchFromGitHub, python3Packages 2 , rio-stac, rio-tiler, geojson-pydantic, rio-cogeo, starlette-cramjam, cogeo-mosaic }: 3 let 4 pname = "titiler"; 5 version = "0.11.0"; 6 7 src = fetchFromGitHub { 8 owner = "developmentseed"; 9 repo = "titiler"; 10 rev = version; 11 hash = "sha256-AdG2fZTvmgnTccLtHj4C3SzdqJ10icr3q3SNmRCtq0E="; 12 }; 13 14 meta = with lib; { 15 description = "A modern dynamic tile server built on top of FastAPI and Rasterio/GDAL"; 16 homepage = "https://developmentseed.org/titiler/"; 17 license = licenses.mit; 18 maintainers = [ maintainers.sikmir ]; 19 }; 20 21 titiler-core = python3Packages.buildPythonPackage { 22 inherit version src meta; 23 pname = "${pname}.core"; 24 sourceRoot = "${src.name}/src/titiler/core"; 25 26 propagatedBuildInputs = with python3Packages; [ 27 fastapi 28 rio-tiler 29 geojson-pydantic 30 simplejson 31 ]; 32 nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; 33 }; 34 35 titiler-extensions = python3Packages.buildPythonPackage { 36 inherit version src meta; 37 pname = "${pname}.extensions"; 38 sourceRoot = "${src.name}/src/titiler/extensions"; 39 40 propagatedBuildInputs = with python3Packages; [ 41 rio-cogeo 42 rio-stac 43 titiler-core 44 ]; 45 nativeCheckInputs = with python3Packages; [ pytestCheckHook jsonschema ]; 46 disabledTests = [ "test_stacExtension" ]; 47 }; 48 49 titiler-mosaic = python3Packages.buildPythonPackage { 50 inherit version src meta; 51 pname = "${pname}.mosaic"; 52 sourceRoot = "${src.name}/src/titiler/mosaic"; 53 54 propagatedBuildInputs = with python3Packages; [ 55 cogeo-mosaic 56 titiler-core 57 ]; 58 nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; 59 }; 60 in 61 python3Packages.buildPythonPackage { 62 inherit pname version src meta; 63 sourceRoot = "${src.name}/src/titiler/application"; 64 65 propagatedBuildInputs = with python3Packages; [ 66 python-dotenv 67 rio-cogeo 68 starlette-cramjam 69 titiler-core 70 titiler-extensions 71 titiler-mosaic 72 ]; 73 74 nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; 75 76 disabledTests = [ 77 "test_mosaic_auth_error" 78 ]; 79 }