summary refs log tree commit diff
path: root/gnu/packages/geo.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/geo.scm')
-rw-r--r--gnu/packages/geo.scm180
1 files changed, 69 insertions, 111 deletions
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 83bb4d9cb0..9734ae66fe 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -2377,14 +2377,14 @@ growing set of geoscientific methods.")
 (define-public qgis
   (package
     (name "qgis")
-    (version "3.16.3")
+    (version "3.26.2")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://qgis.org/downloads/qgis-"
                            version ".tar.bz2"))
        (sha256
-        (base32 "012dv8dcg7w4lf6k37i41wialwhi0kpkxw2dnq19yqqk35632mzx"))))
+        (base32 "1hsq3wchsf7db7134fgg9xzzap35q1s4r6649d0krbw80xw5asca"))))
     (build-system cmake-build-system)
     (arguments
      `(#:modules ((guix build cmake-build-system)
@@ -2405,7 +2405,7 @@ growing set of geoscientific methods.")
                (("sip_dir = cfg.default_sip_dir")
                 (string-append "sip_dir = \""
                                (assoc-ref inputs "python-pyqt+qscintilla")
-                               "/share/sip\""))
+                               "/share/sip\"")))
                ;; Fix building with python-sip@5.
                ;;
                ;; The reason for this is that python-sip@5 introduces some
@@ -2416,31 +2416,15 @@ growing set of geoscientific methods.")
                ;; are, messing up the build. The long term solution is to fully
                ;; upgrade SIP, use sip-build and fix all failing packages, but
                ;; for now I just want to get the build working.
-               ((".pyqt_sip_dir...os.path.join.*,")
-                (string-append "'pyqt_sip_dir': \""
+             (substitute* "cmake/FindPyQt5.cmake"
+               (("SET\\(PYQT5_SIP_DIR \"\\$\\{Python_SITEARCH\\}/PyQt5/bindings\"\\)")
+                (string-append "SET(PYQT5_SIP_DIR \""
                                (assoc-ref inputs "python-pyqt+qscintilla")
-                               "/share/sip"  "\",")))
-             (substitute* (list "scripts/prepare_commit.sh"
-                                "scripts/qstringfixup.sh"
-                                "scripts/release.pl"
-                                "scripts/runtests_local_travis_config.sh"
-                                "scripts/sip_include.sh"
-                                "scripts/sipdiff"
-                                "scripts/sipify_all.sh"
-                                "scripts/spell_check/check_spelling.sh"
-                                "scripts/spell_check/spell_test.sh"
-                                "scripts/verify_indentation.sh"
-                                "tests/code_layout/test_banned_keywords.sh"
-                                "tests/code_layout/test_licenses.sh"
-                                "tests/code_layout/test_shellcheck.sh"
-                                "tests/code_layout/test_sip_include.sh"
-                                "tests/code_layout/test_sipfiles.sh"
-                                "tests/code_layout/test_sipify.sh")
+                               "/share/sip\")")))
+             (substitute* (list "tests/code_layout/test_qt_imports.sh"
+                                "tests/code_layout/test_qgsscrollarea.sh")
                (("\\$\\(git rev-parse --show-toplevel\\)")
-                (getcwd)))
-             (substitute* "tests/code_layout/test_sip_include.sh"
-               (("^REV=.*") "REV=currentrev\n"))
-             #t))
+                (getcwd)))))
          (replace 'check
            (lambda* (#:key inputs tests? #:allow-other-keys)
              (when tests?
@@ -2454,113 +2438,85 @@ growing set of geoscientific methods.")
                            '(;; Disable tests that require network access
                              "qgis_filedownloader"
                              ;; TODO: Find why the following tests fail
-                             "ProcessingGdalAlgorithmsRasterTest"
-                             "ProcessingGdalAlgorithmsVectorTest"
-                             "ProcessingGrass7AlgorithmsImageryTest"
-                             "ProcessingGrass7AlgorithmsRasterTest"
-                             "ProcessingGrass7AlgorithmsVectorTest"
-                             "ProcessingOtbAlgorithmsTest"
                              "ProcessingQgisAlgorithmsTestPt1"
                              "ProcessingQgisAlgorithmsTestPt2"
                              "ProcessingQgisAlgorithmsTestPt3"
                              "ProcessingQgisAlgorithmsTestPt4"
-                             "PyCoreAdittions"
+                             "ProcessingGdalAlgorithmsVectorTest"
+                             "ProcessingGrass7AlgorithmsImageryTest"
+                             "ProcessingGrass7AlgorithmsRasterTestPt1"
+                             "ProcessingGrass7AlgorithmsRasterTestPt2"
+                             "ProcessingGrass7AlgorithmsVectorTest"
+                             "ProcessingOtbAlgorithmsTest"
+                             "test_core_authmanager"
+                             "test_core_compositionconverter"
+                             "test_core_gdalutils"
+                             "test_core_labelingengine"
+                             "test_core_layout"
+                             "test_core_layouthtml"
+                             "test_core_layoutlabel"
+                             "test_core_layoutmultiframe"
+                             "test_core_layoutpicture"
+                             "test_core_legendrenderer"
+                             "test_core_networkaccessmanager"
+                             "test_core_tiledownloadmanager"
+                             "test_gui_dualview"
+                             "test_gui_htmlwidgetwrapper"
+                             "test_gui_filedownloader"
+                             "test_gui_queryresultwidget"
+                             "test_analysis_processingalgspt2"
+                             "test_analysis_processing"
+                             "test_provider_wcsprovider"
+                             "qgis_grassprovidertest7"
+                             "test_app_gpsinformationwidget"
                              "PyQgsAnnotation"
-                             "PyQgsAppStartup"
-                             "PyQgsAuthBasicMethod"
+                             "PyQgsAttributeTableModel"
                              "PyQgsAuthenticationSystem"
-                             "PyQgsAuxiliaryStorage"
-                             "PyQgsDBManagerGpkg"
-                             "PyQgsDBManagerSpatialite"
-                             "PyQgsDataItem"
-                             "PyQgsFieldValidator"
+                             "PyQgsExternalStorageWebDAV"
+                             "PyQgsFieldFormattersTest"
                              "PyQgsFileUtils"
                              "PyQgsGeometryTest"
-                             "PyQgsImageCache"
-                             "PyQgsImportIntoPostGIS"
-                             "PyQgsLayerDependencies"
-                             "PyQgsLayerMetadata"
-                             "PyQgsLayout"
+                             "PyQgsGoogleMapsGeocoder"
+                             "PyQgsHashLineSymbolLayer"
                              "PyQgsLayoutExporter"
                              "PyQgsLayoutHtml"
-                             "PyQgsLayoutLegend"
-                             "PyQgsLayoutMapGrid"
-                             "PyQgsMapClippingUtils"
+                             "PyQgsLineSymbolLayers"
                              "PyQgsMapLayer"
-                             "PyQgsMetadataBase"
-                             "PyQgsOGRProvider"
+                             "PyQgsNetworkContentFetcherRegistry"
                              "PyQgsOGRProviderGpkg"
-                             "PyQgsOapifProvider"
+                             "PyQgsOGRProviderSqlite"
+                             "PyQgsPalLabelingCanvas"
                              "PyQgsPalLabelingLayout"
-                             "PyQgsProcessingInPlace"
-                             "PyQgsProject"
+                             "PyQgsPalLabelingPlacement"
+                             "PyQgsProcessExecutable"
                              "PyQgsProviderConnectionGpkg"
-                             "PyQgsProviderConnectionPostgres"
                              "PyQgsProviderConnectionSpatialite"
-                             "PyQgsPythonProvider"
-                             "PyQgsRasterLayer"
-                             "PyQgsRasterResampler"
-                             "PyQgsRulebasedRenderer"
-                             "PyQgsSelectiveMasking"
-                             "PyQgsSettings"
-                             "PyQgsShapefileProvider"
+                             "PyQgsOGRProvider"
                              "PyQgsSpatialiteProvider"
-                             "PyQgsSvgCache"
-                             "PyQgsSymbolExpressionVariables"
-                             "PyQgsTextRenderer"
                              "PyQgsVectorFileWriter"
-                             "PyQgsVectorLayer"
-                             "PyQgsVectorLayerUtils"
+                             "PyQgsVectorLayerEditBuffer"
+                             "PyQgsVectorLayerEditBufferGroup"
+                             "PyQgsVectorLayerProfileGenerator"
                              "PyQgsVirtualLayerProvider"
                              "PyQgsWFSProvider"
-                             "qgis_arcgisrestutilstest"
-                             "qgis_authmanagertest"
-                             "qgis_compositionconvertertest"
-                             "qgis_coordinatereferencesystemtest"
-                             "qgis_expressiontest"
-                             "qgis_fontmarkertest"
-                             "qgis_geometrycheckstest"
-                             "qgis_geometrytest"
-                             "qgis_gpsinformationwidget"
-                             "qgis_grassprovidertest7"
-                             "qgis_imagecachetest"
-                             "qgis_labelingenginetest"
-                             "qgis_layouthtmltest"
-                             "qgis_layoutlabeltest"
-                             "qgis_layoutmanualtabletest"
-                             "qgis_layoutmapgridtest"
-                             "qgis_layoutmapoverviewtest"
-                             "qgis_layoutmaptest"
-                             "qgis_layoutmultiframetest"
-                             "qgis_layoutpicturetest"
-                             "qgis_layouttabletest"
-                             "qgis_layouttest"
-                             "qgis_mapdevicepixelratiotest"
-                             "qgis_maprendererjobtest"
-                             "qgis_meshcontourstest"
-                             "qgis_ogrproviderguitest"
-                             "qgis_painteffecttest"
-                             "qgis_pallabelingtest"
-                             "qgis_processingtest"
-                             "qgis_rasterlayertest"
+                             "PyQgsWFSProviderGUI"
+                             "PyQgsOapifProvider"
+                             "PyQgsLayerDependencies"
+                             "PyQgsDBManagerGpkg"
+                             "PyQgsDBManagerSpatialite"
+                             "PyQgsAuxiliaryStorage"
+                             "PyQgsSelectiveMasking"
                              "qgis_shellcheck"
-                             "qgis_sip_include"
-                             "qgis_sip_uptodate"
                              "qgis_sipify"
-                             "qgis_styletest"
-                             "qgis_svgmarkertest"
-                             "qgis_taskmanagertest"
-                             "qgis_wcsprovidertest"
-                             "qgis_ziplayertest"
-                             "TestQgsRandomMarkerSymbolLayer")
+                             "qgis_sip_include"
+                             "qgis_sip_uptodate")
                            "|")))))
          (add-after 'install 'wrap-python
            (assoc-ref python:%standard-phases 'wrap))
          (add-after 'wrap-python 'wrap-qt
            (lambda* (#:key outputs inputs #:allow-other-keys)
              (let ((out (assoc-ref outputs "out")))
-               (wrap-qt-program "qgis" #:output out #:inputs inputs))
-             #t))
+               (wrap-qt-program "qgis" #:output out #:inputs inputs))))
          (add-after 'wrap-qt 'wrap-gis
            (lambda* (#:key inputs outputs #:allow-other-keys)
              ;; TODO: Find if there is a way to get SAGA to work.
@@ -2578,10 +2534,10 @@ growing set of geoscientific methods.")
                (wrap-program (string-append out "/bin/qgis")
                  ;;`("PATH" ":" prefix (,saga))
                  `("QGIS_PREFIX_PATH" = (,out))
-                 `("GISBASE" = (,grass))))
-             #t)))))
+                 `("GISBASE" = (,grass)))))))))
     (inputs
-     (list exiv2
+     (list bash-minimal
+           exiv2
            expat
            gdal
            geos
@@ -2623,8 +2579,9 @@ growing set of geoscientific methods.")
            qtserialport
            qtsvg-5
            qwt
-           ;;("saga" ,saga)
-           sqlite))
+           ;; saga
+           sqlite
+           (list zstd "lib")))
     (native-inputs
      (list bison
            flex
@@ -2633,6 +2590,7 @@ growing set of geoscientific methods.")
            pkg-config
            python-mock
            python-nose2
+           python-pyqt-builder
            qttools-5
            shellcheck
            xorg-server-for-tests))