diff options
Diffstat (limited to 'contrib/packages/arch/gnunet')
-rw-r--r-- | contrib/packages/arch/gnunet/.SRCINFO | 71 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/PKGBUILD | 111 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/gnunet-system.service | 13 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/gnunet-user.conf | 3 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/gnunet-user.service | 10 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/gnunet.install | 54 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/gnunet.sysusers | 3 | ||||
-rw-r--r-- | contrib/packages/arch/gnunet/gnunet.tmpfiles | 9 |
8 files changed, 274 insertions, 0 deletions
diff --git a/contrib/packages/arch/gnunet/.SRCINFO b/contrib/packages/arch/gnunet/.SRCINFO new file mode 100644 index 000000000..19df8d63f --- /dev/null +++ b/contrib/packages/arch/gnunet/.SRCINFO | |||
@@ -0,0 +1,71 @@ | |||
1 | pkgbase = gnunet | ||
2 | pkgdesc = A framework for secure peer-to-peer networking | ||
3 | pkgver = 0.17.6 | ||
4 | pkgrel = 1 | ||
5 | url = http://gnunet.org | ||
6 | install = gnunet.install | ||
7 | arch = i686 | ||
8 | arch = x86_64 | ||
9 | license = AGPL | ||
10 | makedepends = bluez-libs | ||
11 | makedepends = libpulse | ||
12 | makedepends = libtool | ||
13 | makedepends = opus | ||
14 | makedepends = pkgconfig | ||
15 | makedepends = postgresql | ||
16 | makedepends = python | ||
17 | makedepends = python-sphinx | ||
18 | makedepends = python-sphinx_rtd_theme | ||
19 | depends = brotli | ||
20 | depends = gettext | ||
21 | depends = gnutls | ||
22 | depends = iptables | ||
23 | depends = jansson | ||
24 | depends = libcurl-gnutls | ||
25 | depends = libextractor | ||
26 | depends = libgcrypt | ||
27 | depends = libidn2 | ||
28 | depends = libmicrohttpd | ||
29 | depends = libsodium | ||
30 | depends = libtool | ||
31 | depends = libunistring | ||
32 | depends = miniupnpc | ||
33 | depends = nss | ||
34 | depends = openssl | ||
35 | depends = sqlite | ||
36 | depends = which | ||
37 | depends = zlib | ||
38 | optdepends = bluez: for bluetooth transport | ||
39 | optdepends = gnunet-gtk: for handling the gnunet:// URI scheme | ||
40 | optdepends = jose: for re:claimID OpenID Connect plugin | ||
41 | optdepends = libogg: for conversation service | ||
42 | optdepends = libpabc: for re:claimID zero-knowledge privacy credentials | ||
43 | optdepends = libpulse: for conversation service | ||
44 | optdepends = mysql: for an alternative to sqlite in the database plugin | ||
45 | optdepends = opus: for conversation service | ||
46 | optdepends = postgresql: for an alternative to sqlite in the database plugin | ||
47 | optdepends = python: for test suite | ||
48 | optdepends = texi2mdoc: for automatic mdoc generation | ||
49 | optdepends = texinfo: for building the documentation | ||
50 | optdepends = texlive-core: for generating GNS business cards via gnunet-bcd | ||
51 | optdepends = zbar: for reading/writing QR codes using gnunet-qr | ||
52 | conflicts = gnunet-git | ||
53 | conflicts = gnunet-bin | ||
54 | backup = etc/gnunet.conf | ||
55 | source = ftp://ftp.gnu.org/gnu/gnunet/gnunet-0.17.6.tar.gz | ||
56 | source = ftp://ftp.gnu.org/gnu/gnunet/gnunet-0.17.6.tar.gz.sig | ||
57 | source = gnunet-system.service | ||
58 | source = gnunet.sysusers | ||
59 | source = gnunet.tmpfiles | ||
60 | source = gnunet-user.conf | ||
61 | source = gnunet-user.service | ||
62 | validpgpkeys = 3D11063C10F98D14BD24D1470B0998EF86F59B6A | ||
63 | sha256sums = 249358ef3b10ce99810781fedaec526a6eab943c120e4bba096aedf91c1afc40 | ||
64 | sha256sums = SKIP | ||
65 | sha256sums = 163818b89beddcaf78937daba5bdf0ae060b2975de0731aa13d1ccdd813cf262 | ||
66 | sha256sums = 66299dbbdd0219d2f5f0520e69fc094f38f789724d973c2f63a421257ea4f755 | ||
67 | sha256sums = 5c34e1ecc6208900426f8e399e8c3edbef12cce19eba605fd7364ddb3547d9f0 | ||
68 | sha256sums = 3f17b9ed2c1f8cc0f919fe477df99678c17778a31f1eeb56517e285e3cef30f2 | ||
69 | sha256sums = 60caee20b53bcc69522556b35ac3d35d89e28c49b9a22a2ed5121df4a2c33be5 | ||
70 | |||
71 | pkgname = gnunet | ||
diff --git a/contrib/packages/arch/gnunet/PKGBUILD b/contrib/packages/arch/gnunet/PKGBUILD new file mode 100644 index 000000000..1cef4dcec --- /dev/null +++ b/contrib/packages/arch/gnunet/PKGBUILD | |||
@@ -0,0 +1,111 @@ | |||
1 | # Maintainer: grufo <madmurphy333 AT gmail DOT com> | ||
2 | # Contributor: redfish <redfish AT galactica DOT pw> | ||
3 | # Contributor: kertase <kertase AT gmail DOT com> | ||
4 | # Contributor: Sergej Pupykin <pupykin DOT s+arch AT gmail.com> | ||
5 | # Contributor: wahnby <wahnby AT yahoo DOT fr> | ||
6 | |||
7 | pkgname='gnunet' | ||
8 | pkgver='0.17.6' | ||
9 | pkgrel=1 | ||
10 | pkgdesc='A framework for secure peer-to-peer networking' | ||
11 | arch=('i686' 'x86_64') | ||
12 | url="http://${pkgname}.org" | ||
13 | license=('AGPL') | ||
14 | conflicts=("${pkgname}-git" "${pkgname}-bin") | ||
15 | depends=('brotli' 'gettext' 'gnutls' 'iptables' 'jansson' 'libcurl-gnutls' | ||
16 | 'libextractor' 'libgcrypt' 'libidn2' 'libmicrohttpd' 'libsodium' | ||
17 | 'libtool' 'libunistring' 'miniupnpc' 'nss' 'openssl' 'sqlite' 'which' | ||
18 | 'zlib') | ||
19 | makedepends=('bluez-libs' 'libpulse' 'libtool' 'opus' 'pkgconfig' 'postgresql' | ||
20 | 'python' 'python-sphinx' 'python-sphinx_rtd_theme') | ||
21 | optdepends=('bluez: for bluetooth transport' | ||
22 | 'gnunet-gtk: for handling the gnunet:// URI scheme' | ||
23 | 'jose: for re:claimID OpenID Connect plugin' | ||
24 | 'libogg: for conversation service' | ||
25 | 'libpabc: for re:claimID zero-knowledge privacy credentials' | ||
26 | 'libpulse: for conversation service' | ||
27 | 'mysql: for an alternative to sqlite in the database plugin' | ||
28 | 'opus: for conversation service' | ||
29 | 'postgresql: for an alternative to sqlite in the database plugin' | ||
30 | 'python: for test suite' | ||
31 | 'texi2mdoc: for automatic mdoc generation' | ||
32 | 'texinfo: for building the documentation' | ||
33 | 'texlive-core: for generating GNS business cards via gnunet-bcd' | ||
34 | 'zbar: for reading/writing QR codes using gnunet-qr') | ||
35 | backup=("etc/${pkgname}.conf") | ||
36 | source=("ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig} | ||
37 | "${pkgname}-system.service" | ||
38 | "${pkgname}.sysusers" | ||
39 | "${pkgname}.tmpfiles" | ||
40 | "${pkgname}-user.conf" | ||
41 | "${pkgname}-user.service") | ||
42 | install="${pkgname}.install" | ||
43 | validpgpkeys=('3D11063C10F98D14BD24D1470B0998EF86F59B6A') | ||
44 | sha256sums=('249358ef3b10ce99810781fedaec526a6eab943c120e4bba096aedf91c1afc40' | ||
45 | 'SKIP' | ||
46 | '163818b89beddcaf78937daba5bdf0ae060b2975de0731aa13d1ccdd813cf262' | ||
47 | '66299dbbdd0219d2f5f0520e69fc094f38f789724d973c2f63a421257ea4f755' | ||
48 | '5c34e1ecc6208900426f8e399e8c3edbef12cce19eba605fd7364ddb3547d9f0' | ||
49 | '3f17b9ed2c1f8cc0f919fe477df99678c17778a31f1eeb56517e285e3cef30f2' | ||
50 | '60caee20b53bcc69522556b35ac3d35d89e28c49b9a22a2ed5121df4a2c33be5') | ||
51 | |||
52 | prepare() { | ||
53 | |||
54 | cd "${srcdir}/${pkgname}-${pkgver}" | ||
55 | |||
56 | export GNUNET_PREFIX='/usr/lib' | ||
57 | autoreconf -i | ||
58 | |||
59 | } | ||
60 | |||
61 | build() { | ||
62 | |||
63 | cd "${srcdir}/${pkgname}-${pkgver}" | ||
64 | |||
65 | ./configure --prefix='/usr' --enable-experimental | ||
66 | make | ||
67 | |||
68 | } | ||
69 | |||
70 | package() { | ||
71 | |||
72 | cd "${srcdir}/${pkgname}-${pkgver}" | ||
73 | |||
74 | make DESTDIR="${pkgdir}" install | ||
75 | |||
76 | install -dm755 "${pkgdir}/usr/lib/systemd/system" | ||
77 | install -Dm644 "${srcdir}/${pkgname}-system.service" \ | ||
78 | "${pkgdir}/usr/lib/systemd/system/${pkgname}.service" | ||
79 | |||
80 | install -dm755 "${pkgdir}/usr/lib/systemd/user" | ||
81 | install -Dm644 "${srcdir}/${pkgname}-user.service" \ | ||
82 | "${pkgdir}/usr/lib/systemd/user/${pkgname}.service" | ||
83 | |||
84 | install -dm755 "${pkgdir}/usr/lib/sysusers.d" | ||
85 | install -Dm644 "${srcdir}/${pkgname}.sysusers" \ | ||
86 | "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf" | ||
87 | |||
88 | install -dm755 "${pkgdir}/usr/lib/tmpfiles.d" | ||
89 | install -Dm644 "${srcdir}/${pkgname}.tmpfiles" \ | ||
90 | "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" | ||
91 | |||
92 | install -dm700 "${pkgdir}/etc/skel/.config" | ||
93 | install -Dm600 "${srcdir}/${pkgname}-user.conf" \ | ||
94 | "${pkgdir}/etc/skel/.config/${pkgname}.conf" | ||
95 | |||
96 | # Automatically generate a configuration file using the content of | ||
97 | # `/usr/share/gnunet/config.d/` as model; in this way we can ensure | ||
98 | # that this configuration file is the one backed up with each update, | ||
99 | # while `/usr/share/gnunet/config.d/` is kept as immutable default | ||
100 | # configuration. | ||
101 | |||
102 | install -dm755 "${pkgdir}/etc" | ||
103 | |||
104 | { | ||
105 | echo "# /etc/${pkgname}.conf" | ||
106 | (cd "${pkgdir}" > /dev/null 2>&1 && find "usr/share/${pkgname}/config.d" -type f -name '*.conf' \ | ||
107 | -printf '\n\n# For the default values of the the following lines please refer to\n# /%p\n\n' \ | ||
108 | -exec cat '{}' ';') | ||
109 | } > "${pkgdir}/etc/${pkgname}.conf" | ||
110 | |||
111 | } | ||
diff --git a/contrib/packages/arch/gnunet/gnunet-system.service b/contrib/packages/arch/gnunet/gnunet-system.service new file mode 100644 index 000000000..b429caf46 --- /dev/null +++ b/contrib/packages/arch/gnunet/gnunet-system.service | |||
@@ -0,0 +1,13 @@ | |||
1 | [Unit] | ||
2 | Description=GNUnet system service | ||
3 | After=network.target | ||
4 | |||
5 | [Service] | ||
6 | Type=simple | ||
7 | User=gnunet | ||
8 | ExecStart=/usr/lib/gnunet/libexec/gnunet-service-arm -c /etc/gnunet.conf | ||
9 | StateDirectory=gnunet | ||
10 | StateDirectoryMode=0700 | ||
11 | |||
12 | [Install] | ||
13 | WantedBy=multi-user.target | ||
diff --git a/contrib/packages/arch/gnunet/gnunet-user.conf b/contrib/packages/arch/gnunet/gnunet-user.conf new file mode 100644 index 000000000..22f1fe37a --- /dev/null +++ b/contrib/packages/arch/gnunet/gnunet-user.conf | |||
@@ -0,0 +1,3 @@ | |||
1 | [arm] | ||
2 | START_SYSTEM_SERVICES = NO | ||
3 | START_USER_SERVICES = YES | ||
diff --git a/contrib/packages/arch/gnunet/gnunet-user.service b/contrib/packages/arch/gnunet/gnunet-user.service new file mode 100644 index 000000000..ae9f0d4f5 --- /dev/null +++ b/contrib/packages/arch/gnunet/gnunet-user.service | |||
@@ -0,0 +1,10 @@ | |||
1 | [Unit] | ||
2 | Description=GNUnet user service | ||
3 | After=network.target | ||
4 | |||
5 | [Service] | ||
6 | Type=simple | ||
7 | ExecStart=/usr/lib/gnunet/libexec/gnunet-service-arm -c ~/.config/gnunet.conf | ||
8 | |||
9 | [Install] | ||
10 | WantedBy=multi-user.target | ||
diff --git a/contrib/packages/arch/gnunet/gnunet.install b/contrib/packages/arch/gnunet/gnunet.install new file mode 100644 index 000000000..2560926d8 --- /dev/null +++ b/contrib/packages/arch/gnunet/gnunet.install | |||
@@ -0,0 +1,54 @@ | |||
1 | post_install() { | ||
2 | |||
3 | local _PWD_PAIRS_="$(awk -F ':' '$3>=1000 && $3<2000 {print $1":"$6}' '/etc/passwd')" | ||
4 | local _USER_ | ||
5 | local _GROUP_ | ||
6 | local _CFG_DIR_ | ||
7 | |||
8 | for _PWD_PAIR_ in ${_PWD_PAIRS_}; do | ||
9 | _USER_="$(echo $_PWD_PAIR_ | cut -d ':' -f 1)" | ||
10 | _GROUP_="$(id -gn "${_USER_}")" | ||
11 | _CFG_DIR_="$(echo $_PWD_PAIR_ | cut -d ':' -f 2)/.config" | ||
12 | test -e "${_CFG_DIR_}/gnunet.conf" || (install -dm700 -o \ | ||
13 | "${_USER_}" -g "${_GROUP_}" "${_CFG_DIR_}" && install \ | ||
14 | -Dm600 -o "${_USER_}" -g "${_GROUP_}" \ | ||
15 | '/etc/skel/.config/gnunet.conf' \ | ||
16 | "${_CFG_DIR_}/gnunet.conf") | ||
17 | done | ||
18 | |||
19 | echo | ||
20 | echo 'Do not forget to add your user to the `gnunet` group, with' | ||
21 | echo | ||
22 | echo ' sudo usermod -aG gnunet "$(whoami)"' | ||
23 | echo | ||
24 | echo 'If later you want to remove your user from the group, launch' | ||
25 | echo | ||
26 | echo ' sudo gpasswd --delete "$(whoami)" gnunet' | ||
27 | echo | ||
28 | echo 'For information on how to use GNUnet plaese refer to the GNUnet article in the' | ||
29 | echo 'ArchWiki (https://wiki.archlinux.org/title/GNUnet).' | ||
30 | echo | ||
31 | |||
32 | } | ||
33 | |||
34 | post_remove() { | ||
35 | |||
36 | echo | ||
37 | echo 'The home directory of the `gnunet` user (`/var/lib/gnunet/`) is left after' | ||
38 | echo 'uninstalling GNUnet. If you are sure that you are never going to use GNUnet' | ||
39 | echo 'ever again, launch:' | ||
40 | echo | ||
41 | echo ' for username in $(getent group gnunet | cut -d: -f4 | tr '\'','\'' '\'' '\''); do \' | ||
42 | echo ' sudo gpasswd --delete "${username}" gnunet; done' | ||
43 | echo ' sudo userdel -r gnunet' | ||
44 | echo ' sudo groupdel gnunetdns' | ||
45 | echo | ||
46 | echo '**Warning** The identity and all the information about the network' | ||
47 | echo 'cumulatively stored by the current peer will be destroyed - this will not' | ||
48 | echo 'affect files explicitly downloaded in other paths.' | ||
49 | echo | ||
50 | echo 'For further information plaese refer to the GNUnet article in the ArchWiki' | ||
51 | echo '(https://wiki.archlinux.org/title/GNUnet).' | ||
52 | echo | ||
53 | |||
54 | } | ||
diff --git a/contrib/packages/arch/gnunet/gnunet.sysusers b/contrib/packages/arch/gnunet/gnunet.sysusers new file mode 100644 index 000000000..163895934 --- /dev/null +++ b/contrib/packages/arch/gnunet/gnunet.sysusers | |||
@@ -0,0 +1,3 @@ | |||
1 | g gnunet - | ||
2 | u gnunet - "GNUnet system account" /var/lib/gnunet | ||
3 | g gnunetdns - | ||
diff --git a/contrib/packages/arch/gnunet/gnunet.tmpfiles b/contrib/packages/arch/gnunet/gnunet.tmpfiles new file mode 100644 index 000000000..5b0b4174d --- /dev/null +++ b/contrib/packages/arch/gnunet/gnunet.tmpfiles | |||
@@ -0,0 +1,9 @@ | |||
1 | d /var/lib/gnunet 0700 gnunet gnunet - - | ||
2 | z /usr/lib/gnunet/libexec/gnunet-helper-dns 4750 root gnunetdns - - | ||
3 | z /usr/lib/gnunet/libexec/gnunet-helper-exit 4755 root root - - | ||
4 | z /usr/lib/gnunet/libexec/gnunet-helper-nat-client 4755 root root - - | ||
5 | z /usr/lib/gnunet/libexec/gnunet-helper-nat-server 4755 root root - - | ||
6 | z /usr/lib/gnunet/libexec/gnunet-helper-transport-bluetooth 4755 root root - - | ||
7 | z /usr/lib/gnunet/libexec/gnunet-helper-transport-wlan 4755 root root - - | ||
8 | z /usr/lib/gnunet/libexec/gnunet-helper-vpn 4755 root root - - | ||
9 | z /usr/lib/gnunet/libexec/gnunet-service-dns 2750 gnunet gnunetdns - - | ||