# Forked from Alpine for systemd

pkgname=gnome-session
pkgver=99948.0
_pkgver=48.0
pkgrel=2
pkgdesc="GNOME session manager"
url="https://gitlab.gnome.org/GNOME/gnome-session"
# armhf: pmb#2618
arch="all !armhf"
license="GPL-2.0-or-later"
depends="
	alsa-plugins-pulse
	bash
	dconf
	polkit
	"
makedepends="
	docbook-xml
	systemd-dev
	gnome-desktop-dev
	gnome-settings-daemon-dev
	gtk+3.0-dev
	itstool
	json-glib-dev
	libsm-dev
	libxml2-utils
	libxslt
	meson
	upower-dev
	xmlto
	"
options="!check" #no tests
subpackages="$pkgname-lang $pkgname-doc $pkgname-systemd gnome-shell-session:_shell:noarch"
source="https://download.gnome.org/sources/gnome-session/${_pkgver%%.*}/gnome-session-$_pkgver.tar.xz
	gnome-session-bash-login.patch"
builddir="$srcdir/gnome-session-$_pkgver"

build() {
	abuild-meson \
		-Db_lto=true \
		-Dsystemduserunitdir=/usr/lib/systemd/user \
		. output
	meson compile -C output
}

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

package() {
	DESTDIR="$pkgdir" meson install --no-rebuild -C output
}

_shell() {
	# For other consumers of gnome-session (e.g. phosh) these session files
	# only confuse display managers as gnome-shell isn't installed

	pkgdesc="Session files for GNOME Shell"
	# FIXME: doesnt depend on gnome-shell right now because pmbootstrap
	# currently can't handle it: https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/-/merge_requests/2592
	#depends="$pkgname=$pkgver-r$pkgrel gnome-shell"
	install_if="$pkgname=$pkgver-r$pkgrel gnome-shell"

	amove usr/share/gnome-session/sessions
	amove usr/share/wayland-sessions
	amove usr/share/xsessions
	amove usr/share/xdg-desktop-portal
}

sha512sums="
84baafdf0d7a4f4b15faaacde02821f6449481d655c8d6ff6ea79996aa052483475c9a77a021d47001249c6c84c66be728f683a2b1725657b329c64fc7951dc0  gnome-session-48.0.tar.xz
ff14a97f16aa4ad22122c7dda181d995ee54882132800c5e766bba8203ae2851e22e4bea39fc04b5c4c34b618babc3efb2a3699a2be722b1ea962210b30e0b50  gnome-session-bash-login.patch
"
