aboutsummaryrefslogtreecommitdiffstats
path: root/community/rebuilderd/APKBUILD
blob: 141b9c4510d6e25dd52923ecf7046e25ed056121 (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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# Contributor: kpcyrd <git@rxv.cc>
# Maintainer: kpcyrd <git@rxv.cc>
pkgname=rebuilderd
pkgver=0.18.0
pkgrel=0
pkgdesc="Independent verification system of binary packages"
url='https://github.com/kpcyrd/rebuilderd'
arch="all !s390x !ppc64le !riscv64"
license="GPL-3.0-or-later"
install="$pkgname.pre-install"
pkgusers="rebuilderd"
pkggroups="rebuilderd"
depends="
	$pkgname-tools
	shared-mime-info
	"
makedepends="
	cargo
	openssl-dev
	sqlite-dev
	xz-dev
	zstd-dev
	scdoc
	"
subpackages="
	$pkgname-doc
	$pkgname-openrc
	$pkgname-tools
	"
options="net"
source="
	$pkgname-$pkgver.tar.gz::https://github.com/kpcyrd/rebuilderd/archive/v$pkgver.tar.gz
	rebuilderd.initd
	rebuilderd-worker.initd
	rebuilderd.confd
	rebuilderd-sync.cron
	"

prepare() {
	default_prepare

	cargo fetch --locked
}

build() {
	cargo build --release --frozen

	mkdir -p completions
	target/release/rebuildctl completions bash > completions/rebuildctl.bash
	target/release/rebuildctl completions zsh > completions/_rebuildctl
	target/release/rebuildctl completions fish > completions/rebuildctl.fish

	make docs
}

check() {
	cargo test --release --frozen
}

package() {
	install -Dm755 \
		"$builddir/target/release/rebuilderd" \
		"$builddir/target/release/rebuilderd-worker" \
		-t "$pkgdir/usr/bin"

	# install rebuilder scripts
	install -Dm 755 -t "$pkgdir/usr/libexec/rebuilderd" \
		worker/rebuilder-*.sh

	# install config files
	install -Dm 644 -t "$pkgdir/etc" \
		contrib/confs/rebuilderd-sync.conf
	install -Dm 640 -g rebuilderd -t "$pkgdir/etc" \
		contrib/confs/rebuilderd-worker.conf \
		contrib/confs/rebuilderd.conf

	# init scripts
	install -Dm755 "$srcdir/$pkgname.initd" \
		"$pkgdir/etc/init.d/$pkgname"
	install -Dm755 "$srcdir/$pkgname-worker.initd" \
		"$pkgdir/etc/init.d/$pkgname-worker"
	install -Dm644 "$srcdir/$pkgname.confd" \
		"$pkgdir/etc/conf.d/$pkgname"
	install -Dm755 "$srcdir/rebuilderd-sync.cron" \
		"$pkgdir"/etc/periodic/hourly/rebuilderd-sync

	# install docs
	install -Dm 644 -t "$pkgdir/usr/share/doc/rebuilderd" README.md
	install -Dm 644 -t "$pkgdir/usr/share/man/man1" \
		contrib/docs/rebuilderd.1 \
		contrib/docs/rebuildctl.1 \
		contrib/docs/rebuilderd-worker.1
	install -Dm 644 -t "$pkgdir/usr/share/man/man5" \
		contrib/docs/rebuilderd.conf.5 \
		contrib/docs/rebuilderd-sync.conf.5 \
		contrib/docs/rebuilderd-worker.conf.5
}

tools() {
	pkgdesc="$pkgdesc (tools)"
	install -Dm755 "$builddir/target/release/rebuildctl" -t "$subpkgdir/usr/bin"

	install -Dm644 "$builddir/completions/rebuildctl.bash" \
		"$subpkgdir/usr/share/bash-completion/completions/rebuildctl"
	install -Dm644 "$builddir/completions/_rebuildctl" \
		"$subpkgdir/usr/share/zsh/site-functions/_rebuildctl"
	install -Dm644 "$builddir/completions/rebuildctl.fish" \
		"$subpkgdir/usr/share/fish/completions/rebuildctl.fish"
}

sha512sums="
0ba0aaaacf861ba9e0b8fcc8afa5cc6cd443d73cb355fd9d4398cafc2314f1f5185d9fc63f4459e222a9873950c9a78529d0334328254caa1c15e402c1958034  rebuilderd-0.18.0.tar.gz
14e9ff1526daaa3857c59ab92a60f5d9768851295db18d53a49c6aa122764fddaf659da342743cf1cf61b6c23b8387fd78f47ea657fbdb1936d37d9a8497aea2  rebuilderd.initd
b240f30d1a01addafb273199d917f7c42336ecb8b0fe6622d389e309b6c52b11f3859c7bb08df14738e39be357123df0a12796ff48ff06d43eda8dbad0a84977  rebuilderd-worker.initd
958119b17dcb477491694b0975b14691bf143ab19bc0079aebc55838861f95624060abf68409455267d824aaea8b7910ffd7762c3bf7077f001f40610a303ba9  rebuilderd.confd
85b02c4f0dfef17e55989ec34daf5dbe2027c781781db3e72b4f952ab2eae3043929d346ba37b1288bd8473d9fc29a2d19c1ddde26adc65190dd2fba73a02689  rebuilderd-sync.cron
"