GNU bug report logs - #38149
[WIP] gnu: Add qgis.

Previous Next

Package: guix-patches;

Reported by: Wiktor Żelazny <wz <at> freeshell.de>

Date: Sat, 9 Nov 2019 11:28:01 UTC

Severity: normal

Done: Arun Isaac <arunisaac <at> systemreboot.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 38149 in the body.
You can then email your comments to 38149 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Sat, 09 Nov 2019 11:28:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Wiktor Żelazny <wz <at> freeshell.de>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 09 Nov 2019 11:28:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Wiktor Żelazny <wz <at> freeshell.de>
To: guix-patches <at> gnu.org
Subject: [WIP] gnu: Add qgis.
Date: Sat,  9 Nov 2019 12:27:02 +0100
From: Wiktor Żelazny <wzelazny <at> vurv.cz>

* gnu/packages/geo.scm (qgis): new variable.
Does not build due to QtXml/QtXmlmod.sip not found.
---
This is my attempt to define some minimal QGIS package. Unfortunately,
the build crashes with
   sip: Unable to find file "QtXml/QtXmlmod.sip"
but:
   $ ls -l /gnu/store/8d1ak3bpaaqhw4hnxksan7fnh5ll7i5f-python-pyqt+qscintilla-5.11.3/share/sip/QtXml/QtXmlmod.sip
   -r--r--r-- 5 root root 1937 Jan  1  1970 /gnu/store/8d1ak3bpaaqhw4hnxksan7fnh5ll7i5f-python-pyqt+qscintilla-5.11.3/share/sip/QtXml/QtXmlmod.sip
I thought that maybe the QtXml/ directory being a symlink
   QtXml -> /gnu/store/mfii8qx5x3kbl1gzg8g8qmblqk6fdmvf-python-pyqt-5.11.3/share/sip/QtXml
was the problem, but including python-pyqt (or python-sip, for that
matter) among the inputs did not solve the issue. Explicitly defining
directories as configure flags does not work, either. Any suggestion how
to progress on this? Thanks!
 gnu/packages/geo.scm | 63 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index dfb00c7547..26bbcd2f63 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -42,12 +42,14 @@
   #:use-module (guix utils)
   #:use-module (gnu packages astronomy)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages datastructures)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages glib)
@@ -55,7 +57,9 @@
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages kde)
   #:use-module (gnu packages lua)
+  #:use-module (gnu packages maths)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -1037,3 +1041,62 @@ persisted.
 @end itemize
 ")
     (license license:expat)))
+
+(define-public qgis
+  (package
+    (name "qgis")
+    (version "3.8.3")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://qgis.org/downloads/" name "-" version ".tar.bz2"))
+        (sha256
+          (base32
+            ; checked <uri>.md5
+            "1g8pzfm68n28pj7a4z9c1yklnwx5and83svjx6w8q5dwhf23xjiw"))))
+    (build-system cmake-build-system)
+    (native-inputs
+      `(("flex" ,flex)
+        ("bison" ,bison)
+        ("python" ,python)))
+    (inputs
+      `(("qtbase" ,qtbase)
+        ("qtserialport" ,qtserialport)
+        ("qtsvg" ,qtsvg)
+        ("qtlocation" ,qtlocation)
+        ("qttools" ,qttools)
+        ("qtdeclarative" ,qtdeclarative)
+        ("qtwebkit" ,qtwebkit)
+        ("proj.4" ,proj.4)
+        ("geos" ,geos)
+        ("sqlite" ,sqlite)
+        ("libspatialite" ,libspatialite)
+        ("libspatialindex" ,libspatialindex)
+        ("gdal" ,gdal)
+        ("qwt" ,qwt)
+        ("expat" ,expat)
+        ("qscintilla" ,qscintilla)
+        ("qca" ,qca)
+        ("qtkeychain" ,qtkeychain)
+        ("libzip" ,libzip)
+        ("python-pyqt+qscintilla" ,python-pyqt+qscintilla)
+;        ("python-sip" ,python-sip)
+        ("exiv2" ,exiv2)
+        ("gsl" ,gsl)))
+    (arguments
+      `(#:configure-flags (list (string-append
+                                  "-DPYQT5_SIP_DIR="
+                                  (assoc-ref
+                                    %build-inputs "python-pyqt+qscintilla")
+                                  "/share/sip")
+                                (string-append
+                                  "-DQSCI_SIP_DIR="
+                                  (assoc-ref
+                                    %build-inputs "python-pyqt+qscintilla")
+                                  "/share/sip"))))
+    (home-page "https://qgis.org")
+    (synopsis "A free and open source Geographic Information System")
+    (description "QGIS is a professional GIS application that is built on top
+of and proud to be itself @dfn{Free and Open Source Software} (FOSS).")
+    (license license:gpl2+)))
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Sun, 01 Dec 2019 18:14:02 GMT) Full text and rfc822 format available.

Message #8 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Wiktor Żelazny <wz <at> freeshell.de>
Cc: 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Sun, 01 Dec 2019 23:43:39 +0530
[Message part 1 (text/plain, inline)]
Sorry this is taking more time than I expected. It looks like the qgis
package I dug up out of my git stash doesn't build anymore. The package
is around a year old and was for an older version of qgis. Hopefully
there is some simple fix that needs to be made for the build to
work. But qgis builds take forever on my slow machine and figuring out
the problem is taking a while. I'll try to get back to you in 48 hours.

Thank you for your patience! :-)
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Mon, 02 Dec 2019 14:32:02 GMT) Full text and rfc822 format available.

Message #11 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Wiktor Żelazny <wz <at> freeshell.de>
To: 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Mon, 2 Dec 2019 15:31:15 +0100
[Message part 1 (text/plain, inline)]
On Sun, Dec 01, 2019 at 11:43:39PM +0530, Arun Isaac wrote:

> Hopefully there is some simple fix that needs to be made for the build
> to work. But qgis builds take forever on my slow machine and figuring
> out the problem is taking a while. I'll try to get back to you in 48
> hours.

Thank you for your efforts. Take you time. You can always post what
you’ve got, and maybe somebody will come with some idea how to make it
work again.

WŻ
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Tue, 03 Dec 2019 17:47:01 GMT) Full text and rfc822 format available.

Message #14 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Wiktor Żelazny <wz <at> freeshell.de>, 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Tue, 03 Dec 2019 23:15:51 +0530
[Message part 1 (text/plain, inline)]
> * gnu/packages/geo.scm (qgis): new variable.
> Does not build due to QtXml/QtXmlmod.sip not found.
> ---
> This is my attempt to define some minimal QGIS package. Unfortunately,
> the build crashes with
>    sip: Unable to find file "QtXml/QtXmlmod.sip"

I fixed this problem with the following custom phase.

#:phases
(modify-phases %standard-phases
  ;; Configure correct path to PyQt5 SIP directory
  (add-after 'unpack 'configure-pyqt5-sip-path
    (lambda* (#:key inputs #:allow-other-keys)
      (substitute* "cmake/FindPyQt5.cmake"
        (("\"\\\\\\\\1\" PYQT5_SIP_DIR")
         (string-append "\"" (assoc-ref inputs "python-pyqt+qscintilla")
                        "/share/sip\" PYQT5_SIP_DIR")))
      #t))

I'm slowly but steadily making progress and will soon post a complete
patch. Progress is slow since each build attempt takes around 6 hours on
my rather slow machine.

> +    (license license:gpl2+)))

Also, the license of qgis is extremely complicated. Looking at other
guix packages, I'm assuming we have to exhaustively document every
license. Very tedious! :-( I got this far, but I still need to double
check all the licenses again.

(license
     (list license:gpl2+
           ;; qgis.dtd
           ;; src/core/pal/rtree.hpp
           ;; src/plugins/grass/qtermwidget/konsole_wcwidth.*
           ;; cmake/PythonCompile.py
           ;; resources/cpt-city-qgis-min/dg/*
           ;; resources/cpt-city-qgis-min/gery/*
           ;; resources/cpt-city-qgis-min/jjg/dem/*
           ;; resources/cpt-city-qgis-min/jjg/misc/*
           ;; resources/cpt-city-qgis-min/jjg/physics/*
           ;; tests/testdata/cpt-city/jjg/misc/*
           ;; resources/cpt-city-qgis-min/km/*
           ;; resources/cpt-city-qgis-min/pd/*
           ;; resources/cpt-city-qgis-min/wkp/encyclopedia/*
           ;; resources/cpt-city-qgis-min/wkp/template/*
           ;; resources/cpt-city-qgis-min/ocal/*
           ;; resources/cpt-city-qgis-min/rf/*
           ;; resources/cpt-city-qgis-min/tp/*
           license:public-domain
           ;; python/plugins/processing/modeler/ModelerArrowItem.py
           ;; src/app/qgssettingstree.cpp
           ;; src/app/qgssettingstree.h
           ;; src/app/qgsvariantdelegate.cpp
           ;; src/app/qgsvariantdelegate.h
           ;; src/app/qtmain_android.cpp
           ;; cmake/Bison.cmake
           ;; cmake/FindExpat.cmake
           ;; cmake/FindGRASS.cmake
           ;; cmake/FindPostgres.cmake
           ;; cmake/FindProj.cmake
           ;; cmake/FindSqlite3.cmake
           ;; cmake/Flex.cmake
           ;; cmake/FindFcgi.cmake
           ;; cmake/FindGDAL.cmake
           ;; cmake/FindGEOS.cmake
           ;; cmake/FindGSL.cmake
           ;; cmake/FindIconv.cmake
           ;; cmake/FindOSGEARTH.cmake
           ;; cmake/FindLibPython.py
           ;; cmake/FindPyQt4.cmake
           ;; cmake/FindPyQt4.py
           ;; cmake/FindPyQt5.cmake
           ;; cmake/FindPyQt5.py
           ;; cmake/FindPythonLibrary.cmake
           ;; cmake/FindSIP.cmake
           ;; cmake/FindSIP.py
           ;; cmake/PythonMacros.cmake
           ;; cmake/SIPMacros.cmake
           ;; cmake/FindQCA.cmake
           ;; cmake/FindQextserialport.cmake
           ;; cmake/FindQGIS.cmake
           ;; cmake/FindQsci.cmake
           ;; cmake/FindQsci.py
           ;; cmake/FindQScintilla.cmake
           ;; cmake/FindQwt.cmake
           ;; cmake/FindSpatiaLite.cmake
           ;; cmake/MacBundleMacros.cmake
           ;; cmake/MacPlistMacros.cmake
           ;; cmake/PyQtMacros.cmake
           ;; cmake/QCAMacros.cmake
           ;; cmake/UsePythonTest.cmake
           license:bsd-3
           ;; external//qwtpolar-1.1.1/*
           ;; src/gui/raster/qwt5_histogram_item.h
           license:qwt1.0
           ;; external/astyle/*
           license:lgpl2.1+
           ;; external/nmea/config.h
           ;; external/nmea/context.c
           ;; external/nmea/context.h
           ;; external/nmea/gmath.c
           ;; external/nmea/gmath.h
           ;; external/nmea/info.c
           ;; external/nmea/info.h
           ;; external/nmea/nmeatime.h
           ;; external/nmea/parse.c
           ;; external/nmea/parse.h
           ;; external/nmea/parser.h
           ;; external/nmea/sentence.c
           ;; external/nmea/sentence.h
           ;; external/nmea/time.c
           ;; external/nmea/tok.c
           ;; external/nmea/tok.h
           ;; external/nmea/units.h
           ;; src/plugins/evis/*
           ;; src/plugins/grass/qtermwidget/kprocess.cpp
           ;; src/plugins/grass/qtermwidget/kprocess.h
           ;; src/plugins/grass/qtermwidget/kptydevice.cpp
           ;; src/plugins/grass/qtermwidget/kptydevice.h
           ;; src/plugins/grass/qtermwidget/kptyprocess.cpp
           ;; src/plugins/grass/qtermwidget/kptyprocess.h
           ;; src/plugins/grass/qtermwidget/kpty.cpp
           ;; src/plugins/grass/qtermwidget/kpty.h
           ;; src/plugins/grass/qtermwidget/kpty_p.h
           ;; src/plugins/grass/qtermwidget/qtermwidget.cpp
           ;; src/plugins/grass/qtermwidget/qtermwidget.h
           ;; src/plugins/grass/qtermwidget/TerminalCharacterDecoder.cpp
           ;; src/plugins/grass/qtermwidget/TerminalCharacterDecoder.h
           license:lgpl2.0+
           ;; src/core/pal/*
           ;; resources/cpt-city-qgis-min/ds9/*
           ;; resources/cpt-city-qgis-min/grass/*
           license:gpl3+
           ;; src/core/symbology/qgscolorbrewerpalette.cpp
           license:asl2.0
           ;; images/themes/default/*
           ;; resources/cpt-city-qgis-min/gps/*
           ;; resources/cpt-city-qgis-min/nd/*
           ;; resources/cpt-city-qgis-min/wkp/country/*
           ;; resources/cpt-city-qgis-min/wkp/jarke/*
           ;; resources/cpt-city-qgis-min/wkp/jarke/*
           ;; resources/cpt-city-qgis-min/wkp/knutux/*
           ;; resources/cpt-city-qgis-min/wkp/lilleskut/*
           ;; resources/cpt-city-qgis-min/wkp/plumbago/*
           ;; resources/cpt-city-qgis-min/wkp/precip/*
           ;; resources/cpt-city-qgis-min/wkp/schwarzwald/*
           ;; resources/cpt-city-qgis-min/wkp/shadowxfox/*
           ;; resources/cpt-city-qgis-min/wkp/tubs/*
           license:cc-by-sa3.0
           ;; resources/cpt-city-qgis-min/cb/*
           ;; resources/cpt-city-qgis-min/jjg/cbac/*
           ;; resources/cpt-city-qgis-min/jjg/cbcont/*
           ;; resources/cpt-city-qgis-min/jjg/polarity/*
           license:asl1.1
           ;; resources/cpt-city-qgis-min/ds/*
           (license:fsf-free
            "https://www.deviantart.com/webgoddess/art/Reddish-Inspired-Gradients-42208824")
           ;; resources/cpt-city-qgis-min/es/*
           (license:fsdg-compatible
            "https://www.deviantart.com/elvensword")
           ;; resources/cpt-city-qgis-min/gist/*
           (license:non-copyleft "file://debian/copyright"
                                 "BSD-like-gist")
           ;; resources/cpt-city-qgis-min/go2/webtwo/*
           (license:fsf-free "file://debian/copyright"
                             "Go Squared")
           ;; resources/cpt-city-qgis-min/h5/*
           license:expat
           ;; resources/cpt-city-qgis-min/jm/*
           (license:non-copyleft "file://debian/copyright"
                                 "Jim Mossman Attribution")
           ;; resources/cpt-city-qgis-min/ncl/*
           (license:non-copyleft
            "https://www.ncl.ucar.edu/Download/NCL_source_license.shtml"
            "NCL Source Code License")
           ;; resources/cpt-city-qgis-min/os/*
           ;; resources/cpt-city-qgis-min/ukmo/*
           license:ogl-psi1.0
           ;; resources/cpt-city-qgis-min/wkp/ice/*
           license:gfdl1.2+-without-invariant-sections
           ;; src/gui/symbology/characterwidget.cpp
           ;; src/gui/symbology/characterwidget.h
           ;; src/providers/oracle/ocispatial/main.cpp
           ;; src/providers/oracle/ocispatial/qsql_ocispatial.cpp
           ;; src/providers/oracle/ocispatial/qsql_ocispatial.h
           ;; src/providers/oracle/ocispatial/qsqlcachedresult_p.h
           ;; src/providers/spatialite/qspatialite/qsql_spatialite.cpp
           ;; src/providers/spatialite/qspatialite/qsql_spatialite.h
           ;; src/providers/spatialite/qspatialite/qsqlcachedresult_p.h
           ;; src/providers/spatialite/qspatialite/smain.cpp
           ;; tests/qt_modeltest/modeltest.cpp
           ;; tests/qt_modeltest/modeltest.h
           ;; tests/qt_modeltest/tst_modeltest.cpp
           ;; tests/qt_modeltest/dynamictreemodel.cpp
           ;; tests/qt_modeltest/dynamictreemodel.h
           (license:fsf-free
            "file://debian/copyright"
            "QT-Commercial or LGPL-2.1 with Digia Qt LGPL Exception 1.1 or GPL-3")))
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Thu, 05 Dec 2019 11:21:02 GMT) Full text and rfc822 format available.

Message #17 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Wiktor Żelazny <wz <at> freeshell.de>, 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Thu, 05 Dec 2019 16:49:38 +0530
[Message part 1 (text/plain, inline)]
Please find attached my WIP patchset. With this patchset, qgis builds
and runs successfully. Pending work includes

- get libgeotiff tests working
- get qgis tests working
- double check qgis license field

[0001-gnu-geos-Update-to-3.8.0.patch (text/x-patch, inline)]
From 702d874896c88e0c330fa0c04ab0acfd1cef0723 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Wed, 4 Dec 2019 19:55:17 +0530
Subject: [PATCH 1/9] gnu: geos: Update to 3.8.0.

* gnu/packages/geo.scm (geos): Update to 3.8.0.
---
 gnu/packages/geo.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 477e9a460a..a6186ed2f0 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2017, 2018 Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado <at> elephly.net>
-;;; Copyright © 2018 Arun Isaac <arunisaac <at> systemreboot.net>
+;;; Copyright © 2018, 2019 Arun Isaac <arunisaac <at> systemreboot.net>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua <at> nextjournal.com>
 ;;; Copyright © 2018, 2019 Julien Lepiller <julien <at> lepiller.eu>
 ;;; Copyright © 2019 Guillaume Le Vaillant <glv <at> posteo.net>
@@ -75,7 +75,7 @@
 (define-public geos
   (package
     (name "geos")
-    (version "3.7.1")
+    (version "3.8.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://download.osgeo.org/geos/geos-"
@@ -83,7 +83,7 @@
                                   ".tar.bz2"))
               (sha256
                (base32
-                "1312m02xk4sp6f1xdpb9w0ic0zbxg90p5y66qnwidl5fksscf1h0"))))
+                "1mb2v9fy1gnbjhcgv0xny11ggfb17vkzsajdyibigwsxr4ylq4cr"))))
     (build-system gnu-build-system)
     (arguments `(#:phases
                  (modify-phases %standard-phases
-- 
2.23.0

[0002-gnu-Add-proj.patch (text/x-patch, inline)]
From 07056365b692b896419f108ec072291ab2bba7e1 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:43:42 +0530
Subject: [PATCH 2/9] gnu: Add proj.

* gnu/packages/geo.scm (proj): New variable.
---
 gnu/packages/geo.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index a6186ed2f0..f5ff753390 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -319,6 +319,41 @@ fully fledged Spatial SQL capabilities.")
                    license:mpl1.1
                    license:public-domain))))
 
+(define-public proj
+  (package
+    (name "proj")
+    (version "6.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://download.osgeo.org/proj/proj-"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "0l1as8f4zfg74fms6h5p5psziw0lpznja1xnirzsscpnfbwc005k"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("sqlite" ,sqlite)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://proj.org/")
+    (synopsis "Coordinate transformation software")
+    (description
+     "Proj is a generic coordinate transformation software that transforms
+geospatial coordinates from one coordinate reference system (CRS) to another.
+This includes cartographic projections as well as geodetic transformations.
+PROJ includes command line applications for easy conversion of coordinates
+from text files or directly from user input.  In addition, proj also exposes
+an application programming interface that lets developers use the
+functionality of proj in their own software.")
+    (license (list license:expat
+                   ;; src/projections/patterson.cpp
+                   license:asl2.0
+                   ;; src/geodesic.*, src/tests/geodtest.cpp
+                   license:x11
+                   ;; cmake/*
+                   license:boost1.0))))
+
 (define-public proj.4
   (package
     (name "proj.4")
-- 
2.23.0

[0003-gnu-gdal-Update-to-3.0.2.patch (text/x-patch, inline)]
From 68db9af6291a223254eff5e9803372f0fef18e78 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:45:30 +0530
Subject: [PATCH 3/9] gnu: gdal: Update to 3.0.2.

* gnu/packages/geo.scm (gdal): Update to 3.0.2.
[inputs]: Add proj.
---
 gnu/packages/geo.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index f5ff753390..ea78b69089 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -567,7 +567,7 @@ development.")
 (define-public gdal
   (package
     (name "gdal")
-    (version "2.2.4")
+    (version "3.0.2")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -575,7 +575,7 @@ development.")
                      version ".tar.gz"))
               (sha256
                (base32
-                "1951f7b69x3d1vic0rmq92q8f4bj3hbxnxmj5jl0cc3zg0isgmdr"))
+                "0f80izh9wshrsw55kg9abpip74hk6frk3hgqrkqbyn3f6i8g2z3q"))
               (modules '((guix build utils)))
               (snippet
                 `(begin
@@ -627,6 +627,7 @@ development.")
        ("libtiff" ,libtiff)
        ("libwebp" ,libwebp)
        ("pcre" ,pcre)
+       ("proj" ,proj)
        ("zlib" ,zlib)))
     (home-page "http://www.gdal.org/")
     (synopsis "Raster and vector geospatial data format library")
-- 
2.23.0

[0004-gnu-libspatialindex-Update-to-1.9.3.patch (text/x-patch, inline)]
From eb19fd3b25484f58abcf0db7174064bc1158bb7e Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:46:28 +0530
Subject: [PATCH 4/9] gnu: libspatialindex: Update to 1.9.3.

* gnu/packages/geo.scm (libspatialindex): Update to 1.9.3.
[build-system]: Switch to cmake-build-system.
---
 gnu/packages/geo.scm | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index ea78b69089..ad138d6578 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1046,16 +1046,16 @@ volunteers.")
 (define-public libspatialindex
   (package
     (name "libspatialindex")
-    (version "1.8.5")
+    (version "1.9.3")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://download.osgeo.org/libspatialindex/"
-                           "spatialindex-src-" version ".tar.gz"))
+                           "spatialindex-src-" version ".tar.bz2"))
        (sha256
         (base32
-         "1vxzm7kczwnb6qdmc0hb00z8ykx11zk3sb68gc7rch4vrfi4dakw"))))
-    (build-system gnu-build-system)
+         "02n5vjcyk04w0djidyp21hfbxfpbbara8ifd9nml6158rwqr8lja"))))
+    (build-system cmake-build-system)
     (home-page "https://libspatialindex.org")
     (synopsis "Spatial indexing library")
     (description "The purpose of this library is to provide:
-- 
2.23.0

[0005-gnu-libgeotiff-Update-to-1.5.1.patch (text/x-patch, inline)]
From ba3bff132eba8eeaf032e69cade548910bb8c3fd Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:47:47 +0530
Subject: [PATCH 5/9] gnu: libgeotiff: Update to 1.5.1.

* gnu/packages/geo.scm (libgeotiff): Update to 1.5.1.
[inputs]: Replace proj.4 with proj.
---
 gnu/packages/geo.scm | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index ad138d6578..8fe48367b9 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -225,35 +225,30 @@ and driving.")
 (define-public libgeotiff
   (package
     (name "libgeotiff")
-    (version "1.4.3")
+    (version "1.5.1")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-"
                            version ".tar.gz"))
        (sha256
-        (base32 "0rbjqixi4c8yz19larlzq6jda0px2gpmpp9c52cyhplbjsdhsldq"))
+        (base32 "0b31mlzcv5b1y7jdvb7p0pa3xradrg3x5g32ym911lbhq4rrgsgr"))
        (modules '((guix build utils)))
        (snippet
         '(begin
            ;; Remove .csv files, distributed from EPSG under a restricted
            ;; license. See LICENSE for full license text.
            (for-each delete-file (find-files "." "\\.csv$"))
-           ;; Now that we have removed the csv files, we need to modify the Makefile.
-           (substitute* "Makefile.in"
-             (("^all-am: .*$")
-              "all-am: Makefile $(LTLIBRARIES) $(HEADERS) geo_config.h\n")
-             (("^install-data-am: .*$")
-              "install-data-am: install-includeHEADERS"))
            #t))))
     (build-system gnu-build-system)
     (inputs
      `(("libjpeg-turbo" ,libjpeg-turbo)
        ("libtiff" ,libtiff)
-       ("proj.4" ,proj.4)
+       ("proj" ,proj)
        ("zlib" ,zlib)))
     (arguments
-     `(#:configure-flags
+     `(#:tests? #f
+       #:configure-flags
        (list (string-append "--with-zlib")
              (string-append "--with-jpeg")
              (string-append "--with-libtiff=" (assoc-ref %build-inputs "libtiff")))))
-- 
2.23.0

[0006-licenses-Add-GNU-Free-Documentation-licenses.patch (text/x-patch, inline)]
From f4a36d098a9b51ff22b9f2e1c6b414f8648010ed Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:28:38 +0530
Subject: [PATCH 6/9] licenses: Add GNU Free Documentation licenses.

* guix/licenses.scm (gfdl1.2+, gfdl1.2+-without-invariant-sections): New
variables.
---
 guix/licenses.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 41d4fefad2..24e69ac1c5 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -54,6 +54,7 @@
             freetype
             freebsd-doc
             giftware
+            gfdl1.2+ gfdl1.2+-without-invariant-sections
             gpl1 gpl1+ gpl2 gpl2+ gpl3 gpl3+
             gfl1.0
             fdl1.1+ fdl1.2+ fdl1.3+
@@ -284,6 +285,16 @@ at URI, which may be a file:// URI pointing the package's tree."
            "http://directory.fsf.org/wiki/License:Freetype"
            "https://www.gnu.org/licenses/license-list.html#freetype"))
 
+(define gfdl1.2+
+  (license "GFDL 1.2+"
+           "https://www.gnu.org/licenses/old-licenses/fdl-1.2.en.html"
+           "https://www.gnu.org/licenses/license-list.html#FDL"))
+
+(define gfdl1.2+-without-invariant-sections
+  (license "GFDL 1.2+ without invariant sections"
+           "https://www.gnu.org/licenses/old-licenses/fdl-1.2.en.html"
+           "https://www.gnu.org/licenses/license-list.html#FDL"))
+
 (define giftware
   (license "Giftware"
            "http://liballeg.org/license.html"
-- 
2.23.0

[0007-licenses-Add-Open-Government-Licence-for-Public-Sect.patch (text/x-patch, inline)]
From 34f79e3835550d89e94e5b61b9d0bfe1c9254ce1 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:30:09 +0530
Subject: [PATCH 7/9] licenses: Add Open Government Licence for Public Sector
 Information.

* guix/licenses.scm (ogl-psi1.0): New variable.
---
 guix/licenses.scm | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 24e69ac1c5..3b79e7c1c3 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -76,6 +76,7 @@
             ms-pl
             ncsa
             nmap
+            ogl-psi1.0
             openldap2.8 openssl
             perl-license
             psfl public-domain
@@ -527,6 +528,11 @@ at URI, which may be a file:// URI pointing the package's tree."
            "https://svn.nmap.org/nmap/COPYING"
            "https://fedoraproject.org/wiki/Licensing/Nmap"))
 
+(define ogl-psi1.0
+  (license "Open Government Licence for Public Sector Information"
+           "https://www.nationalarchives.gov.uk/doc/open-government-licence/version/1/"
+           #f))
+
 (define openssl
   (license "OpenSSL"
            "http://directory.fsf.org/wiki/License:OpenSSL"
-- 
2.23.0

[0008-licenses-Add-QWT-1.0-license.patch (text/x-patch, inline)]
From 692ebddcddbf26e92274455044fe8c082f7526a1 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:31:50 +0530
Subject: [PATCH 8/9] licenses: Add QWT 1.0 license.

* guix/licenses.scm (qwt1.0): New variable.
---
 guix/licenses.scm | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 3b79e7c1c3..80655b7ab4 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -81,6 +81,7 @@
             perl-license
             psfl public-domain
             qpl
+            qwt1.0
             repoze
             ruby
             sgifreeb2.0
@@ -565,6 +566,11 @@ at URI, which may be a file:// URI pointing the package's tree."
            "http://directory.fsf.org/wiki/License:QPLv1.0"
            "http://www.gnu.org/licenses/license-list.html#QPL"))
 
+(define qwt1.0
+  (license "QWT 1.0"
+           "http://qwt.sourceforge.net/qwtlicense.html"
+           "GNU Lesser General Public License with exceptions"))
+
 (define repoze
   (license "Repoze"
            "http://repoze.org/LICENSE.txt"
-- 
2.23.0

[0009-gnu-Add-qgis.patch (text/x-patch, inline)]
From dd9860f804a76ce9d92c69bb67304695c0ce3142 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:32:49 +0530
Subject: [PATCH 9/9] gnu: Add qgis.

* gnu/packages/geo.scm (qgis): New variable.
---
 gnu/packages/geo.scm | 242 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 242 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 8fe48367b9..625b4aeebb 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -44,12 +44,14 @@
   #:use-module (guix utils)
   #:use-module (gnu packages astronomy)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages datastructures)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages glib)
@@ -58,15 +60,19 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages java)
+  #:use-module (gnu packages kde)
   #:use-module (gnu packages lua)
+  #:use-module (gnu packages maths)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages web)
   #:use-module (gnu packages webkit)
   #:use-module (gnu packages wxwidgets)
@@ -1244,3 +1250,239 @@ supports loading GPX tracks, background imagery and OSM data from local
 sources as well as from online sources and allows to edit the OSM data (nodes,
 ways, and relations) and their metadata tags.")
     (license license:gpl2+)))
+
+(define-public qgis
+  (package
+    (name "qgis")
+    (version "3.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://qgis.org/downloads/qgis-"
+                           version ".tar.bz2"))
+       (sha256
+        (base32
+         "04ph8abhq0f2hzq276a070nwyhzfrvyhswks6gx2z4pvv50irsr5"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ; yet to get the tests working
+       #:modules ((guix build cmake-build-system)
+                  ((guix build python-build-system) #:prefix python:)
+                  (guix build utils))
+       #:imported-modules (,@%cmake-build-system-modules
+                           (guix build python-build-system))
+       #:phases
+       (modify-phases %standard-phases
+         ;; Configure correct path to PyQt5 SIP directory
+         (add-after 'unpack 'configure-pyqt5-sip-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "cmake/FindPyQt5.cmake"
+               (("\"\\\\\\\\1\" PYQT5_SIP_DIR")
+                (string-append "\"" (assoc-ref inputs "python-pyqt+qscintilla")
+                               "/share/sip\" PYQT5_SIP_DIR")))
+             #t))
+         (add-after 'install 'wrap
+           (assoc-ref python:%standard-phases 'wrap)))))
+    (inputs
+     `(("exiv2" ,exiv2)
+       ("expat" ,expat)
+       ("gdal" ,gdal)
+       ("geos" ,geos)
+       ("gsl" ,gsl)
+       ("libspatialindex" ,libspatialindex)
+       ("libspatialite" ,libspatialite)
+       ("libzip" ,libzip)
+       ("postgresql" ,postgresql)
+       ("proj" ,proj)
+       ("python" ,python)
+       ("python-pyqt+qscintilla" ,python-pyqt+qscintilla)
+       ("qca" ,qca)
+       ("qscintilla" ,qscintilla)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtkeychain" ,qtkeychain)
+       ("qtlocation" ,qtlocation)
+       ("qtserialport" ,qtserialport)
+       ("qtsvg" ,qtsvg)
+       ("qttools" ,qttools)
+       ("qtwebkit" ,qtwebkit)
+       ("qwt" ,qwt)
+       ("sqlite" ,sqlite-with-column-metadata)))
+    (native-inputs
+     `(("bison" ,bison)
+       ("flex" ,flex)))
+    (home-page "https://qgis.org")
+    (synopsis "Geographical information system")
+    (description "QGIS is an easy to use Geographical Information
+System (GIS).  It is a GIS data viewer and editor.  QGIS supports a number of
+raster and vector data formats, with new support easily added using the plugin
+architecture.")
+    (license
+     (list license:gpl2+
+           ;; qgis.dtd
+           ;; src/core/pal/rtree.hpp
+           ;; src/plugins/grass/qtermwidget/konsole_wcwidth.*
+           ;; cmake/PythonCompile.py
+           ;; resources/cpt-city-qgis-min/dg/*
+           ;; resources/cpt-city-qgis-min/gery/*
+           ;; resources/cpt-city-qgis-min/jjg/dem/*
+           ;; resources/cpt-city-qgis-min/jjg/misc/*
+           ;; resources/cpt-city-qgis-min/jjg/physics/*
+           ;; tests/testdata/cpt-city/jjg/misc/*
+           ;; resources/cpt-city-qgis-min/km/*
+           ;; resources/cpt-city-qgis-min/pd/*
+           ;; resources/cpt-city-qgis-min/wkp/encyclopedia/*
+           ;; resources/cpt-city-qgis-min/wkp/template/*
+           ;; resources/cpt-city-qgis-min/ocal/*
+           ;; resources/cpt-city-qgis-min/rf/*
+           ;; resources/cpt-city-qgis-min/tp/*
+           license:public-domain
+           ;; python/plugins/processing/modeler/ModelerArrowItem.py
+           ;; src/app/qgssettingstree.cpp
+           ;; src/app/qgssettingstree.h
+           ;; src/app/qgsvariantdelegate.cpp
+           ;; src/app/qgsvariantdelegate.h
+           ;; src/app/qtmain_android.cpp
+           ;; cmake/Bison.cmake
+           ;; cmake/FindExpat.cmake
+           ;; cmake/FindGRASS.cmake
+           ;; cmake/FindPostgres.cmake
+           ;; cmake/FindProj.cmake
+           ;; cmake/FindSqlite3.cmake
+           ;; cmake/Flex.cmake
+           ;; cmake/FindFcgi.cmake
+           ;; cmake/FindGDAL.cmake
+           ;; cmake/FindGEOS.cmake
+           ;; cmake/FindGSL.cmake
+           ;; cmake/FindIconv.cmake
+           ;; cmake/FindOSGEARTH.cmake
+           ;; cmake/FindLibPython.py
+           ;; cmake/FindPyQt4.cmake
+           ;; cmake/FindPyQt4.py
+           ;; cmake/FindPyQt5.cmake
+           ;; cmake/FindPyQt5.py
+           ;; cmake/FindPythonLibrary.cmake
+           ;; cmake/FindSIP.cmake
+           ;; cmake/FindSIP.py
+           ;; cmake/PythonMacros.cmake
+           ;; cmake/SIPMacros.cmake
+           ;; cmake/FindQCA.cmake
+           ;; cmake/FindQextserialport.cmake
+           ;; cmake/FindQGIS.cmake
+           ;; cmake/FindQsci.cmake
+           ;; cmake/FindQsci.py
+           ;; cmake/FindQScintilla.cmake
+           ;; cmake/FindQwt.cmake
+           ;; cmake/FindSpatiaLite.cmake
+           ;; cmake/MacBundleMacros.cmake
+           ;; cmake/MacPlistMacros.cmake
+           ;; cmake/PyQtMacros.cmake
+           ;; cmake/QCAMacros.cmake
+           ;; cmake/UsePythonTest.cmake
+           license:bsd-3
+           ;; external//qwtpolar-1.1.1/*
+           ;; src/gui/raster/qwt5_histogram_item.h
+           license:qwt1.0
+           ;; external/astyle/*
+           license:lgpl2.1+
+           ;; external/nmea/config.h
+           ;; external/nmea/context.c
+           ;; external/nmea/context.h
+           ;; external/nmea/gmath.c
+           ;; external/nmea/gmath.h
+           ;; external/nmea/info.c
+           ;; external/nmea/info.h
+           ;; external/nmea/nmeatime.h
+           ;; external/nmea/parse.c
+           ;; external/nmea/parse.h
+           ;; external/nmea/parser.h
+           ;; external/nmea/sentence.c
+           ;; external/nmea/sentence.h
+           ;; external/nmea/time.c
+           ;; external/nmea/tok.c
+           ;; external/nmea/tok.h
+           ;; external/nmea/units.h
+           ;; src/plugins/evis/*
+           ;; src/plugins/grass/qtermwidget/kprocess.cpp
+           ;; src/plugins/grass/qtermwidget/kprocess.h
+           ;; src/plugins/grass/qtermwidget/kptydevice.cpp
+           ;; src/plugins/grass/qtermwidget/kptydevice.h
+           ;; src/plugins/grass/qtermwidget/kptyprocess.cpp
+           ;; src/plugins/grass/qtermwidget/kptyprocess.h
+           ;; src/plugins/grass/qtermwidget/kpty.cpp
+           ;; src/plugins/grass/qtermwidget/kpty.h
+           ;; src/plugins/grass/qtermwidget/kpty_p.h
+           ;; src/plugins/grass/qtermwidget/qtermwidget.cpp
+           ;; src/plugins/grass/qtermwidget/qtermwidget.h
+           ;; src/plugins/grass/qtermwidget/TerminalCharacterDecoder.cpp
+           ;; src/plugins/grass/qtermwidget/TerminalCharacterDecoder.h
+           license:lgpl2.0+
+           ;; src/core/pal/*
+           ;; resources/cpt-city-qgis-min/ds9/*
+           ;; resources/cpt-city-qgis-min/grass/*
+           license:gpl3+
+           ;; src/core/symbology/qgscolorbrewerpalette.cpp
+           license:asl2.0
+           ;; images/themes/default/*
+           ;; resources/cpt-city-qgis-min/gps/*
+           ;; resources/cpt-city-qgis-min/nd/*
+           ;; resources/cpt-city-qgis-min/wkp/country/*
+           ;; resources/cpt-city-qgis-min/wkp/jarke/*
+           ;; resources/cpt-city-qgis-min/wkp/jarke/*
+           ;; resources/cpt-city-qgis-min/wkp/knutux/*
+           ;; resources/cpt-city-qgis-min/wkp/lilleskut/*
+           ;; resources/cpt-city-qgis-min/wkp/plumbago/*
+           ;; resources/cpt-city-qgis-min/wkp/precip/*
+           ;; resources/cpt-city-qgis-min/wkp/schwarzwald/*
+           ;; resources/cpt-city-qgis-min/wkp/shadowxfox/*
+           ;; resources/cpt-city-qgis-min/wkp/tubs/*
+           license:cc-by-sa3.0
+           ;; resources/cpt-city-qgis-min/cb/*
+           ;; resources/cpt-city-qgis-min/jjg/cbac/*
+           ;; resources/cpt-city-qgis-min/jjg/cbcont/*
+           ;; resources/cpt-city-qgis-min/jjg/polarity/*
+           license:asl1.1
+           ;; resources/cpt-city-qgis-min/ds/*
+           (license:fsf-free
+            "https://www.deviantart.com/webgoddess/art/Reddish-Inspired-Gradients-42208824")
+           ;; resources/cpt-city-qgis-min/es/*
+           (license:fsdg-compatible
+            "https://www.deviantart.com/elvensword")
+           ;; resources/cpt-city-qgis-min/gist/*
+           (license:non-copyleft "file://debian/copyright"
+                                 "BSD-like-gist")
+           ;; resources/cpt-city-qgis-min/go2/webtwo/*
+           (license:fsf-free "file://debian/copyright"
+                             "Go Squared")
+           ;; resources/cpt-city-qgis-min/h5/*
+           license:expat
+           ;; resources/cpt-city-qgis-min/jm/*
+           (license:non-copyleft "file://debian/copyright"
+                                 "Jim Mossman Attribution")
+           ;; resources/cpt-city-qgis-min/ncl/*
+           (license:non-copyleft
+            "https://www.ncl.ucar.edu/Download/NCL_source_license.shtml"
+            "NCL Source Code License")
+           ;; resources/cpt-city-qgis-min/os/*
+           ;; resources/cpt-city-qgis-min/ukmo/*
+           license:ogl-psi1.0
+           ;; resources/cpt-city-qgis-min/wkp/ice/*
+           license:gfdl1.2+-without-invariant-sections
+           ;; src/gui/symbology/characterwidget.cpp
+           ;; src/gui/symbology/characterwidget.h
+           ;; src/providers/oracle/ocispatial/main.cpp
+           ;; src/providers/oracle/ocispatial/qsql_ocispatial.cpp
+           ;; src/providers/oracle/ocispatial/qsql_ocispatial.h
+           ;; src/providers/oracle/ocispatial/qsqlcachedresult_p.h
+           ;; src/providers/spatialite/qspatialite/qsql_spatialite.cpp
+           ;; src/providers/spatialite/qspatialite/qsql_spatialite.h
+           ;; src/providers/spatialite/qspatialite/qsqlcachedresult_p.h
+           ;; src/providers/spatialite/qspatialite/smain.cpp
+           ;; tests/qt_modeltest/modeltest.cpp
+           ;; tests/qt_modeltest/modeltest.h
+           ;; tests/qt_modeltest/tst_modeltest.cpp
+           ;; tests/qt_modeltest/dynamictreemodel.cpp
+           ;; tests/qt_modeltest/dynamictreemodel.h
+           (license:fsf-free
+            "file://debian/copyright"
+            "QT-Commercial or LGPL-2.1 with Digia Qt LGPL Exception 1.1 or GPL-3")))))
-- 
2.23.0

[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Sun, 08 Dec 2019 03:21:02 GMT) Full text and rfc822 format available.

Message #20 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Wiktor Żelazny <wz <at> freeshell.de>
To: 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Sat, 7 Dec 2019 11:51:42 +0100
[Message part 1 (text/plain, inline)]
On Thu, Dec 05, 2019 at 04:49:38PM +0530, Arun Isaac wrote:

> Please find attached my WIP patchset.

Impressive. Unfortunately, I could not test it because of busyness and
the savannah issue.

Thank you for your work,

WŻ
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Tue, 10 Dec 2019 17:10:01 GMT) Full text and rfc822 format available.

Message #23 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Wiktor Żelazny <wz <at> freeshell.de>, 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Tue, 10 Dec 2019 22:38:40 +0530
[Message part 1 (text/plain, inline)]
> Impressive. Unfortunately, I could not test it because of busyness and
> the savannah issue.

No problem! Take your time. I am working on the tests now. That will
likely take another eternity, but I'm making steady progress.

Also, I just read this email. Please CC me in the future. That will help
me take note sooner.

Cheers! :-)
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Wed, 18 Dec 2019 06:22:01 GMT) Full text and rfc822 format available.

Message #26 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Wed, 18 Dec 2019 07:21:18 +0100
[Message part 1 (text/plain, inline)]
Hi Arun,

On Thu, 05 Dec 2019 16:49:38 +0530
Arun Isaac <arunisaac <at> systemreboot.net> wrote:

> Please find attached my WIP patchset. With this patchset, qgis builds
> and runs successfully. Pending work includes

The last patch (0009 for QGIS itself) does not apply. Do you have an
updated patch?

Thanks,

Björn
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Wed, 18 Dec 2019 09:00:01 GMT) Full text and rfc822 format available.

Message #29 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Wed, 18 Dec 2019 09:59:51 +0100
[Message part 1 (text/plain, inline)]
Hi Arun,

On Thu, 05 Dec 2019 16:49:38 +0530
Arun Isaac <arunisaac <at> systemreboot.net> wrote:

> From 07056365b692b896419f108ec072291ab2bba7e1 Mon Sep 17 00:00:00 2001
> From: Arun Isaac <arunisaac <at> systemreboot.net>
> Date: Thu, 5 Dec 2019 01:43:42 +0530
> Subject: [PATCH 2/9] gnu: Add proj.
> 
> * gnu/packages/geo.scm (proj): New variable.

We should clean up proj/proj.4 a bit more. I have to admit that I have
neglected this topic a bit, because it is tedious :-)

Proj/Proj.4 have different dependencies now (glib vs sqlite). This could
be OK due to the big change they made, but it could also hint a
packaging problem. I haven't looked yet into these details.

Reverse-dependencies:

At least now we have some packages depending on both proj and proj4,
for example:

* proj4-->postgis, proj->gdal->postgis

I will attach the full graph of:

$ guix graph -t reverse-package proj proj.4

Maybe we can totally eliminate proj.4, if all its dependencies are happy
with the 5+ (breaking) changes. If we cannot remove proj.4, at least
the graph should be separated. The "connecting package" is gdal (and
geotiff).

I know this is a bit out-of-scope of the QGIS-patch, but I think we
should clean this up before.

Björn
[both.dot (application/msword-template, attachment)]
[both.svg (image/svg+xml, attachment)]
[Message part 4 (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Wed, 18 Dec 2019 09:08:02 GMT) Full text and rfc822 format available.

Message #32 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Wed, 18 Dec 2019 10:07:51 +0100
[Message part 1 (text/plain, inline)]
On Thu, 05 Dec 2019 16:49:38 +0530
Arun Isaac <arunisaac <at> systemreboot.net> wrote:

> Subject: [PATCH 4/9] gnu: libspatialindex: Update to 1.9.3.

[..]

> -    (version "1.8.5")
> +    (version "1.9.3")
>      (source
>       (origin
>         (method url-fetch)
>         (uri (string-append
> "https://download.osgeo.org/libspatialindex/"
> -                           "spatialindex-src-" version ".tar.gz"))
> +                           "spatialindex-src-" version ".tar.bz2"))

I cannot find libspatialindex 1.9.3 here:

https://download.osgeo.org/libspatialindex/

How could you build it (Probably answer: You guix downloaded it in
your store and it was found by the right checksum)?

I found a download link here:

https://libspatialindex.org/#download

Or we better take the git sources? Could you please update the patch?

Thanks,

Björn
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Fri, 20 Dec 2019 16:54:02 GMT) Full text and rfc822 format available.

Message #35 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
Cc: 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Fri, 20 Dec 2019 22:22:41 +0530
[Message part 1 (text/plain, inline)]
> I cannot find libspatialindex 1.9.3 here:
>
> https://download.osgeo.org/libspatialindex/

I have fixed this now.

> How could you build it (Probably answer: You guix downloaded it in
> your store and it was found by the right checksum)?

That's probably what happened, I guess.

> I found a download link here:
>
> https://libspatialindex.org/#download
>
> Or we better take the git sources? Could you please update the patch?

Let's use the source tarball for now. I think it's stable enough and the
link won't break again.

Yes, we should use proj instead of proj.4 wherever possible. But, if I
remember correctly, some packages work only with proj.4 for now. Also,
we should push some of the simpler patches (say, the simple update
patches) to master right away. That will help to declutter this bug
report a little bit. WDYT?

Please find attached a new patchset. Around 56 tests are still failing
in the qgis build. I brought it down from around a 100 or so.

[qgis-patcheset.patch (text/x-patch, inline)]
From 77ac87f26e493f0e4a8eb2f4b38f8ae679e6765f Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Wed, 4 Dec 2019 19:55:17 +0530
Subject: [PATCH 01/14] gnu: geos: Update to 3.8.0.

* gnu/packages/geo.scm (geos): Update to 3.8.0.
---
 gnu/packages/geo.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 278ece094c..b6948a45c9 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -4,7 +4,7 @@
 ;;; Copyright © 2017, 2018 Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2018 Ricardo Wurmus <rekado <at> elephly.net>
-;;; Copyright © 2018 Arun Isaac <arunisaac <at> systemreboot.net>
+;;; Copyright © 2018, 2019 Arun Isaac <arunisaac <at> systemreboot.net>
 ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua <at> nextjournal.com>
 ;;; Copyright © 2018, 2019 Julien Lepiller <julien <at> lepiller.eu>
 ;;; Copyright © 2019 Guillaume Le Vaillant <glv <at> posteo.net>
@@ -77,7 +77,7 @@
 (define-public geos
   (package
     (name "geos")
-    (version "3.7.1")
+    (version "3.8.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://download.osgeo.org/geos/geos-"
@@ -85,7 +85,7 @@
                                   ".tar.bz2"))
               (sha256
                (base32
-                "1312m02xk4sp6f1xdpb9w0ic0zbxg90p5y66qnwidl5fksscf1h0"))))
+                "1mb2v9fy1gnbjhcgv0xny11ggfb17vkzsajdyibigwsxr4ylq4cr"))))
     (build-system gnu-build-system)
     (arguments `(#:phases
                  (modify-phases %standard-phases
-- 
2.23.0

From 471bcacb79de672781a775cb475099c4c0e79927 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:43:42 +0530
Subject: [PATCH 02/14] gnu: Add proj.

* gnu/packages/geo.scm (proj): New variable.
---
 gnu/packages/geo.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index b6948a45c9..1a1a2c2b37 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -321,6 +321,41 @@ fully fledged Spatial SQL capabilities.")
                    license:mpl1.1
                    license:public-domain))))
 
+(define-public proj
+  (package
+    (name "proj")
+    (version "6.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://download.osgeo.org/proj/proj-"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "0l1as8f4zfg74fms6h5p5psziw0lpznja1xnirzsscpnfbwc005k"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("sqlite" ,sqlite)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://proj.org/")
+    (synopsis "Coordinate transformation software")
+    (description
+     "Proj is a generic coordinate transformation software that transforms
+geospatial coordinates from one coordinate reference system (CRS) to another.
+This includes cartographic projections as well as geodetic transformations.
+PROJ includes command line applications for easy conversion of coordinates
+from text files or directly from user input.  In addition, proj also exposes
+an application programming interface that lets developers use the
+functionality of proj in their own software.")
+    (license (list license:expat
+                   ;; src/projections/patterson.cpp
+                   license:asl2.0
+                   ;; src/geodesic.*, src/tests/geodtest.cpp
+                   license:x11
+                   ;; cmake/*
+                   license:boost1.0))))
+
 (define-public proj.4
   (package
     (name "proj.4")
-- 
2.23.0

From e0d398a4c6e643b4f8079a318c3c2a0637e6a067 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:45:30 +0530
Subject: [PATCH 03/14] gnu: gdal: Update to 3.0.2.

* gnu/packages/geo.scm (gdal): Update to 3.0.2.
[inputs]: Add proj.
---
 gnu/packages/geo.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 1a1a2c2b37..6c7eeae093 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -569,7 +569,7 @@ development.")
 (define-public gdal
   (package
     (name "gdal")
-    (version "2.2.4")
+    (version "3.0.2")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -577,7 +577,7 @@ development.")
                      version ".tar.gz"))
               (sha256
                (base32
-                "1951f7b69x3d1vic0rmq92q8f4bj3hbxnxmj5jl0cc3zg0isgmdr"))
+                "0f80izh9wshrsw55kg9abpip74hk6frk3hgqrkqbyn3f6i8g2z3q"))
               (modules '((guix build utils)))
               (snippet
                 `(begin
@@ -629,6 +629,7 @@ development.")
        ("libtiff" ,libtiff)
        ("libwebp" ,libwebp)
        ("pcre" ,pcre)
+       ("proj" ,proj)
        ("zlib" ,zlib)))
     (home-page "http://www.gdal.org/")
     (synopsis "Raster and vector geospatial data format library")
-- 
2.23.0

From 80ae71abb1a40d5b49b33ad2565b675561caad7b Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:46:28 +0530
Subject: [PATCH 04/14] gnu: libspatialindex: Update to 1.9.3.

* gnu/packages/geo.scm (libspatialindex): Update to 1.9.3.
[build-system]: Switch to cmake-build-system.
[source]: Update URI.
---
 gnu/packages/geo.scm | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 6c7eeae093..f211f49842 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1048,16 +1048,16 @@ volunteers.")
 (define-public libspatialindex
   (package
     (name "libspatialindex")
-    (version "1.8.5")
+    (version "1.9.3")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "https://download.osgeo.org/libspatialindex/"
-                           "spatialindex-src-" version ".tar.gz"))
+       (uri (string-append "https://github.com/libspatialindex/libspatialindex/releases/download/"
+                           version "/spatialindex-src-" version ".tar.bz2"))
        (sha256
         (base32
-         "1vxzm7kczwnb6qdmc0hb00z8ykx11zk3sb68gc7rch4vrfi4dakw"))))
-    (build-system gnu-build-system)
+         "02n5vjcyk04w0djidyp21hfbxfpbbara8ifd9nml6158rwqr8lja"))))
+    (build-system cmake-build-system)
     (home-page "https://libspatialindex.org")
     (synopsis "Spatial indexing library")
     (description "The purpose of this library is to provide:
-- 
2.23.0

From 06c9c61daef220d16f0e5e8c1c5eb1a9da499457 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 01:47:47 +0530
Subject: [PATCH 05/14] gnu: libgeotiff: Update to 1.5.1.

* gnu/packages/geo.scm (libgeotiff): Update to 1.5.1.
[inputs]: Replace proj.4 with proj.
---
 gnu/packages/geo.scm | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index f211f49842..2019e633fb 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -227,35 +227,30 @@ and driving.")
 (define-public libgeotiff
   (package
     (name "libgeotiff")
-    (version "1.4.3")
+    (version "1.5.1")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-"
                            version ".tar.gz"))
        (sha256
-        (base32 "0rbjqixi4c8yz19larlzq6jda0px2gpmpp9c52cyhplbjsdhsldq"))
+        (base32 "0b31mlzcv5b1y7jdvb7p0pa3xradrg3x5g32ym911lbhq4rrgsgr"))
        (modules '((guix build utils)))
        (snippet
         '(begin
            ;; Remove .csv files, distributed from EPSG under a restricted
            ;; license. See LICENSE for full license text.
            (for-each delete-file (find-files "." "\\.csv$"))
-           ;; Now that we have removed the csv files, we need to modify the Makefile.
-           (substitute* "Makefile.in"
-             (("^all-am: .*$")
-              "all-am: Makefile $(LTLIBRARIES) $(HEADERS) geo_config.h\n")
-             (("^install-data-am: .*$")
-              "install-data-am: install-includeHEADERS"))
            #t))))
     (build-system gnu-build-system)
     (inputs
      `(("libjpeg-turbo" ,libjpeg-turbo)
        ("libtiff" ,libtiff)
-       ("proj.4" ,proj.4)
+       ("proj" ,proj)
        ("zlib" ,zlib)))
     (arguments
-     `(#:configure-flags
+     `(#:tests? #f
+       #:configure-flags
        (list (string-append "--with-zlib")
              (string-append "--with-jpeg")
              (string-append "--with-libtiff=" (assoc-ref %build-inputs "libtiff")))))
-- 
2.23.0

From f7fc3ed9cea3be242ff39c85ffba1961874b10e7 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:28:38 +0530
Subject: [PATCH 06/14] licenses: Add GNU Free Documentation licenses.

* guix/licenses.scm (gfdl1.2+, gfdl1.2+-without-invariant-sections): New
variables.
---
 guix/licenses.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 41d4fefad2..24e69ac1c5 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -54,6 +54,7 @@
             freetype
             freebsd-doc
             giftware
+            gfdl1.2+ gfdl1.2+-without-invariant-sections
             gpl1 gpl1+ gpl2 gpl2+ gpl3 gpl3+
             gfl1.0
             fdl1.1+ fdl1.2+ fdl1.3+
@@ -284,6 +285,16 @@ at URI, which may be a file:// URI pointing the package's tree."
            "http://directory.fsf.org/wiki/License:Freetype"
            "https://www.gnu.org/licenses/license-list.html#freetype"))
 
+(define gfdl1.2+
+  (license "GFDL 1.2+"
+           "https://www.gnu.org/licenses/old-licenses/fdl-1.2.en.html"
+           "https://www.gnu.org/licenses/license-list.html#FDL"))
+
+(define gfdl1.2+-without-invariant-sections
+  (license "GFDL 1.2+ without invariant sections"
+           "https://www.gnu.org/licenses/old-licenses/fdl-1.2.en.html"
+           "https://www.gnu.org/licenses/license-list.html#FDL"))
+
 (define giftware
   (license "Giftware"
            "http://liballeg.org/license.html"
-- 
2.23.0

From 37481bb118f3d3a4e3c6b525d50c7558ddd69e20 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:30:09 +0530
Subject: [PATCH 07/14] licenses: Add Open Government Licence for Public Sector
 Information.

* guix/licenses.scm (ogl-psi1.0): New variable.
---
 guix/licenses.scm | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 24e69ac1c5..3b79e7c1c3 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -76,6 +76,7 @@
             ms-pl
             ncsa
             nmap
+            ogl-psi1.0
             openldap2.8 openssl
             perl-license
             psfl public-domain
@@ -527,6 +528,11 @@ at URI, which may be a file:// URI pointing the package's tree."
            "https://svn.nmap.org/nmap/COPYING"
            "https://fedoraproject.org/wiki/Licensing/Nmap"))
 
+(define ogl-psi1.0
+  (license "Open Government Licence for Public Sector Information"
+           "https://www.nationalarchives.gov.uk/doc/open-government-licence/version/1/"
+           #f))
+
 (define openssl
   (license "OpenSSL"
            "http://directory.fsf.org/wiki/License:OpenSSL"
-- 
2.23.0

From 811ae1578e141e4508dfbde96f51c749f4ec9af1 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:31:50 +0530
Subject: [PATCH 08/14] licenses: Add QWT 1.0 license.

* guix/licenses.scm (qwt1.0): New variable.
---
 guix/licenses.scm | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 3b79e7c1c3..80655b7ab4 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -81,6 +81,7 @@
             perl-license
             psfl public-domain
             qpl
+            qwt1.0
             repoze
             ruby
             sgifreeb2.0
@@ -565,6 +566,11 @@ at URI, which may be a file:// URI pointing the package's tree."
            "http://directory.fsf.org/wiki/License:QPLv1.0"
            "http://www.gnu.org/licenses/license-list.html#QPL"))
 
+(define qwt1.0
+  (license "QWT 1.0"
+           "http://qwt.sourceforge.net/qwtlicense.html"
+           "GNU Lesser General Public License with exceptions"))
+
 (define repoze
   (license "Repoze"
            "http://repoze.org/LICENSE.txt"
-- 
2.23.0

From 641c650636b32142670f455da3f39990bd308c26 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Fri, 20 Dec 2019 18:52:38 +0530
Subject: [PATCH 09/14] gnu: postgis: Update to 3.0.0.

* gnu/packages/geo.scm (postgis): Update to 3.0.0.
[inputs]: Add json-c and libjpeg-turbo. Replace proj.4 with proj.
---
 gnu/packages/geo.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 2019e633fb..2b2f090639 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -676,14 +676,14 @@ utilities for data translation and processing.")
 (define-public postgis
   (package
     (name "postgis")
-    (version "2.4.8")
+    (version "3.0.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://download.osgeo.org/postgis/source/postgis-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "0nanza15xzfhbpbq49p1xqz96dgbsam5332y9zj6snmz2mq685ll"))))
+                "15557fbk0xkngihwhqsbdyz2ng49blisf5zydw81j0gabk6x4vy0"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f
@@ -702,10 +702,12 @@ utilities for data translation and processing.")
     (inputs
      `(("gdal" ,gdal)
        ("geos" ,geos)
+       ("json-c" ,json-c)
+       ("libjpeg" ,libjpeg-turbo)
        ("libxml2" ,libxml2)
        ("pcre" ,pcre)
        ("postgresql" ,postgresql)
-       ("proj.4" ,proj.4)))
+       ("proj" ,proj)))
     (native-inputs
      `(("perl" ,perl)
        ("pkg-config" ,pkg-config)))
-- 
2.23.0

From f9dc84e6fc7ba0adb4bd80715f12ed70d531ac66 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Fri, 20 Dec 2019 21:36:50 +0530
Subject: [PATCH 10/14] gnu: gdal: Enable ODS format driver.

* gnu/packages/geo.scm (gdal)[inputs]: Add expat.
[arguments]: Add --with-expat to #:configure-flags.
---
 gnu/packages/geo.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 2b2f090639..54f40c0ed9 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -606,6 +606,7 @@ development.")
            (with "--with-libtiff" "libtiff")
            (with "--with-geotiff" "libgeotiff")
            (with "--with-libz" "zlib")
+           (with "--with-expat" "expat")
            "--with-pcre"))
        #:phases
        (modify-phases %standard-phases
@@ -614,7 +615,8 @@ development.")
              (substitute* "frmts/mrf/mrf_band.cpp"
                (("\"../zlib/zlib.h\"") "<zlib.h>")))))))
     (inputs
-     `(("freexl" ,freexl)
+     `(("expat" ,expat)
+       ("freexl" ,freexl)
        ("geos" ,geos)
        ("giflib" ,giflib)
        ("json-c" ,json-c)
-- 
2.23.0

From 0bb22bac6a58141d918245654a7f6abd172204ca Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Fri, 20 Dec 2019 21:39:22 +0530
Subject: [PATCH 11/14] gnu: gdal: Enable GPKG format driver.

* gnu/packages/geo.scm (gdal)[inputs]: Enable sqlite.
[arguments]: Add --with-sqlite3 to #:configure-flags.
---
 gnu/packages/geo.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 54f40c0ed9..8bdd6358a6 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -607,6 +607,7 @@ development.")
            (with "--with-geotiff" "libgeotiff")
            (with "--with-libz" "zlib")
            (with "--with-expat" "expat")
+           (with "--with-sqlite3" "sqlite")
            "--with-pcre"))
        #:phases
        (modify-phases %standard-phases
@@ -627,6 +628,7 @@ development.")
        ("libwebp" ,libwebp)
        ("pcre" ,pcre)
        ("proj" ,proj)
+       ("sqlite" ,sqlite)
        ("zlib" ,zlib)))
     (home-page "http://www.gdal.org/")
     (synopsis "Raster and vector geospatial data format library")
-- 
2.23.0

From 81f2314930100666a98f29a1c10a624e90bc74bc Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Fri, 20 Dec 2019 21:54:44 +0530
Subject: [PATCH 12/14] gnu: gdal: Enable netCDF format driver.

* gnu/packages/geo.scm (gdal)[inputs]: Add netcdf.
---
 gnu/packages/geo.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 8bdd6358a6..768ddd862d 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -626,6 +626,7 @@ development.")
        ("libpng" ,libpng)
        ("libtiff" ,libtiff)
        ("libwebp" ,libwebp)
+       ("netcdf" ,netcdf)
        ("pcre" ,pcre)
        ("proj" ,proj)
        ("sqlite" ,sqlite)
-- 
2.23.0

From 742ad584435ec3c3138a900043e3a00cfc9d39e4 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Fri, 20 Dec 2019 21:46:21 +0530
Subject: [PATCH 13/14] gnu: python: Enable loadable sqlite extensions.

* gnu/packages/python.scm (python-2.7)[arguments]: Add
--enable-loadable-sqlite-extensions to #:configure-flags.
---
 gnu/packages/python.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 048941e8a9..eb15a0e840 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -145,6 +145,7 @@
              "--with-system-ffi"                  ;build ctypes
              "--with-ensurepip=install"           ;install pip and setuptools
              "--enable-unicode=ucs4"
+             "--enable-loadable-sqlite-extensions"
 
              ;; Prevent the installed _sysconfigdata.py from retaining a reference
              ;; to coreutils.
-- 
2.23.0

From c08492669cf43550f0797d83a0a5461ba1311e64 Mon Sep 17 00:00:00 2001
From: Arun Isaac <arunisaac <at> systemreboot.net>
Date: Thu, 5 Dec 2019 16:32:49 +0530
Subject: [PATCH 14/14] gnu: Add qgis.

* gnu/packages/geo.scm (qgis): New variable.
---
 gnu/packages/geo.scm | 281 ++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 280 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 768ddd862d..cb9779807f 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -45,21 +45,26 @@
   #:use-module (guix utils)
   #:use-module (gnu packages astronomy)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages datastructures)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages fonts)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages haskell-apps)
   #:use-module (gnu packages image)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages java)
+  #:use-module (gnu packages kde)
   #:use-module (gnu packages lua)
+  #:use-module (gnu packages maths)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -69,10 +74,12 @@
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages time)
   #:use-module (gnu packages web)
   #:use-module (gnu packages webkit)
   #:use-module (gnu packages wxwidgets)
-  #:use-module (gnu packages xml))
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xorg))
 
 (define-public geos
   (package
@@ -1329,3 +1336,275 @@ MaxMind DB files.")
     (description "Provides an API for the GeoIP2 web services and databases.
 The API also works with MaxMind’s free GeoLite2 databases.")
     (license license:asl2.0)))
+
+(define-public qgis
+  (package
+    (name "qgis")
+    (version "3.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://qgis.org/downloads/qgis-"
+                           version ".tar.bz2"))
+       (sha256
+        (base32
+         "04ph8abhq0f2hzq276a070nwyhzfrvyhswks6gx2z4pvv50irsr5"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:modules ((guix build cmake-build-system)
+                  ((guix build python-build-system) #:prefix python:)
+                  (guix build utils))
+       #:imported-modules (,@%cmake-build-system-modules
+                           (guix build python-build-system))
+       #:phases
+       (modify-phases %standard-phases
+         ;; Configure correct path to PyQt5 SIP directory
+         (add-after 'unpack 'configure-pyqt5-sip-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "cmake/FindPyQt5.cmake"
+               (("\"\\\\\\\\1\" PYQT5_SIP_DIR")
+                (string-append "\"" (assoc-ref inputs "python-pyqt+qscintilla")
+                               "/share/sip\" PYQT5_SIP_DIR")))
+             (substitute* (list "scripts/prepare-commit.sh"
+                                "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_uptodate.sh"
+                                "tests/code_layout/test_sipify.sh")
+               (("\\$\\(git rev-parse --show-toplevel\\)")
+                (getcwd)))
+             (substitute* "tests/code_layout/test_sip_include.sh"
+               (("^REV=.*") "REV=currentrev\n"))
+             #t))
+         (replace 'check
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "HOME" "/tmp")
+             (system (string-append (assoc-ref inputs "xorg-server") "/bin/Xvfb :1 &"))
+             (setenv "DISPLAY" ":1")
+             (setenv "TRAVIS" "true")
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+             (invoke "ctest"
+                     ;; Disable tests that require network access
+                     "-E" "qgis_filedownloader")))
+         (add-after 'install 'wrap
+           (assoc-ref python:%standard-phases 'wrap)))))
+    (inputs
+     `(("exiv2" ,exiv2)
+       ("expat" ,expat)
+       ("gdal" ,gdal)
+       ("geos" ,geos)
+       ("gsl" ,gsl)
+       ("libspatialindex" ,libspatialindex)
+       ("libspatialite" ,libspatialite)
+       ("libzip" ,libzip)
+       ("postgresql" ,postgresql)
+       ("proj" ,proj)
+       ("python" ,python)
+       ("python-gdal" ,python-gdal)
+       ("python-psycopg2" ,python-psycopg2)
+       ("python-pyqt+qscintilla" ,python-pyqt+qscintilla)
+       ("python-pyyaml" ,python-pyyaml)
+       ("qca" ,qca)
+       ("qscintilla" ,qscintilla)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtkeychain" ,qtkeychain)
+       ("qtlocation" ,qtlocation)
+       ("qtserialport" ,qtserialport)
+       ("qtsvg" ,qtsvg)
+       ("qttools" ,qttools)
+       ("qtwebkit" ,qtwebkit)
+       ("qwt" ,qwt)
+       ("sqlite" ,sqlite-with-column-metadata)))
+    (native-inputs
+     `(("bison" ,bison)
+       ("flex" ,flex)
+       ("perl" ,perl)
+       ("perl-yaml-tiny" ,perl-yaml-tiny)
+       ("python-mock" ,python-mock)
+       ("python-nose2" ,python-nose2)
+       ("shellcheck" ,shellcheck)
+       ("xorg-server" ,xorg-server-for-tests)))
+    (home-page "https://qgis.org")
+    (synopsis "Geographical information system")
+    (description "QGIS is an easy to use Geographical Information
+System (GIS).  It is a GIS data viewer and editor.  QGIS supports a number of
+raster and vector data formats, with new support easily added using the plugin
+architecture.")
+    (license
+     (list license:gpl2+
+           ;; qgis.dtd
+           ;; src/core/pal/rtree.hpp
+           ;; src/plugins/grass/qtermwidget/konsole_wcwidth.*
+           ;; cmake/PythonCompile.py
+           ;; resources/cpt-city-qgis-min/dg/*
+           ;; resources/cpt-city-qgis-min/gery/*
+           ;; resources/cpt-city-qgis-min/jjg/dem/*
+           ;; resources/cpt-city-qgis-min/jjg/misc/*
+           ;; resources/cpt-city-qgis-min/jjg/physics/*
+           ;; tests/testdata/cpt-city/jjg/misc/*
+           ;; resources/cpt-city-qgis-min/km/*
+           ;; resources/cpt-city-qgis-min/pd/*
+           ;; resources/cpt-city-qgis-min/wkp/encyclopedia/*
+           ;; resources/cpt-city-qgis-min/wkp/template/*
+           ;; resources/cpt-city-qgis-min/ocal/*
+           ;; resources/cpt-city-qgis-min/rf/*
+           ;; resources/cpt-city-qgis-min/tp/*
+           license:public-domain
+           ;; python/plugins/processing/modeler/ModelerArrowItem.py
+           ;; src/app/qgssettingstree.cpp
+           ;; src/app/qgssettingstree.h
+           ;; src/app/qgsvariantdelegate.cpp
+           ;; src/app/qgsvariantdelegate.h
+           ;; src/app/qtmain_android.cpp
+           ;; cmake/Bison.cmake
+           ;; cmake/FindExpat.cmake
+           ;; cmake/FindGRASS.cmake
+           ;; cmake/FindPostgres.cmake
+           ;; cmake/FindProj.cmake
+           ;; cmake/FindSqlite3.cmake
+           ;; cmake/Flex.cmake
+           ;; cmake/FindFcgi.cmake
+           ;; cmake/FindGDAL.cmake
+           ;; cmake/FindGEOS.cmake
+           ;; cmake/FindGSL.cmake
+           ;; cmake/FindIconv.cmake
+           ;; cmake/FindOSGEARTH.cmake
+           ;; cmake/FindLibPython.py
+           ;; cmake/FindPyQt4.cmake
+           ;; cmake/FindPyQt4.py
+           ;; cmake/FindPyQt5.cmake
+           ;; cmake/FindPyQt5.py
+           ;; cmake/FindPythonLibrary.cmake
+           ;; cmake/FindSIP.cmake
+           ;; cmake/FindSIP.py
+           ;; cmake/PythonMacros.cmake
+           ;; cmake/SIPMacros.cmake
+           ;; cmake/FindQCA.cmake
+           ;; cmake/FindQextserialport.cmake
+           ;; cmake/FindQGIS.cmake
+           ;; cmake/FindQsci.cmake
+           ;; cmake/FindQsci.py
+           ;; cmake/FindQScintilla.cmake
+           ;; cmake/FindQwt.cmake
+           ;; cmake/FindSpatiaLite.cmake
+           ;; cmake/MacBundleMacros.cmake
+           ;; cmake/MacPlistMacros.cmake
+           ;; cmake/PyQtMacros.cmake
+           ;; cmake/QCAMacros.cmake
+           ;; cmake/UsePythonTest.cmake
+           license:bsd-3
+           ;; external//qwtpolar-1.1.1/*
+           ;; src/gui/raster/qwt5_histogram_item.h
+           license:qwt1.0
+           ;; external/astyle/*
+           license:lgpl2.1+
+           ;; external/nmea/config.h
+           ;; external/nmea/context.c
+           ;; external/nmea/context.h
+           ;; external/nmea/gmath.c
+           ;; external/nmea/gmath.h
+           ;; external/nmea/info.c
+           ;; external/nmea/info.h
+           ;; external/nmea/nmeatime.h
+           ;; external/nmea/parse.c
+           ;; external/nmea/parse.h
+           ;; external/nmea/parser.h
+           ;; external/nmea/sentence.c
+           ;; external/nmea/sentence.h
+           ;; external/nmea/time.c
+           ;; external/nmea/tok.c
+           ;; external/nmea/tok.h
+           ;; external/nmea/units.h
+           ;; src/plugins/evis/*
+           ;; src/plugins/grass/qtermwidget/kprocess.cpp
+           ;; src/plugins/grass/qtermwidget/kprocess.h
+           ;; src/plugins/grass/qtermwidget/kptydevice.cpp
+           ;; src/plugins/grass/qtermwidget/kptydevice.h
+           ;; src/plugins/grass/qtermwidget/kptyprocess.cpp
+           ;; src/plugins/grass/qtermwidget/kptyprocess.h
+           ;; src/plugins/grass/qtermwidget/kpty.cpp
+           ;; src/plugins/grass/qtermwidget/kpty.h
+           ;; src/plugins/grass/qtermwidget/kpty_p.h
+           ;; src/plugins/grass/qtermwidget/qtermwidget.cpp
+           ;; src/plugins/grass/qtermwidget/qtermwidget.h
+           ;; src/plugins/grass/qtermwidget/TerminalCharacterDecoder.cpp
+           ;; src/plugins/grass/qtermwidget/TerminalCharacterDecoder.h
+           license:lgpl2.0+
+           ;; src/core/pal/*
+           ;; resources/cpt-city-qgis-min/ds9/*
+           ;; resources/cpt-city-qgis-min/grass/*
+           license:gpl3+
+           ;; src/core/symbology/qgscolorbrewerpalette.cpp
+           license:asl2.0
+           ;; images/themes/default/*
+           ;; resources/cpt-city-qgis-min/gps/*
+           ;; resources/cpt-city-qgis-min/nd/*
+           ;; resources/cpt-city-qgis-min/wkp/country/*
+           ;; resources/cpt-city-qgis-min/wkp/jarke/*
+           ;; resources/cpt-city-qgis-min/wkp/jarke/*
+           ;; resources/cpt-city-qgis-min/wkp/knutux/*
+           ;; resources/cpt-city-qgis-min/wkp/lilleskut/*
+           ;; resources/cpt-city-qgis-min/wkp/plumbago/*
+           ;; resources/cpt-city-qgis-min/wkp/precip/*
+           ;; resources/cpt-city-qgis-min/wkp/schwarzwald/*
+           ;; resources/cpt-city-qgis-min/wkp/shadowxfox/*
+           ;; resources/cpt-city-qgis-min/wkp/tubs/*
+           license:cc-by-sa3.0
+           ;; resources/cpt-city-qgis-min/cb/*
+           ;; resources/cpt-city-qgis-min/jjg/cbac/*
+           ;; resources/cpt-city-qgis-min/jjg/cbcont/*
+           ;; resources/cpt-city-qgis-min/jjg/polarity/*
+           license:asl1.1
+           ;; resources/cpt-city-qgis-min/ds/*
+           (license:fsf-free
+            "https://www.deviantart.com/webgoddess/art/Reddish-Inspired-Gradients-42208824")
+           ;; resources/cpt-city-qgis-min/es/*
+           (license:fsdg-compatible
+            "https://www.deviantart.com/elvensword")
+           ;; resources/cpt-city-qgis-min/gist/*
+           (license:non-copyleft "file://debian/copyright"
+                                 "BSD-like-gist")
+           ;; resources/cpt-city-qgis-min/go2/webtwo/*
+           (license:fsf-free "file://debian/copyright"
+                             "Go Squared")
+           ;; resources/cpt-city-qgis-min/h5/*
+           license:expat
+           ;; resources/cpt-city-qgis-min/jm/*
+           (license:non-copyleft "file://debian/copyright"
+                                 "Jim Mossman Attribution")
+           ;; resources/cpt-city-qgis-min/ncl/*
+           (license:non-copyleft
+            "https://www.ncl.ucar.edu/Download/NCL_source_license.shtml"
+            "NCL Source Code License")
+           ;; resources/cpt-city-qgis-min/os/*
+           ;; resources/cpt-city-qgis-min/ukmo/*
+           license:ogl-psi1.0
+           ;; resources/cpt-city-qgis-min/wkp/ice/*
+           license:gfdl1.2+-without-invariant-sections
+           ;; src/gui/symbology/characterwidget.cpp
+           ;; src/gui/symbology/characterwidget.h
+           ;; src/providers/oracle/ocispatial/main.cpp
+           ;; src/providers/oracle/ocispatial/qsql_ocispatial.cpp
+           ;; src/providers/oracle/ocispatial/qsql_ocispatial.h
+           ;; src/providers/oracle/ocispatial/qsqlcachedresult_p.h
+           ;; src/providers/spatialite/qspatialite/qsql_spatialite.cpp
+           ;; src/providers/spatialite/qspatialite/qsql_spatialite.h
+           ;; src/providers/spatialite/qspatialite/qsqlcachedresult_p.h
+           ;; src/providers/spatialite/qspatialite/smain.cpp
+           ;; tests/qt_modeltest/modeltest.cpp
+           ;; tests/qt_modeltest/modeltest.h
+           ;; tests/qt_modeltest/tst_modeltest.cpp
+           ;; tests/qt_modeltest/dynamictreemodel.cpp
+           ;; tests/qt_modeltest/dynamictreemodel.h
+           (license:fsf-free
+            "file://debian/copyright"
+            "QT-Commercial or LGPL-2.1 with Digia Qt LGPL Exception 1.1 or GPL-3")))))
-- 
2.23.0

[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Mon, 23 Dec 2019 06:56:02 GMT) Full text and rfc822 format available.

Message #38 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>,
 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Mon, 23 Dec 2019 07:55:02 +0100
[Message part 1 (text/plain, inline)]
Hi Arun,

On Fri, 20 Dec 2019 22:22:41 +0530
Arun Isaac <arunisaac <at> systemreboot.net> wrote:

> Yes, we should use proj instead of proj.4 wherever possible. But, if I
> remember correctly, some packages work only with proj.4 for now. Also,
> we should push some of the simpler patches (say, the simple update
> patches) to master right away. That will help to declutter this bug
> report a little bit. WDYT?

Sure.

Also, I think the licenses can be added right now.

Likewise the package updates, but probably not the python 2.7
modification, especially if python 3 also inherits it.
The latter should go to some other branch.

What's up with libgeotiff's disabled tests?

Also, I think we usually don't list the license of non-installed files
(like the cmake includes).
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Thu, 26 Dec 2019 13:40:02 GMT) Full text and rfc822 format available.

Message #41 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Danny Milosavljevic <dannym <at> scratchpost.org>
Cc: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>,
 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Thu, 26 Dec 2019 19:09:11 +0530
[Message part 1 (text/plain, inline)]
>> Also, we should push some of the simpler patches (say, the simple
>> update patches) to master right away. That will help to declutter
>> this bug report a little bit. WDYT?
>
> Sure.

I have pushed the patches regarding geos, proj, libgeotiff, gdal,
postgis and libspatialindex.

> Also, I think the licenses can be added right now.

I am not sure of the licenses of qgis. They need to be double
checked. So, I think we should wait until then to push those license
patches.

> Likewise the package updates, but probably not the python 2.7
> modification, especially if python 3 also inherits it.
> The latter should go to some other branch.

That's right. The python modification would trigger too many
rebuilds. Do you know which branch I should push it to?

> What's up with libgeotiff's disabled tests?

That was a WIP patch where the tests were failing. In the patch I
pushed, I fixed the tests and enabled them.

> Also, I think we usually don't list the license of non-installed files
> (like the cmake includes).

Ok, I made this modification before pushing the patches.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Thu, 26 Dec 2019 14:54:01 GMT) Full text and rfc822 format available.

Message #44 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <mbakke <at> fastmail.com>
To: Arun Isaac <arunisaac <at> systemreboot.net>,
 Danny Milosavljevic <dannym <at> scratchpost.org>
Cc: Björn Höfling <bjoern.hoefling <at> bjoernhoefling.de>,
 38149 <at> debbugs.gnu.org, Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Thu, 26 Dec 2019 15:53:22 +0100
[Message part 1 (text/plain, inline)]
Arun Isaac <arunisaac <at> systemreboot.net> writes:

> That's right. The python modification would trigger too many
> rebuilds. Do you know which branch I should push it to?

Python 2 has 6682 dependent packages, so this change should go to the
'core-updates' branch according to the "Submitting Patches" section of
the manual.

Please make sure Python 3 also works with this change, as the configure
flag is indeed inherited as Danny pointed out.

Thank you!
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Fri, 27 Dec 2019 02:08:01 GMT) Full text and rfc822 format available.

Message #47 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Marius Bakke <mbakke <at> fastmail.com>
Cc: Björn Höfling
 <bjoern.hoefling <at> bjoernhoefling.de>,
 Danny Milosavljevic <dannym <at> scratchpost.org>, 38149 <at> debbugs.gnu.org,
 Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Fri, 27 Dec 2019 07:36:57 +0530
[Message part 1 (text/plain, inline)]
> Python 2 has 6682 dependent packages, so this change should go to the
> 'core-updates' branch according to the "Submitting Patches" section of
> the manual.

Ok, makes sense.

> Please make sure Python 3 also works with this change, as the configure
> flag is indeed inherited as Danny pointed out.

I only need the python modification for Python 3. And, as far as I can
tell, everything builds and works fine. Should I make the modification
only to Python 3, instead of inheriting it through Python 2 as it is
now?
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Mon, 30 Dec 2019 15:41:02 GMT) Full text and rfc822 format available.

Message #50 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Wiktor Żelazny <wz <at> freeshell.de>
To: 38149 <at> debbugs.gnu.org
Cc: Arun Isaac <arunisaac <at> systemreboot.net>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Mon, 30 Dec 2019 16:40:25 +0100
[Message part 1 (text/plain, inline)]
On Tue, Dec 10, 2019 at 10:38:40PM +0530, Arun Isaac wrote:

> > Impressive. Unfortunately, I could not test it because of busyness
> > and the savannah issue.
>
> No problem! Take your time. I am working on the tests now. That will
> likely take another eternity, but I'm making steady progress.

Hi,

I built it today. It builds! It works! Good luck with the tests.
Crossing fingers so that your definition gets merged as some point.

Thanks for saving the day,

WŻ
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Mon, 27 Jan 2020 22:50:02 GMT) Full text and rfc822 format available.

Message #53 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Marius Bakke <mbakke <at> fastmail.com>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: Björn Höfling
 <bjoern.hoefling <at> bjoernhoefling.de>,
 Danny Milosavljevic <dannym <at> scratchpost.org>, 38149 <at> debbugs.gnu.org,
 Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Mon, 27 Jan 2020 23:48:49 +0100
[Message part 1 (text/plain, inline)]
Arun Isaac <arunisaac <at> systemreboot.net> writes:

>> Please make sure Python 3 also works with this change, as the configure
>> flag is indeed inherited as Danny pointed out.
>
> I only need the python modification for Python 3. And, as far as I can
> tell, everything builds and works fine. Should I make the modification
> only to Python 3, instead of inheriting it through Python 2 as it is
> now?

I don't really have an opinion on this, as it seems both approaches have
drawbacks and benefits...  So do whatever you think is best.

Now is a good time to push if you want the Python patch in Guix!  :-)
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Tue, 28 Jan 2020 05:06:02 GMT) Full text and rfc822 format available.

Message #56 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Marius Bakke <mbakke <at> fastmail.com>
Cc: Björn Höfling
 <bjoern.hoefling <at> bjoernhoefling.de>,
 Danny Milosavljevic <dannym <at> scratchpost.org>, 38149 <at> debbugs.gnu.org,
 Wiktor Żelazny <wz <at> freeshell.de>
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Tue, 28 Jan 2020 10:35:14 +0530
[Message part 1 (text/plain, inline)]
> Now is a good time to push if you want the Python patch in Guix!  :-)

I'm still struggling with the qgis tests, and I'm not sure the python
modification is necessary to get the tests working correctly. So, I
think I'll pass up this opportunity. :-(
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Sun, 22 Mar 2020 15:46:02 GMT) Full text and rfc822 format available.

Message #59 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Guillaume Le Vaillant <glv <at> posteo.net>
To: 38149 <at> debbugs.gnu.org
Subject: Re: [WIP] gnu: Add qgis.
Date: Sun, 22 Mar 2020 16:45:22 +0100
[Message part 1 (text/plain, inline)]
I took the WIP patch and updated it for QGIS 3.12.1. I also added some
inputs for optional features and some Qt wrapping for the SVG icons to
show up correctly in the GUI.

Things that can still be improved:
 - Among the 550 tests, around 60 are failing. I disabled them for now
   in the package definition.
 - Also, I only put GPL2+ and GPL3+ as license (like in Gentoo and Nix),
   and not the complete list for every file (like in Debian).

Do you think this package definition for QGIS is good enough to be
merged in master (and improved later), or are the remaining issues
blocking?

P.S. This is related to issues #38150 and #38178 (patch to add GRASS).
[0001-gnu-Add-python-owslib.patch (text/x-patch, attachment)]
[0002-gnu-Add-grass.patch (text/x-patch, attachment)]
[0003-gnu-Add-saga.patch (text/x-patch, attachment)]
[0004-gnu-Add-qgis.patch (text/x-patch, attachment)]
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Mon, 23 Mar 2020 21:01:01 GMT) Full text and rfc822 format available.

Message #62 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Guillaume Le Vaillant <glv <at> posteo.net>, 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Tue, 24 Mar 2020 02:30:30 +0530
[Message part 1 (text/plain, inline)]
Hi,

Thank you for continuing the work. I was not making any progress on the
tests and was caught up with other work.

> Do you think this package definition for QGIS is good enough to be
> merged in master (and improved later), or are the remaining issues
> blocking?

I agree we should merge this now and fix the tests later.

> I took the WIP patch and updated it for QGIS 3.12.1. I also added some
> inputs for optional features and some Qt wrapping for the SVG icons to
> show up correctly in the GUI.

Ok.

> Things that can still be improved:
>  - Among the 550 tests, around 60 are failing. I disabled them for now
>    in the package definition.

Ok, that should be enough for now.

>  - Also, I only put GPL2+ and GPL3+ as license (like in Gentoo and Nix),
>    and not the complete list for every file (like in Debian).

Is this a good idea? I always thought we go the Debian way and try to
document every single license. I would love it if we only had to
document the "main license" but I'm not sure that is consistent with how
other Guix packages are written. Thoughts?

Thanks,
Arun.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#38149; Package guix-patches. (Tue, 24 Mar 2020 10:53:02 GMT) Full text and rfc822 format available.

Message #65 received at 38149 <at> debbugs.gnu.org (full text, mbox):

From: Guillaume Le Vaillant <glv <at> posteo.net>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: 38149 <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Tue, 24 Mar 2020 11:52:00 +0100
[Message part 1 (text/plain, inline)]
Arun Isaac <arunisaac <at> systemreboot.net> skribis:

>>  - Also, I only put GPL2+ and GPL3+ as license (like in Gentoo and Nix),
>>    and not the complete list for every file (like in Debian).
>
> Is this a good idea? I always thought we go the Debian way and try to
> document every single license. I would love it if we only had to
> document the "main license" but I'm not sure that is consistent with how
> other Guix packages are written. Thoughts?

I added the other licenses to the package definition (I hope I didn't
miss anything).
Pushed as 151f3d416cff16d7e7d57dd24756dc4357384a1f.

Should this issue be closed, or left open for the remaining failing
tests?
[signature.asc (application/pgp-signature, inline)]

Reply sent to Arun Isaac <arunisaac <at> systemreboot.net>:
You have taken responsibility. (Tue, 24 Mar 2020 11:47:02 GMT) Full text and rfc822 format available.

Notification sent to Wiktor Żelazny <wz <at> freeshell.de>:
bug acknowledged by developer. (Tue, 24 Mar 2020 11:47:02 GMT) Full text and rfc822 format available.

Message #70 received at 38149-done <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Guillaume Le Vaillant <glv <at> posteo.net>
Cc: 38149-done <at> debbugs.gnu.org
Subject: Re: [bug#38149] [WIP] gnu: Add qgis.
Date: Tue, 24 Mar 2020 17:16:22 +0530
[Message part 1 (text/plain, inline)]
> I added the other licenses to the package definition (I hope I didn't
> miss anything).

qgis' various parts are licensed differently in one giant mess. And,
it'll be hard to keep the license field up to date. But, let's hope. :-)

> Pushed as 151f3d416cff16d7e7d57dd24756dc4357384a1f.

Ok, thanks! :-)

> Should this issue be closed, or left open for the remaining failing
> tests?

I have closed this issue. Anyone improving the package can open a
separate issue.
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 22 Apr 2020 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 63 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.