# Maintainer: Stefano Capitani <stefano@manjaro.org>
# Maintainer: Bernhard Landauer <oberon@manjaro.org>
# Maintainer: Mark Wagie <mark@manjaro.org>

# Maintainer: Davi da Silva Böger <dsboger@gmail.com>
# Contributor: Manuel Hüsers <manuel.huesers@uni-ol.de>
# Contributor: Fernando Fernandez <fernando@softwareperonista.com.ar>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Jason Edson <jaysonedson@gmail.com>

pkgbase=vte3-notification
pkgname=("${pkgbase}" 'vte-notification-common')
pkgver=0.62.0
pkgrel=2
pkgdesc="Virtual Terminal Emulator widget with Fedora patches"
arch=('x86_64')
url="https://wiki.gnome.org/Apps/Terminal/VTE"
license=('LGPL')
depends=('gtk3' 'pcre2' 'gnutls' 'fribidi' 'systemd-libs')
makedepends=('gobject-introspection' 'vala' 'git' 'gtk-doc' 'gperf' 'meson')

# Fedora patches: https://src.fedoraproject.org/rpms/vte291/tree/
_frepobranch='f33'
_fpatchfile='vte291-cntnr-precmd-preexec-scroll.patch'
_fcommit='a1c1e6f7789cad5da04fa9009118094468d8c00e'

# VTE source ref
_vtetag=${pkgver}

source=(
	"git+https://gitlab.gnome.org/GNOME/vte.git#tag=$_vtetag"
	"${_fpatchfile}-${_fcommit}::${_frepourl}/raw/${_fcommit}/f/${_fpatchfile}")
sha256sums=('SKIP'
            '48c2abc4d74960a4b0180f2ef1484f89bf77e4b79fa2d017e34a76b344a6faba')

prepare () {
	cd vte
	patch -p1 -i "../${_fpatchfile}-${_fcommit}"
}

build() {
	arch-meson vte build -D docs=true -D b_lto=false
	meson compile -C build
}

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

_pick() {
	local p="$1" f d; shift
	for f; do
		d="$srcdir/$p/${f#$pkgdir/}"
		mkdir -p "$(dirname "$d")"
		mv "$f" "$d"
		rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
	done
}

package_vte3-notification(){
	depends+=('vte-notification-common')
	provides=("vte3=${pkgver}" 'libvte-2.91.so')
	conflicts=('vte3')

	DESTDIR="${pkgdir}" meson install -C build

	### Split vte-common
	_pick vte-common "$pkgdir"/etc/profile.d
	_pick vte-common "$pkgdir"/usr/lib/{systemd,vte-urlencode-cwd}
}

package_vte-notification-common() {
	pkgdesc="Files shared by VTE libraries"
	depends=('sh')
	provides=("vte-common=${pkgver}")
	conflicts=('vte-common')

	mv vte-common/* "$pkgdir"
}