Message ID | 20191109112702.14723-1-wz@freeshell.de |
---|---|
State | Accepted |
Headers | show |
Series | [bug#38149,WIP] gnu: Add qgis. | expand |
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! :-)
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Ż
> * 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")))
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+)))
From: Wiktor Żelazny <wzelazny@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(+)