aboutsummaryrefslogtreecommitdiff
path: root/contrib/alpine/gnunet/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/alpine/gnunet/APKBUILD')
-rw-r--r--contrib/alpine/gnunet/APKBUILD102
1 files changed, 102 insertions, 0 deletions
diff --git a/contrib/alpine/gnunet/APKBUILD b/contrib/alpine/gnunet/APKBUILD
new file mode 100644
index 000000000..c68e03d67
--- /dev/null
+++ b/contrib/alpine/gnunet/APKBUILD
@@ -0,0 +1,102 @@
1# Contributor: xrs <xrs@mail36.net>
2# Maintainer: xrs <xrs@mail36.net>
3pkgname="gnunet"
4pkgver="0.11.6"
5pkgrel=0
6pkgdesc="A framework for secure and privacy enhancing peer-to-peer networking"
7url="https://gnunet.org"
8arch="all"
9license="AGPL-3.0"
10depends="libgpg-error libgcrypt nettle unbound-libs gnutls gnutls-utils gnurl
11 libgnurl libmicrohttpd openssl libunistring libidn2 nss sqlite zlib
12 miniupnpc gmp gettext bash which iptables coreutils sudo"
13depends_dev="libgpg-error-dev libgcrypt-dev nettle-dev unbound-dev gnutls-dev
14 gnurl-dev libmicrohttpd-dev openssl-dev libunistring-dev libidn2-dev
15 nss-dev sqlite-dev zlib-dev miniupnpc-dev gmp-dev gettext"
16makedepends="$depends_dev autoconf automake libtool gettext-dev python3
17 texlive texinfo"
18install="$pkgname.pre-install $pkgname.post-install $pkgname.pre-deinstall
19 $pkgname.post-deinstall"
20pkgusers="gnunet"
21pkggroups="gnunet gnunetdns"
22subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
23builddir="$srcdir/$pkgname-$pkgver"
24options="!check suid" # No check because The GNUnet project lacks a good CI at the moment.
25source="https://mirrors.ocf.berkeley.edu/gnu/gnunet/$pkgname-$pkgver.tar.gz
26 gnunet-system.conf
27 gnunet-user.conf
28 gnunet-system-services.initd
29 gnunet-user-services.initd
30 gnunet.xsession
31 "
32
33prepare() {
34 cd "$builddir"
35 default_prepare
36 autoreconf -if # FIXME: See https://bugs.gnunet.org/view.php?id=5902
37}
38
39build() {
40 cd "$builddir"
41 ./configure \
42 --build=$CBUILD \
43 --host=$CHOST \
44 --prefix=/usr \
45 --sysconfdir=/etc \
46 --mandir=/usr/share/man \
47 --localstatedir=/var \
48 --enable-logging=verbose
49 make
50}
51
52check() {
53 make DESTDIR="$pkgdir" check
54 exit 0
55}
56
57package() {
58 make DESTDIR="$pkgdir" install
59
60 libexecdir=$pkgdir/usr/lib/gnunet/libexec/
61 # Limit access to critical gnunet-helper-dns to group "gnunetdns"
62 chgrp gnunetdns $libexecdir/gnunet-helper-dns
63 chgrp gnunetdns $libexecdir/gnunet-service-dns
64 # Limit access to certain SUID binaries by group "gnunet"
65 chgrp gnunet $libexecdir/gnunet-helper-exit
66 chgrp gnunet $libexecdir/gnunet-helper-vpn
67 chgrp gnunet $libexecdir/gnunet-helper-nat-client
68 chgrp gnunet $libexecdir/gnunet-helper-nat-server
69 chmod u+s $libexecdir/gnunet-helper-exit
70 chmod u+s $libexecdir/gnunet-helper-vpn
71 chmod 2750 $libexecdir/gnunet-helper-dns
72 chmod 2700 $libexecdir/gnunet-service-dns
73 chmod u+s $libexecdir/gnunet-helper-nat-client
74 chmod u+s $libexecdir/gnunet-helper-nat-server
75
76 install -m644 -D $srcdir/$pkgname-user.conf \
77 $pkgdir/etc/skel/.config/$pkgname.conf
78 install -m644 -D $srcdir/$pkgname-system.conf \
79 $pkgdir/etc/$pkgname.conf
80 install -m755 -D $srcdir/$pkgname-system-services.initd \
81 $pkgdir/etc/init.d/$pkgname-system-services
82 install -m755 -D $srcdir/$pkgname-user-services.initd \
83 $pkgdir/etc/init.d/$pkgname-user-services
84 install -m755 -D $srcdir/$pkgname.xsession \
85 $pkgdir/etc/X11/xinit/xinitrc.d/80-$pkgname-user-services
86}
87
88dev() {
89 default_dev
90
91 # dev() will move gnunet-config from $pkg to $pkg-dev, but it's an
92 # intended part of $pkg.
93 install -m755 -D $builddir/src/util/.libs/gnunet-config \
94 $pkgdir/usr/bin/gnunet-config
95}
96
97sha512sums="1c6ea2ac7280d2edb30df627b79e017d199e93cd3970ce49f3f049abfb1dddfed541118e55766c422edf4a80e140c4eb2cfc681e0d4a1384e39811d024df9278 gnunet-0.11.6.tar.gz
98a0f55413ed2c6edd6746a751d92ddac95ba70f20eefb07330817870d749456448f44bba95d245911a00f6078e0c2ac626004e3b764be5e5e049c00626c4c5ac0 gnunet-system.conf
99b21112ff16aee771332aa9c33f55b0c7f46fe0266053543241e3efbe25dba56482c0e11112a192eefe59f1c74d2af5d7071b6a4e1e875cfc7e9d55b5fe8a0a33 gnunet-user.conf
100ae7be0ecb8dfb9c4741706d5fe7a0ea2f87c88ddab549c80917a637b009922dfe3ad3ae6d8706c7a82b671da4e9f56f2208050ff7945c38100ca979438946413 gnunet-system-services.initd
1015936adcca52a3e199f2cea4faf40a53a0280d453e189921db88c3f5d9b8502ac51ed2b926ade4e2fdb844bfc897ad1216ddba8060ac0d0a0d6648837509dfa35 gnunet-user-services.initd
1020fe33317f99d0193a6eab9ce9bf9a3868a7021153f0e782839c086d5032ae164c40498fe7737a2c63ec11cb245132f86bda3f79fdcdf43c7497439b3aeac2bc7 gnunet.xsession"