# Maintainer: Erich Eckner # Contributor: Doug Newgard # Contributor: XavierCLL # Contributor: SaultDon # Contributor: Lantald < lantald at gmx.com > # Contributor: Thomas Dziedzic < gostrc at gmail > # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: Gerardo Exequiel Pozzi # Contributor: Eric Forgeot < http://esclinux.tk > # Globe Plugin and Map Server are disabled in cmake by default. # Uncomment them in the build() portion if you'd like them enabled. # You will also need to install osgearth-qt4 or fcgi, respectively, before building. pkgname=qgis pkgver=3.0.3 pkgrel=1 pkgdesc='Geographic Information System (GIS) that supports vector, raster & database formats' url='http://qgis.org/' license=('GPL') arch=('i686' 'x86_64') depends=('qt5-tools' 'qt5-script' 'qtkeychain' 'qca-qt5' 'qt5-webkit' 'proj' 'geos' 'sqlite' 'python-gdal' 'python-owslib' 'python-future' 'python-sip' 'python-psycopg2' 'python-yaml' 'python-numpy' 'python-jinja' 'python-pygments' 'qwtpolar' 'expat' 'python-qscintilla-qt5' 'spatialindex' 'gsl' 'libzip') makedepends=('git' 'cmake' 'txt2tags' 'libglvnd') optdepends=('grass: for GRASS providers and plugin (6 or 7)' # 'gsl: for georeferencer' 'postgresql: for postgis and SPIT support' 'gpsbabel: for gps plugin' 'fcgi: for qgis mapserver' 'ocilib: oracle provider') source=("https://qgis.org/downloads/$pkgname-$pkgver.tar.bz2") sha512sums=('67f46f1acacd6688984b0c13aa5880e2f31d85b5a28ebf12830d33f198c2e5983887a8c85036b8be59edf3836ba7d38985f58433f53d3164c2ffb4a6db94d046') prepare() { cd "$pkgname-$pkgver" # Fix desktop file for /usr/bin/qgis-github sed -e 's/\/usr\/bin\/qgis/\/usr\/bin\/qgis-git/g' \ -e 's/Icon=qgis/Icon=qgis-git/g' \ -i debian/qgis.desktop # Remove mime types already defined by freedesktop.org sed -e '/type="image\/tiff"/,/<\/mime-type>/d' \ -e '/type="image\/jpeg"/,/<\/mime-type>/d' \ -e '/type="image\/jp2"/,/<\/mime-type>/d' \ -e '/type="application\/x-adobe-mif"/,/<\/mime-type>/d' \ -i debian/qgis.xml [[ -d build ]] || mkdir build } build() { cd "$pkgname-$pkgver/build" cmake -G "Unix Makefiles" ../ \ -DCMAKE_INSTALL_PREFIX=/opt/$pkgname \ -DQGIS_MANUAL_SUBDIR=share/man \ -DENABLE_TESTS=FALSE \ -DWITH_INTERNAL_QWTPOLAR=FALSE \ -DWITH_INTERNAL_{HTTPLIB2,JINJA2,MARKUPSAFE,OWSLIB,PYGMENTS,DATEUTIL,PYTZ,YAML,NOSE2,SIX,FUTURE}=FALSE \ -DWITH_GEOREFERENCER=TRUE # -DWITH_SERVER=TRUE \ # -DWITH_GLOBE=TRUE make } package() { cd "$pkgname-$pkgver/build" # Add optional deps based on selected or autodetected options [[ -n "$(sed -n '/^GRASS_PREFIX:/ s/.*=//p' CMakeCache.txt)" ]] && optdepends+=('grass6: GRASS6 plugin') [[ -n "$(sed -n '/^GRASS_PREFIX7:/ s/.*=//p' CMakeCache.txt)" ]] && optdepends+=('grass: GRASS7 plugin') [[ "$(sed -n '/^WITH_SERVER:/ s/.*=//p' CMakeCache.txt)" == "TRUE" ]] && optdepends+=('fcgi: Map Server') [[ "$(sed -n '/^WITH_GLOBE:/ s/.*=//p' CMakeCache.txt)" == "TRUE" ]] && optdepends+=('osgearth: Globe plugin') make DESTDIR="$pkgdir" install cd "$srcdir/$pkgname-$pkgver" install -d -m755 $pkgdir/usr/bin ln -s /opt/$pkgname/bin/qgis "$pkgdir/usr/bin/qgis-git" # install desktop files and icons install -Dm644 debian/qgis.desktop -t "$pkgdir/usr/share/applications/" for resolution in `ls /usr/share/icons/hicolor/|egrep '[0-9]'`; do if [ -e debian/icons/qgis-icon{$resolution}.png ] then install -Dm644 debian/icons/qgis-icon${resolution}.png "$pkgdir/usr/share/icons/hicolor/${resolution}/apps/$pkgname.png" fi done install -Dm644 images/icons/qgis_icon.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/$pkgname.svg" # install mime information and icon install -Dm644 debian/qgis.xml "$pkgdir/usr/share/mime/packages/qgis.xml" for resolution in `ls /usr/share/icons/hicolor/|egrep '[0-9]'`; do if [ -e debian/icons/qgis-mime-icon{$resolution}.png ] then install -Dm644 debian/icons/qgis-mime-icon${resolution}.png "$pkgdir/usr/share/icons/hicolor/${resolution}/mimetypes/qgis-mime.png" fi done install -Dm644 images/icons/qgis_mime_icon.svg "$pkgdir/usr/share/icons/hicolor/scalable/mimetypes/qgis-mime.svg" for type in qgs qlr qml qpt; do for resolution in `ls /usr/share/icons/hicolor/|egrep '[0-9]'`; do if [ -e debian/icons/qgis-${type}${resolution}.png ] then install -Dm644 debian/icons/qgis-${type}${resolution}.png "$pkgdir/usr/share/icons/hicolor/${resolution}/mimetypes/qgis-$type.png" fi done done for type in asc ddf dem dt0 dxf gml img mime mldata qgs qlr qml qpt shp sqlite; do install -Dm644 images/icons/qgis_${type}_icon.svg "$pkgdir/usr/share/icons/hicolor/scalable/mimetypes/qgis-$type.svg" done # compile python files, since the cmake option doesn't seem to account for DESTDIR python -m compileall -q "$pkgdir" # link libraries install -d -m755 "${pkgdir}"/etc/ld.so.conf.d/ echo '/opt/qgis-git/lib' > "${pkgdir}"/etc/ld.so.conf.d/qgis-git.conf }