# Contributor: Rasmus Thomsen <oss@cogitri.dev>
# Maintainer: team/gnome <pabloyoyoista@postmarketos.org>
pkgname=gnome-session
pkgver=48.0
pkgrel=0
pkgdesc="GNOME session manager"
url="https://gitlab.gnome.org/GNOME/gnome-session"
arch="all"
license="GPL-2.0-or-later"
depends="
	alsa-plugins-pulse
	bash
	dconf
	"
makedepends="
	docbook-xml
	elogind-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
	"
replaces="gnome-shell"
options="!check" #no tests
subpackages="$pkgname-lang $pkgname-doc gnome-shell-session:_shell:noarch"
source="https://download.gnome.org/sources/gnome-session/${pkgver%%.*}/gnome-session-$pkgver.tar.xz
	gnome-session-bash-login.patch
"

build() {
	abuild-meson \
		-Db_lto=true \
		-Dsystemduserunitdir=/DELETEME \
		. output
	meson compile -C output
}

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

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

_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"
	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
"
