Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
131 changes: 131 additions & 0 deletions pkgs/applications/gis/qgis/pdal-2_5.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
{ lib
, stdenv
, callPackage
, fetchFromGitHub
, testers

, enableE57 ? lib.meta.availableOn stdenv.hostPlatform libe57format

, cmake
, curl
, gdal
, hdf5-cpp
, LASzip
, libe57format
, libgeotiff
, libtiff
, libxml2
, openscenegraph
, pkg-config
, postgresql
, tiledb
, xercesc
, zlib
, zstd
}:

stdenv.mkDerivation (finalAttrs: {
pname = "pdal";
version = "2.5.6";

src = fetchFromGitHub {
owner = "PDAL";
repo = "PDAL";
rev = finalAttrs.version;
sha256 = "sha256-JKwa89c05EfZ/FxOkj8lYmw0o2EgSqafRDIV2mTpZ5E=";
};

nativeBuildInputs = [
cmake
pkg-config
];

buildInputs = [
curl
gdal
hdf5-cpp
LASzip
libgeotiff
libtiff
libxml2
openscenegraph
postgresql
tiledb
xercesc
zlib
zstd
] ++ lib.optionals enableE57 [
libe57format
];

cmakeFlags = [
"-DBUILD_PLUGIN_E57=${if enableE57 then "ON" else "OFF"}"
"-DBUILD_PLUGIN_HDF=ON"
"-DBUILD_PLUGIN_PGPOINTCLOUD=ON"
"-DBUILD_PLUGIN_TILEDB=ON"
"-DWITH_TESTS=ON"
"-DBUILD_PGPOINTCLOUD_TESTS=OFF"

# Plugins can probably not be made work easily:
"-DBUILD_PLUGIN_CPD=OFF"
"-DBUILD_PLUGIN_FBX=OFF" # Autodesk FBX SDK is gratis+proprietary; not packaged in nixpkgs
"-DBUILD_PLUGIN_GEOWAVE=OFF"
"-DBUILD_PLUGIN_I3S=OFF"
"-DBUILD_PLUGIN_ICEBRIDGE=OFF"
"-DBUILD_PLUGIN_MATLAB=OFF"
"-DBUILD_PLUGIN_MBIO=OFF"
"-DBUILD_PLUGIN_MRSID=OFF"
"-DBUILD_PLUGIN_NITF=OFF"
"-DBUILD_PLUGIN_OCI=OFF"
"-DBUILD_PLUGIN_RDBLIB=OFF" # Riegl rdblib is proprietary; not packaged in nixpkgs
"-DBUILD_PLUGIN_RIVLIB=OFF"
];

doCheck = true;

disabledTests = [
# Tests failing due to TileDB library implementation, disabled also
# by upstream CI.
# See: https://github.com/PDAL/PDAL/blob/bc46bc77f595add4a6d568a1ff923d7fe20f7e74/.github/workflows/linux.yml#L81
"pdal_io_tiledb_writer_test"
"pdal_io_tiledb_reader_test"
"pdal_io_tiledb_time_writer_test"
"pdal_io_tiledb_time_reader_test"
"pdal_io_tiledb_bit_fields_test"
"pdal_io_e57_read_test"
"pdal_io_e57_write_test"
"pdal_io_stac_reader_test"

# Segfault
"pdal_io_hdf_reader_test"

# Failure
"pdal_app_plugin_test"
];

checkPhase = ''
runHook preCheck
# tests are flaky and they seem to fail less often when they don't run in
# parallel
ctest -j 1 --output-on-failure -E '^${lib.concatStringsSep "|" finalAttrs.disabledTests}$'
runHook postCheck
'';

passthru.tests = {
version = testers.testVersion {
package = finalAttrs.finalPackage;
command = "pdal --version";
version = "pdal ${finalAttrs.finalPackage.version}";
};
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
};

meta = with lib; {
description = "PDAL is Point Data Abstraction Library. GDAL for point cloud data";
homepage = "https://pdal.io";
license = licenses.bsd3;
maintainers = teams.geospatial.members;
platforms = platforms.all;
pkgConfigModules = [ "pdal" ];
};
})
7 changes: 6 additions & 1 deletion pkgs/applications/gis/qgis/unwrapped-ltr.nix
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{ lib
, callPackage
, fetchFromGitHub
, fetchpatch
, makeWrapper
Expand All @@ -24,7 +25,7 @@
, netcdf
, ninja
, openssl
, pdal
# , pdal
, postgresql
, proj
, protobuf
Expand All @@ -47,6 +48,10 @@

let

# replace with global pdal version once
# https://github.com/qgis/QGIS/pull/54940 is backported
pdal = callPackage ./pdal-2_5.nix { };

py = python3.override {
packageOverrides = self: super: {
pyqt5 = super.pyqt5.override {
Expand Down
18 changes: 16 additions & 2 deletions pkgs/development/libraries/pdal/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
, stdenv
, callPackage
, fetchFromGitHub
, fetchpatch
, testers

, enableE57 ? lib.meta.availableOn stdenv.hostPlatform libe57format
Expand All @@ -18,6 +19,7 @@
, openscenegraph
, pkg-config
, postgresql
, proj
, tiledb
, xercesc
, zlib
Expand All @@ -26,15 +28,24 @@

stdenv.mkDerivation (finalAttrs: {
pname = "pdal";
version = "2.5.6";
version = "2.6.2";

src = fetchFromGitHub {
owner = "PDAL";
repo = "PDAL";
rev = finalAttrs.version;
sha256 = "sha256-JKwa89c05EfZ/FxOkj8lYmw0o2EgSqafRDIV2mTpZ5E=";
sha256 = "sha256-bYTSmrel8MLza+OxO+aOSsnkahjjqRRqUiVwAk23Gxk=";
};

patches = [
# Fix running tests
# https://github.com/PDAL/PDAL/issues/4280
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/PDAL/PDAL/pull/4291.patch";
sha256 = "sha256-jFS+trwMRBfm+MpT0CcuD/hdYmfyuQj2zyoe06B6G9U=";
})
];

nativeBuildInputs = [
cmake
pkg-config
Expand All @@ -50,6 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
libxml2
openscenegraph
postgresql
proj
tiledb
xercesc
zlib
Expand All @@ -63,6 +75,7 @@ stdenv.mkDerivation (finalAttrs: {
"-DBUILD_PLUGIN_HDF=ON"
"-DBUILD_PLUGIN_PGPOINTCLOUD=ON"
"-DBUILD_PLUGIN_TILEDB=ON"
"-DWITH_COMPLETION=ON"
"-DWITH_TESTS=ON"
"-DBUILD_PGPOINTCLOUD_TESTS=OFF"

Expand Down Expand Up @@ -92,6 +105,7 @@ stdenv.mkDerivation (finalAttrs: {
"pdal_io_tiledb_time_writer_test"
"pdal_io_tiledb_time_reader_test"
"pdal_io_tiledb_bit_fields_test"
"pdal_io_tiledb_utils_test"
"pdal_io_e57_read_test"
"pdal_io_e57_write_test"
"pdal_io_stac_reader_test"
Expand Down