# Maintainer: Felitendo
# This PKGBUILD is updated automatically:
# https://git.felo.gg/Felitendo/PKGBUILDS

pkgname=untix-git
pkgver=4.3.2.r31.g48ce032
pkgrel=1
pkgdesc="GTK4 + LibAdwaita client for WebUntis (git)"
arch=('any')
url="https://codeberg.org/ostfriese4/untix"
license=('GPL-3.0-or-later')
# main adds a QR code login: the camera comes through the portal (libportal)
# as a PipeWire stream, is shown with gtk4paintablesink and decoded with
# zxing-cpp's Python binding.
depends=('gtk4' 'libadwaita' 'webkitgtk-6.0' 'libsecret' 'python'
         'python-gobject' 'python-cairo' 'python-requests' 'python-pyotp'
         'python-pillow' 'python-zxing-cpp' 'libportal' 'gstreamer'
         'gst-plugins-base' 'gst-plugin-pipewire' 'gst-plugin-gtk4' 'glib2'
         'hicolor-icon-theme')
makedepends=('meson' 'ninja' 'glib2-devel' 'gettext' 'git')
provides=('untix')
conflicts=('untix' 'untis' 'timetable')
source=("${pkgname}::git+https://codeberg.org/ostfriese4/untix.git")
sha256sums=('SKIP')

pkgver() {
  cd "$pkgname"
  git describe --long --abbrev=7 --tags --match 'v[0-9]*' \
    | sed 's/^v//; s/\([^-]*-g\)/r\1/; s/-/./g'
}

prepare() {
  # The About dialog reads the version from src/api.py, which upstream only
  # sets when it tags a release.
  sed -i "s/^version = \"[^\"]*\"/version = \"$pkgver\"/" "$pkgname/src/api.py"
}

build() {
  meson setup build "$pkgname" \
    --prefix=/usr \
    --buildtype=release \
    --wrap-mode=nodownload
  meson compile -C build
}

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

  # generated by pacman hooks; shipping them would cause file conflicts
  rm -f "$pkgdir/usr/share/glib-2.0/schemas/gschemas.compiled" \
        "$pkgdir/usr/share/applications/mimeinfo.cache" \
        "$pkgdir/usr/share/icons/hicolor/icon-theme.cache"
}
