# Maintainer (arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: György Balló <ballogy@freestart.hu>
# Maintainer: Freemor freemor@freemor.ca

# Rationale:
# Privacy is a right. This anti-privacy code is being included in more and more projects
# time for a drop in privvacy safe version. 


# To do:
# replace geoclue.conf with a version that has all tracking set to false


pkgname=geoclue
pkgver=2.5.7
pkgrel=3
pkgdesc="Modular geoinformation service built on the D-Bus messaging system"
arch=(x86_64)
url="https://www.freedesktop.org/wiki/Software/GeoClue/"
license=(LGPL)
depends=(libsoup json-glib libmm-glib avahi geocode-glib)
makedepends=(systemd gobject-introspection git vala meson gtk-doc libnotify)
optdepends=('libnotify: Demo Agent')
provides=("geoclue2=$pkgver-$pkgrel")
conflicts=(geoclue2)
replaces=(geoclue2)
backup=(etc/geoclue/geoclue.conf)
_commit=3bb60dd600a8b247fd6049e7e5b1c73c2c5fc0e8  # tags/2.5.7
source=("git+https://gitlab.freedesktop.org/geoclue/geoclue.git#commit=$_commit")
sha256sums=('SKIP')

pkgver() {
  cd $pkgname
  git describe --tags | sed 's/-/+/g'
}

prepare() {
  cd $pkgname

  # config patches (configurable hardcoded API key)
  git cherry-pick -n 95c9ad4dc176 1a00809a0d89

}

build() {
  arch-meson $pkgname build \
    -D dbus-srv-user=geoclue \
    -D dbus-sys-dir=/usr/share/dbus-1/system.d \
    -D 3g-source=false \
    -D cdma-source=false \
    -D modem-gps-source=false \
    -D nmea-source=false \
    -D mozilla-api-key="" 
    
  ninja -C build
}

check() {
  meson test -C build --print-errorlogs
}

package() {
  DESTDIR="$pkgdir" meson install -C build

  echo 'u geoclue - "Geoinformation service" /var/lib/geoclue' |
    install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"

  echo 'd /var/lib/geoclue 0755 geoclue geoclue' |
    install -Dm644 /dev/stdin "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
}

