summaryrefslogtreecommitdiff
path: root/community/seatd/APKBUILD
blob: 078e436b97cf0b45de6bcce6848ec70d87508ed9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# Contributor: Leo <thinkabit.ukim@gmail.com>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=seatd
pkgver=0.7.0
pkgrel=1
pkgdesc="Minimal seat management daemon"
url="https://sr.ht/~kennylevinsen/seatd/"
license="MIT"
arch="all"
options="suid"  # needed for seatd-launch
pkggroups="seat"
install="$pkgname.pre-install $pkgname.post-install $pkgname.post-upgrade"
makedepends="meson scdoc elogind-dev linux-headers"
subpackages="libseat:libs libseat-dev $pkgname-launch $pkgname-doc $pkgname-openrc"
source="$pkgname-$pkgver.tar.gz::https://git.sr.ht/~kennylevinsen/seatd/archive/$pkgver.tar.gz
	$pkgname.initd
	$pkgname.confd
	"

# secfixes:
#   0.6.2-r0:
#     - CVE-2021-41387

build() {
	if [ "$CARCH" = 'ppc64le' ]; then
		# https://todo.sr.ht/~kennylevinsen/seatd/10
		# https://www.openwall.com/lists/musl/2020/01/20/3
		export CFLAGS="$CFLAGS -Wno-error=overflow"
	fi

	abuild-meson \
		-Dlibseat-logind=elogind \
		-Dman-pages=enabled \
		. output

	meson compile ${JOBS:+-j ${JOBS}} -C output
}

check() {
	meson test --no-rebuild -v -C output
}

package() {
	DESTDIR="$pkgdir" meson install --no-rebuild -C output
	chmod u+s "$pkgdir"/usr/bin/seatd-launch

	install -Dm755 "$srcdir"/seatd.initd "$pkgdir"/etc/init.d/seatd
	install -Dm644 "$srcdir"/seatd.confd "$pkgdir"/etc/conf.d/seatd
}

libs() {
	default_libs
	pkgdesc="Universal seat management library"
}

dev() {
	default_dev
	pkgdesc="Universal seat management library (development files)"
}

launch() {
	pkgdesc="Command to start a process with its own seatd instance (SUID binary)"
	depends="$pkgname"

	amove usr/bin/seatd-launch
}

sha512sums="
c81c43994b92672a388bf255edb1fe24d3dba7ece2eb35f9fedc05cc0b8e464e9167ffed037645c4072430fe7b3b8fc80cc99f21fb5100654b5dd23a94742e66  seatd-0.7.0.tar.gz
3b5baa320c376d136e2c933df5f12022fd12a46d319b95229a89f30ed7b9c3b1dba39c306c931aa25faf381b98b7a241b9693e22c9554022275903915a350c96  seatd.initd
1ee755b462455fb20ee2f56b8d1a0f3a26eb9aed34eb6126e322243f9288b23577aff40e5a2c02449f349282af79eafd232b9e77cd196daa92ee8a9fcae2ec16  seatd.confd
"