diff --git a/pkgs/development/python-modules/laspy/default.nix b/pkgs/development/python-modules/laspy/default.nix new file mode 100644 index 000000000000..2907e61b9d8c --- /dev/null +++ b/pkgs/development/python-modules/laspy/default.nix @@ -0,0 +1,35 @@ +{ lib +, buildPythonPackage +, fetchPypi +, numpy +, laszip +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "laspy"; + version = "2.3.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-Wdbp6kjuZkJh+pp9OVczdsRNgn41/Tdt7nGFvewcQ1w="; + }; + + propagatedBuildInputs = [ + numpy + laszip + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "laspy" "laszip" ]; + + meta = with lib; { + description = "Interface for reading/modifying/creating .LAS LIDAR files"; + homepage = "https://github.com/laspy/laspy"; + license = licenses.bsd2; + maintainers = with maintainers; [ matthewcroughan ]; + }; +} diff --git a/pkgs/development/python-modules/laszip/default.nix b/pkgs/development/python-modules/laszip/default.nix new file mode 100644 index 000000000000..cefd2d5f6e1a --- /dev/null +++ b/pkgs/development/python-modules/laszip/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, scikit-build-core +, distlib +, pytestCheckHook +, pyproject-metadata +, pathspec +, pybind11 +, cmake +, LASzip +}: + +buildPythonPackage rec { + pname = "laszip-python"; + version = "0.2.1"; + + format = "pyproject"; + + src = fetchFromGitHub { + owner = "tmontaigu"; + repo = pname; + rev = version; + sha256 = "sha256-ujKoUm2Btu25T7ZrSGqjRc3NR1qqsQU8OwHQDSx8grY="; + }; + + nativeBuildInputs = [ + scikit-build-core + scikit-build-core.optional-dependencies.pyproject + cmake + ]; + + buildInputs = [ + pybind11 + LASzip + ]; + + checkInputs = [ + pytestCheckHook + ]; + + preBuild = '' + cd .. + ''; + + # There are no tests + doCheck = false; + + pythonImportsCheck = [ "laszip" ]; + + meta = with lib; { + description = "Unofficial bindings between Python and LASzip made using pybind11"; + homepage = "https://github.com/tmontaigu/laszip-python"; + license = licenses.mit; + maintainers = with maintainers; [ matthewcroughan ]; + }; +} + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7ed831a95adf..1085080f0cb6 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5309,6 +5309,10 @@ self: super: with self; { larynx-train = callPackage ../development/python-modules/larynx-train { }; + laspy = callPackage ../development/python-modules/laspy { }; + + laszip = callPackage ../development/python-modules/laszip { }; + latexcodec = callPackage ../development/python-modules/latexcodec { }; latexify-py = callPackage ../development/python-modules/latexify-py { };