nur-packages

My NUR packages
git clone git://git.sikmir.ru/nur-packages
Log | Files | Refs | README | LICENSE

commit c9b58b61f932cd0c78ea8b31bc176aa0c538e60b
parent 490a9c75571d44d5cf0f2e4c69b6385fb0df558a
Author: Nikolay Korotkiy <sikmir@disroot.org>
Date:   Mon,  9 Mar 2026 12:54:51 +0400

Up

Diffstat:
Mflake.lock | 6+++---
Mpkgs/by-name/co/cogeo-mosaic/package.nix | 5++---
Mpkgs/by-name/lo/localtileserver/package.nix | 5++---
Mpkgs/by-name/su/supermorecado/package.nix | 1+
Mpkgs/by-name/ta/taudem/package.nix | 14++++++--------
Mpkgs/by-name/ti/titiler/package.nix | 140++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----------------------
6 files changed, 113 insertions(+), 58 deletions(-)

diff --git a/flake.lock b/flake.lock @@ -20,11 +20,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1772736753, - "narHash": "sha256-au/m3+EuBLoSzWUCb64a/MZq6QUtOV8oC0D9tY2scPQ=", + "lastModified": 1772927210, + "narHash": "sha256-FdRDRoV0jRTiPK5ID22BaUX5P0wdsclpxtIOjaEy9Lo=", "owner": "nixos", "repo": "nixpkgs", - "rev": "917fec990948658ef1ccd07cef2a1ef060786846", + "rev": "0e6cdd5be64608ef630c2e41f8d51d484468492f", "type": "github" }, "original": { diff --git a/pkgs/by-name/co/cogeo-mosaic/package.nix b/pkgs/by-name/co/cogeo-mosaic/package.nix @@ -7,14 +7,14 @@ python3Packages.buildPythonPackage (finalAttrs: { pname = "cogeo-mosaic"; - version = "8.2.0"; + version = "9.1.0"; pyproject = true; src = fetchFromGitHub { owner = "developmentseed"; repo = "cogeo-mosaic"; tag = finalAttrs.version; - hash = "sha256-g5ZRdqs/nY1i2xB8UsJjKwdb0BhlR1Bfj4FSPBRJrss="; + hash = "sha256-84fFwWWhq2DK4lX0E26hCPsGm+/fG52pZhUtIEouGjQ="; }; build-system = with python3Packages; [ @@ -48,6 +48,5 @@ python3Packages.buildPythonPackage (finalAttrs: { homepage = "https://developmentseed.org/cogeo-mosaic/"; license = lib.licenses.mit; maintainers = [ lib.maintainers.sikmir ]; - inherit (python3Packages.rio-tiler.meta) broken; }; }) diff --git a/pkgs/by-name/lo/localtileserver/package.nix b/pkgs/by-name/lo/localtileserver/package.nix @@ -8,14 +8,14 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "localtileserver"; - version = "0.10.6"; + version = "0.11.0"; pyproject = true; src = fetchFromGitHub { owner = "banesullivan"; repo = "localtileserver"; tag = "v${finalAttrs.version}"; - hash = "sha256-09POlT+3gWGoP/tKRur9OaFsfQvC4OwSHE+ssqSQi1Q="; + hash = "sha256-vB5w5FdKcwljNrE7HgIy1QfbvEBbbesVkWz+vbUmDHc="; }; build-system = with python3Packages; [ setuptools ]; @@ -59,6 +59,5 @@ python3Packages.buildPythonApplication (finalAttrs: { homepage = "https://localtileserver.banesullivan.com/"; license = lib.licenses.mit; maintainers = [ lib.maintainers.sikmir ]; - inherit (python3Packages.rio-tiler.meta) broken; }; }) diff --git a/pkgs/by-name/su/supermorecado/package.nix b/pkgs/by-name/su/supermorecado/package.nix @@ -29,6 +29,7 @@ python3Packages.buildPythonApplication (finalAttrs: { "test_burn_tile_center_point_roundtrip" "test_burn_tile_center_lines_roundtrip" "test_burn_cli_tile_shape" + "test_burn_cli" ]; meta = { diff --git a/pkgs/by-name/ta/taudem/package.nix b/pkgs/by-name/ta/taudem/package.nix @@ -9,17 +9,15 @@ stdenv.mkDerivation (finalAttrs: { pname = "taudem"; - version = "5.3.8"; + version = "5.4.0"; src = fetchFromGitHub { owner = "dtarb"; repo = "TauDEM"; tag = "v${finalAttrs.version}"; - hash = "sha256-lomjPyNzm9K4jCs7fYwDYrG48qbeRedakWFwJj7pDEI="; + hash = "sha256-9gQUXmaA463Fra7u6Kyn2dplOXRCdvYp04gKNoG7Q4Y="; }; - sourceRoot = "${finalAttrs.src.name}/src"; - nativeBuildInputs = [ cmake ]; buildInputs = [ @@ -27,11 +25,11 @@ stdenv.mkDerivation (finalAttrs: { mpich ]; - cmakeFlags = [ - (lib.cmakeFeature "CMAKE_POLICY_VERSION_MINIMUM" "3.10") - ]; + env.NIX_CFLAGS_COMPILE = "-Wno-parentheses"; - env.NIX_CFLAGS_COMPILE = "-Wno-narrowing"; + postInstall = '' + mv $out/{taudem,bin} + ''; meta = { description = "Terrain Analysis Using Digital Elevation Models"; diff --git a/pkgs/by-name/ti/titiler/package.nix b/pkgs/by-name/ti/titiler/package.nix @@ -1,22 +1,24 @@ { lib, fetchFromGitHub, + makeWrapper, + writeShellScript, python3Packages, - rio-stac, + cogeo-mosaic, geojson-pydantic, rio-cogeo, + rio-stac, starlette-cramjam, - cogeo-mosaic, }: let pname = "titiler"; - version = "0.22.4"; + version = "1.2.0"; src = fetchFromGitHub { owner = "developmentseed"; repo = "titiler"; tag = version; - hash = "sha256-VZAKh3y+Uaiha7oI3nWG2gIOXvWm1T1/RHj/kaAx89I="; + hash = "sha256-SisZc/m3id+E6lGwPsTSezfw2atMop3APYZVXK3LPPI="; }; meta = { @@ -24,67 +26,101 @@ let homepage = "https://developmentseed.org/titiler/"; license = lib.licenses.mit; maintainers = [ lib.maintainers.sikmir ]; - inherit (python3Packages.rio-tiler.meta) broken; }; - titiler-core = python3Packages.buildPythonPackage { + titiler-core = python3Packages.buildPythonPackage (finalAttrs: { inherit version src meta; pname = "${pname}.core"; sourceRoot = "${src.name}/src/titiler/core"; pyproject = true; - postPatch = '' - substituteInPlace pyproject.toml --replace "fastapi-slim>=0.111.0" "fastapi" - ''; + build-system = with python3Packages; [ hatchling ]; - nativeBuildInputs = with python3Packages; [ pdm-pep517 ]; dependencies = with python3Packages; [ fastapi + geojson-pydantic jinja2 + numpy + pydantic + rasterio rio-tiler - geojson-pydantic + morecantile simplejson + typing-extensions ]; - doCheck = false; - nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; - }; - titiler-extensions = python3Packages.buildPythonPackage { + optional-dependencies = { + telemetry = with python3Packages; [ + opentelemetry-api + opentelemetry-sdk + opentelemetry-instrumentation-fastapi + opentelemetry-instrumentation-logging + opentelemetry-exporter-otlp + ]; + }; + + nativeCheckInputs = [ + python3Packages.pytestCheckHook + ] + ++ lib.flatten (builtins.attrValues finalAttrs.passthru.optional-dependencies); + }); + + titiler-extensions = python3Packages.buildPythonPackage (finalAttrs: { inherit version src meta; pname = "${pname}.extensions"; sourceRoot = "${src.name}/src/titiler/extensions"; pyproject = true; - nativeBuildInputs = with python3Packages; [ pdm-pep517 ]; - dependencies = with python3Packages; [ - rio-cogeo - rio-stac - titiler-core - ]; - doCheck = false; - nativeCheckInputs = with python3Packages; [ - pytestCheckHook - jsonschema + build-system = with python3Packages; [ hatchling ]; + + dependencies = [ titiler-core ]; + + optional-dependencies = { + cogeo = [ rio-cogeo ]; + stac = [ python3Packages.rio-stac ]; + }; + + nativeCheckInputs = + with python3Packages; + [ + jsonschema + owslib + pytestCheckHook + ] + ++ lib.flatten (builtins.attrValues finalAttrs.passthru.optional-dependencies); + + disabledTests = [ + "test_stacExtension" # requires network ]; - disabledTests = [ "test_stacExtension" ]; - }; + }); - titiler-mosaic = python3Packages.buildPythonPackage { + titiler-mosaic = python3Packages.buildPythonPackage (finalAttrs: { inherit version src meta; pname = "${pname}.mosaic"; sourceRoot = "${src.name}/src/titiler/mosaic"; pyproject = true; - nativeBuildInputs = with python3Packages; [ pdm-pep517 ]; - dependencies = with python3Packages; [ + build-system = with python3Packages; [ hatchling ]; + + dependencies = [ cogeo-mosaic titiler-core ]; - doCheck = false; - nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; - }; + + optional-dependencies = { + mosaicjson = [ cogeo-mosaic ]; + }; + + nativeCheckInputs = + with python3Packages; + [ + owslib + pytestCheckHook + ] + ++ lib.flatten (builtins.attrValues finalAttrs.passthru.optional-dependencies); + }); in -python3Packages.buildPythonPackage { +python3Packages.buildPythonPackage (finalAttrs: { inherit pname version @@ -94,18 +130,40 @@ python3Packages.buildPythonPackage { sourceRoot = "${src.name}/src/titiler/application"; pyproject = true; - nativeBuildInputs = with python3Packages; [ pdm-pep517 ]; + build-system = with python3Packages; [ hatchling ]; + + nativeBuildInputs = [ makeWrapper ]; + dependencies = with python3Packages; [ - python-dotenv - rio-cogeo + pydantic-settings starlette-cramjam titiler-core + titiler-core.optional-dependencies.telemetry titiler-extensions + titiler-extensions.optional-dependencies.cogeo + titiler-extensions.optional-dependencies.stac titiler-mosaic + titiler-mosaic.optional-dependencies.mosaicjson ]; - doCheck = false; - nativeCheckInputs = with python3Packages; [ pytestCheckHook ]; + nativeCheckInputs = with python3Packages; [ + boto3 + pytestCheckHook + ]; - disabledTests = [ "test_mosaic_auth_error" ]; -} + disabledTests = [ + "test_mosaic_auth_error" # requires network + ]; + + postInstall = + let + start_script = writeShellScript "titiler-serve" '' + ${lib.getExe python3Packages.uvicorn} "$@" titiler.application.main:app; + ''; + in + '' + makeWrapper ${start_script} $out/bin/titiler-serve \ + --prefix PYTHONPATH : "$out/${python3Packages.python.sitePackages}" \ + --prefix PYTHONPATH : "${python3Packages.makePythonPath finalAttrs.passthru.dependencies}"; + ''; +})