# Maintainer: Erich Eckner # Contributor: gaelic pkgname=qgis-git _pkgname=qgis pkgver=3.0.0.r47167.2d4b48287a _pkgver=${pkgver%.*.*} _commit=${pkgver##*.} pkgrel=1 pkgdesc='Geographic Information System (GIS) that supports vector, raster & database formats - Development master' 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') #install="$_pkgname.install" source=("${_pkgname}::git://github.com/qgis/QGIS.git#commit=$_commit") sha512sums=('SKIP') conflicts=('qgis') provides=('qgis') pkgver(){ cd "$_pkgname" printf '%s.r%s.%s' \ "$( git archive ${_commit} -- debian/changelog | \ tar -Ox | \ sed -n ' s/^\s*\* Release of \(\S\+\)\s*$/\1/ T p ' | \ sort -V | \ tail -n1 )" \ "$( git rev-list --count ${_commit} )" \ "$( git rev-parse --short ${_commit} )" } prepare() { cd $_pkgname # 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/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/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" 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 }