From 0e82f77a336926fb65594e5db07ce60e8817f218 Mon Sep 17 00:00:00 2001 From: Ivan Mincik Date: Sat, 26 Aug 2023 18:58:05 +0200 Subject: [PATCH] qgis-ltr: alphabetical sorting of dependencies --- pkgs/applications/gis/qgis/ltr.nix | 12 +- pkgs/applications/gis/qgis/unwrapped-ltr.nix | 110 ++++++++++--------- 2 files changed, 69 insertions(+), 53 deletions(-) diff --git a/pkgs/applications/gis/qgis/ltr.nix b/pkgs/applications/gis/qgis/ltr.nix index d34e1e69833b..9288f6ee607e 100644 --- a/pkgs/applications/gis/qgis/ltr.nix +++ b/pkgs/applications/gis/qgis/ltr.nix @@ -1,8 +1,11 @@ -{ lib, makeWrapper, symlinkJoin +{ lib +, makeWrapper +, symlinkJoin + , extraPythonPackages ? (ps: [ ]) + , libsForQt5 }: -with lib; let qgis-ltr-unwrapped = libsForQt5.callPackage ./unwrapped-ltr.nix { }; in symlinkJoin rec { @@ -12,7 +15,10 @@ in symlinkJoin rec { paths = [ qgis-ltr-unwrapped ]; - nativeBuildInputs = [ makeWrapper qgis-ltr-unwrapped.py.pkgs.wrapPython ]; + nativeBuildInputs = [ + makeWrapper + qgis-ltr-unwrapped.py.pkgs.wrapPython + ]; # extend to add to the python environment of QGIS without rebuilding QGIS application. pythonInputs = qgis-ltr-unwrapped.pythonBuildInputs ++ (extraPythonPackages qgis-ltr-unwrapped.py.pkgs); diff --git a/pkgs/applications/gis/qgis/unwrapped-ltr.nix b/pkgs/applications/gis/qgis/unwrapped-ltr.nix index 8a67cc3ceadd..ace9c7209930 100644 --- a/pkgs/applications/gis/qgis/unwrapped-ltr.nix +++ b/pkgs/applications/gis/qgis/unwrapped-ltr.nix @@ -1,45 +1,47 @@ { lib -, mkDerivation , fetchFromGitHub -, cmake -, ninja -, flex +, makeWrapper +, mkDerivation +, substituteAll +, wrapGAppsHook + +, withGrass ? true +, withWebKit ? false + , bison -, proj -, geos -, sqlite -, gsl -, qwt +, cmake +, exiv2 , fcgi -, python3 +, flex +, geos +, grass +, gsl +, hdf5 , libspatialindex , libspatialite -, postgresql -, txt2tags -, openssl , libzip -, hdf5 , netcdf -, exiv2 -, protobuf -, qtbase -, qtsensors -, qca-qt5 -, qtkeychain -, qt3d -, qscintilla -, qtlocation -, qtserialport -, qtxmlpatterns -, withGrass ? true -, grass -, withWebKit ? false -, qtwebkit +, ninja +, openssl , pdal +, postgresql +, proj +, protobuf +, python3 +, qca-qt5 +, qscintilla +, qt3d +, qtbase +, qtkeychain +, qtlocation +, qtsensors +, qtserialport +, qtwebkit +, qtxmlpatterns +, qwt +, sqlite +, txt2tags , zstd -, makeWrapper -, wrapGAppsHook -, substituteAll }: let @@ -53,24 +55,24 @@ let }; pythonBuildInputs = with py.pkgs; [ - qscintilla-qt5 + chardet gdal jinja2 numpy - psycopg2 - chardet - python-dateutil - pyyaml - pytz - requests - urllib3 - pygments - pyqt5 - pyqt-builder - sip - setuptools owslib + psycopg2 + pygments + pyqt-builder + pyqt5 + python-dateutil + pytz + pyyaml + qscintilla-qt5 + requests + setuptools + sip six + urllib3 ]; in mkDerivation rec { version = "3.28.10"; @@ -88,6 +90,16 @@ in mkDerivation rec { inherit py; }; + nativeBuildInputs = [ + makeWrapper + wrapGAppsHook + + bison + cmake + flex + ninja + ]; + buildInputs = [ openssl proj @@ -120,8 +132,6 @@ in mkDerivation rec { ++ lib.optional withWebKit qtwebkit ++ pythonBuildInputs; - nativeBuildInputs = [ makeWrapper wrapGAppsHook cmake flex bison ninja ]; - patches = [ (substituteAll { src = ./set-pyqt-package-dirs-ltr.patch; @@ -143,10 +153,10 @@ in mkDerivation rec { dontWrapGApps = true; # wrapper params passed below postFixup = lib.optionalString withGrass '' - # grass has to be availble on the command line even though we baked in + # GRASS has to be availble on the command line even though we baked in # the path at build time using GRASS_PREFIX. - # using wrapGAppsHook also prevents file dialogs from crashing the program - # on non-NixOS + # Using wrapGAppsHook also prevents file dialogs from crashing the program + # on non-NixOS. wrapProgram $out/bin/qgis \ "''${gappsWrapperArgs[@]}" \ --prefix PATH : ${lib.makeBinPath [ grass ]}