[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] branch master updated: Add Arch packages
From: |
gnunet |
Subject: |
[gnunet] branch master updated: Add Arch packages |
Date: |
Sun, 12 Jun 2022 16:33:41 +0200 |
This is an automated email from the git hooks/post-receive script.
madmurphy pushed a commit to branch master
in repository gnunet.
The following commit(s) were added to refs/heads/master by this push:
new 22082c234 Add Arch packages
22082c234 is described below
commit 22082c234c2013c65fc49a59d01c467a78c12f3e
Author: madmurphy <madmurphy333@gmail.com>
AuthorDate: Sun Jun 12 15:33:39 2022 +0100
Add Arch packages
---
contrib/Makefile.am | 28 ++++-
contrib/packages/arch/gnunet-git/.SRCINFO | 73 ++++++++++++
contrib/packages/arch/gnunet-git/PKGBUILD | 128 +++++++++++++++++++++
.../packages/arch/gnunet-git/gnunet-system.service | 13 +++
.../packages/arch/gnunet-git/gnunet-uri.desktop | 9 ++
contrib/packages/arch/gnunet-git/gnunet-user.conf | 3 +
.../packages/arch/gnunet-git/gnunet-user.service | 10 ++
contrib/packages/arch/gnunet-git/gnunet.install | 54 +++++++++
contrib/packages/arch/gnunet-git/gnunet.sysusers | 3 +
contrib/packages/arch/gnunet-git/gnunet.tmpfiles | 9 ++
contrib/packages/arch/gnunet/.SRCINFO | 72 ++++++++++++
contrib/packages/arch/gnunet/PKGBUILD | 118 +++++++++++++++++++
contrib/packages/arch/gnunet/gnunet-system.service | 13 +++
contrib/packages/arch/gnunet/gnunet-uri.desktop | 9 ++
contrib/packages/arch/gnunet/gnunet-user.conf | 3 +
contrib/packages/arch/gnunet/gnunet-user.service | 10 ++
contrib/packages/arch/gnunet/gnunet.install | 54 +++++++++
contrib/packages/arch/gnunet/gnunet.sysusers | 3 +
contrib/packages/arch/gnunet/gnunet.tmpfiles | 9 ++
19 files changed, 616 insertions(+), 5 deletions(-)
diff --git a/contrib/Makefile.am b/contrib/Makefile.am
index e05e9caf9..801eacecf 100644
--- a/contrib/Makefile.am
+++ b/contrib/Makefile.am
@@ -42,9 +42,6 @@ INITD_FILES = \
services/openrc/gnunet.initd
PACKAGES_FILES = \
- packages/guix/guix-env-py2.scm \
- packages/guix/guix-env-gillmann.scm \
- packages/guix/notest-guix-env.scm \
packages/alpine/gnunet-gtk/APKBUILD \
packages/alpine/gnurl/APKBUILD \
packages/alpine/gnunet/gnunet-user-services.initd \
@@ -57,9 +54,30 @@ PACKAGES_FILES = \
packages/alpine/gnunet/gnunet.pre-install \
packages/alpine/gnunet/gnunet-system-services.initd \
packages/alpine/gnunet/gnunet-gns-proxy.initd \
+ packages/arch/gnunet-git/gnunet.install \
+ packages/arch/gnunet-git/gnunet-system.service \
+ packages/arch/gnunet-git/gnunet.sysusers \
+ packages/arch/gnunet-git/gnunet.tmpfiles \
+ packages/arch/gnunet-git/gnunet-uri.desktop \
+ packages/arch/gnunet-git/gnunet-user.conf \
+ packages/arch/gnunet-git/gnunet-user.service \
+ packages/arch/gnunet-git/PKGBUILD \
+ packages/arch/gnunet-git/.SRCINFO \
+ packages/arch/gnunet/gnunet.install \
+ packages/arch/gnunet/gnunet-system.service \
+ packages/arch/gnunet/gnunet.sysusers \
+ packages/arch/gnunet/gnunet.tmpfiles \
+ packages/arch/gnunet/gnunet-uri.desktop \
+ packages/arch/gnunet/gnunet-user.conf \
+ packages/arch/gnunet/gnunet-user.service \
+ packages/arch/gnunet/PKGBUILD \
+ packages/arch/gnunet/.SRCINFO \
+ packages/guix/guix-env-py2.scm \
+ packages/guix/guix-env-gillmann.scm \
+ packages/guix/notest-guix-env.scm \
+ packages/homebrew/gnunet.rb \
packages/nix/gnunet-dev.nix \
- packages/nix/default.nix \
- packages/homebrew/gnunet.rb
+ packages/nix/default.nix
EXTRA_DIST = \
sounds/vonlynX-bdbAm-lo.wav \
diff --git a/contrib/packages/arch/gnunet-git/.SRCINFO
b/contrib/packages/arch/gnunet-git/.SRCINFO
new file mode 100644
index 000000000..d73829db6
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/.SRCINFO
@@ -0,0 +1,73 @@
+pkgbase = gnunet-git
+ pkgdesc = A framework for secure peer-to-peer networking
+ pkgver = 0.17.0.r0.g0a9c2aa9d
+ pkgrel = 1
+ url = http://gnunet.org
+ install = gnunet.install
+ arch = i686
+ arch = x86_64
+ license = AGPL
+ makedepends = bluez-libs
+ makedepends = gettext
+ makedepends = git
+ makedepends = libpulse
+ makedepends = libtool
+ makedepends = opus
+ makedepends = pkgconfig
+ makedepends = postgresql
+ makedepends = python
+ makedepends = recutils
+ depends = brotli
+ depends = gettext
+ depends = gnurl
+ depends = gnutls
+ depends = iptables
+ depends = jansson
+ depends = libextractor
+ depends = libgcrypt
+ depends = libidn2
+ depends = libmicrohttpd
+ depends = libsodium
+ depends = libtool
+ depends = libunistring
+ depends = nss
+ depends = openssl
+ depends = sqlite
+ depends = which
+ depends = zlib
+ optdepends = bluez: for bluetooth transport
+ optdepends = gnunet-gtk: for handling the gnunet:// URI scheme
+ optdepends = libgabe: for Attribute-Based Encryption
+ optdepends = libogg: for conversation service
+ optdepends = libpabc: for re:claimID zero-knowledge privacy credentials
+ optdepends = libpulse: for conversation service
+ optdepends = miniupnpc: for NAT uPnP support
+ optdepends = mysql: for an alternative to sqlite in the database plugin
+ optdepends = opus: for conversation service
+ optdepends = pbc: for Attribute-Based Encryption
+ optdepends = postgresql: for an alternative to sqlite in the database
plugin
+ optdepends = python: for test suite
+ optdepends = texi2mdoc: for automatic mdoc generation
+ optdepends = texinfo: for building the documentation
+ optdepends = texlive-core: for generating GNS business cards via
gnunet-bcd
+ optdepends = zbar: for reading/writing QR codes using gnunet-qr
+ provides = gnunet
+ conflicts = gnunet
+ conflicts = gnunet-bin
+ backup = etc/gnunet.conf
+ source = git+https://git.gnunet.org/gnunet.git
+ source = gnunet-system.service
+ source = gnunet.sysusers
+ source = gnunet.tmpfiles
+ source = gnunet-uri.desktop
+ source = gnunet-user.conf
+ source = gnunet-user.service
+ sha256sums = SKIP
+ sha256sums =
163818b89beddcaf78937daba5bdf0ae060b2975de0731aa13d1ccdd813cf262
+ sha256sums =
66299dbbdd0219d2f5f0520e69fc094f38f789724d973c2f63a421257ea4f755
+ sha256sums =
5c34e1ecc6208900426f8e399e8c3edbef12cce19eba605fd7364ddb3547d9f0
+ sha256sums =
98e4e1d6d4fd7c7fd05d9e16402c95f1e7afeb4b97c8c68ac63e8abd11ff4ee7
+ sha256sums =
3f17b9ed2c1f8cc0f919fe477df99678c17778a31f1eeb56517e285e3cef30f2
+ sha256sums =
60caee20b53bcc69522556b35ac3d35d89e28c49b9a22a2ed5121df4a2c33be5
+
+pkgname = gnunet-git
diff --git a/contrib/packages/arch/gnunet-git/PKGBUILD
b/contrib/packages/arch/gnunet-git/PKGBUILD
new file mode 100644
index 000000000..bb4d3598d
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/PKGBUILD
@@ -0,0 +1,128 @@
+# Maintainer: grufo <madmurphy333 AT gmail DOT com>
+# Contributor: redfish <redfish AT galactica DOT pw>
+# Contributor: kertase <kertase AT gmail DOT com>
+# Contributor: Sergej Pupykin <pupykin DOT s+arch AT gmail.com>
+# Contributor: wahnby <wahnby AT yahoo DOT fr>
+
+_appname='gnunet'
+pkgname="${_appname}-git"
+pkgver=0.17.0.r0.g0a9c2aa9d
+pkgrel=1
+pkgdesc='A framework for secure peer-to-peer networking'
+arch=('i686' 'x86_64')
+url="http://${_appname}.org"
+license=('AGPL')
+conflicts=("${_appname}" "${_appname}-bin")
+provides=("${_appname}")
+depends=('brotli' 'gettext' 'gnurl' 'gnutls' 'iptables' 'jansson'
+ 'libextractor' 'libgcrypt' 'libidn2' 'libmicrohttpd' 'libsodium'
+ 'libtool' 'libunistring' 'nss' 'openssl' 'sqlite' 'which' 'zlib')
+makedepends=('bluez-libs' 'gettext' 'git' 'libpulse' 'libtool' 'opus'
+ 'pkgconfig' 'postgresql' 'python' 'recutils')
+optdepends=('bluez: for bluetooth transport'
+ 'gnunet-gtk: for handling the gnunet:// URI scheme'
+ 'libgabe: for Attribute-Based Encryption'
+ 'libogg: for conversation service'
+ 'libpabc: for re:claimID zero-knowledge privacy credentials'
+ 'libpulse: for conversation service'
+ 'miniupnpc: for NAT uPnP support'
+ 'mysql: for an alternative to sqlite in the database plugin'
+ 'opus: for conversation service'
+ 'pbc: for Attribute-Based Encryption'
+ 'postgresql: for an alternative to sqlite in the database plugin'
+ 'python: for test suite'
+ 'texi2mdoc: for automatic mdoc generation'
+ 'texinfo: for building the documentation'
+ 'texlive-core: for generating GNS business cards via gnunet-bcd'
+ 'zbar: for reading/writing QR codes using gnunet-qr')
+backup=("etc/${_appname}.conf")
+source=("git+https://git.${_appname}.org/${_appname}.git"
+ "${_appname}-system.service"
+ "${_appname}.sysusers"
+ "${_appname}.tmpfiles"
+ "${_appname}-uri.desktop"
+ "${_appname}-user.conf"
+ "${_appname}-user.service")
+install="${_appname}.install"
+sha256sums=('SKIP'
+ '163818b89beddcaf78937daba5bdf0ae060b2975de0731aa13d1ccdd813cf262'
+ '66299dbbdd0219d2f5f0520e69fc094f38f789724d973c2f63a421257ea4f755'
+ '5c34e1ecc6208900426f8e399e8c3edbef12cce19eba605fd7364ddb3547d9f0'
+ '98e4e1d6d4fd7c7fd05d9e16402c95f1e7afeb4b97c8c68ac63e8abd11ff4ee7'
+ '3f17b9ed2c1f8cc0f919fe477df99678c17778a31f1eeb56517e285e3cef30f2'
+ '60caee20b53bcc69522556b35ac3d35d89e28c49b9a22a2ed5121df4a2c33be5')
+
+pkgver() {
+
+ cd "${_appname}" > /dev/null 2>&1
+ git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
+
+}
+
+prepare() {
+
+ cd "${srcdir}/${_appname}"
+
+ export GNUNET_PREFIX='/usr/lib'
+ ./bootstrap
+
+}
+
+build() {
+
+ cd "${srcdir}/${_appname}"
+
+ ./configure --prefix='/usr' --enable-experimental
+ make
+ make -C contrib
+
+}
+
+package() {
+
+ cd "${srcdir}/${_appname}"
+
+ make DESTDIR="${pkgdir}" install
+ make DESTDIR="${pkgdir}" -C contrib install
+
+ install -dm755 "${pkgdir}/usr/lib/systemd/system"
+ install -Dm644 "${srcdir}/${_appname}-system.service" \
+ "${pkgdir}/usr/lib/systemd/system/${_appname}.service"
+
+ install -dm755 "${pkgdir}/usr/lib/systemd/user"
+ install -Dm644 "${srcdir}/${_appname}-user.service" \
+ "${pkgdir}/usr/lib/systemd/user/${_appname}.service"
+
+ install -dm755 "${pkgdir}/usr/lib/sysusers.d"
+ install -Dm644 "${srcdir}/${_appname}.sysusers" \
+ "${pkgdir}/usr/lib/sysusers.d/${_appname}.conf"
+
+ install -dm755 "${pkgdir}/usr/lib/tmpfiles.d"
+ install -Dm644 "${srcdir}/${_appname}.tmpfiles" \
+ "${pkgdir}/usr/lib/tmpfiles.d/${_appname}.conf"
+
+ install -dm755 "${pkgdir}/usr/share/applications"
+ install -Dm644 "${srcdir}/${_appname}-uri.desktop" \
+ "${pkgdir}/usr/share/applications/${_appname}-uri.desktop"
+
+ install -dm700 "${pkgdir}/etc/skel/.config"
+ install -Dm600 "${srcdir}/${_appname}-user.conf" \
+ "${pkgdir}/etc/skel/.config/${_appname}.conf"
+
+ # Automatically generate a configuration file using the content of
+ # `/usr/share/gnunet/config.d/` as model; in this way we can ensure
+ # that this configuration file is the one backed up with each update,
+ # while `/usr/share/gnunet/config.d/` is kept as immutable default
+ # configuration.
+
+ install -dm755 "${pkgdir}/etc"
+
+ {
+ echo "# /etc/${_appname}.conf"
+ (cd "${pkgdir}" > /dev/null 2>&1 && find
"usr/share/${_appname}/config.d" -type f -name '*.conf' \
+ -printf '\n\n# For the default values of the the
following lines please refer to\n# /%p\n\n' \
+ -exec cat '{}' ';')
+ } > "${pkgdir}/etc/${_appname}.conf"
+
+}
+
diff --git a/contrib/packages/arch/gnunet-git/gnunet-system.service
b/contrib/packages/arch/gnunet-git/gnunet-system.service
new file mode 100644
index 000000000..b429caf46
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet-system.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=GNUnet system service
+After=network.target
+
+[Service]
+Type=simple
+User=gnunet
+ExecStart=/usr/lib/gnunet/libexec/gnunet-service-arm -c /etc/gnunet.conf
+StateDirectory=gnunet
+StateDirectoryMode=0700
+
+[Install]
+WantedBy=multi-user.target
diff --git a/contrib/packages/arch/gnunet-git/gnunet-uri.desktop
b/contrib/packages/arch/gnunet-git/gnunet-uri.desktop
new file mode 100644
index 000000000..4f847d20f
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet-uri.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=GNUnet URI
+Exec=gnunet-uri %u
+GenericName=URI handler for the GNUnet network
+Icon=gnunet
+Type=Application
+Terminal=false
+NoDisplay=true
+MimeType=x-scheme-handler/gnunet;
diff --git a/contrib/packages/arch/gnunet-git/gnunet-user.conf
b/contrib/packages/arch/gnunet-git/gnunet-user.conf
new file mode 100644
index 000000000..22f1fe37a
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet-user.conf
@@ -0,0 +1,3 @@
+[arm]
+START_SYSTEM_SERVICES = NO
+START_USER_SERVICES = YES
diff --git a/contrib/packages/arch/gnunet-git/gnunet-user.service
b/contrib/packages/arch/gnunet-git/gnunet-user.service
new file mode 100644
index 000000000..ae9f0d4f5
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet-user.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=GNUnet user service
+After=network.target
+
+[Service]
+Type=simple
+ExecStart=/usr/lib/gnunet/libexec/gnunet-service-arm -c ~/.config/gnunet.conf
+
+[Install]
+WantedBy=multi-user.target
diff --git a/contrib/packages/arch/gnunet-git/gnunet.install
b/contrib/packages/arch/gnunet-git/gnunet.install
new file mode 100644
index 000000000..2560926d8
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet.install
@@ -0,0 +1,54 @@
+post_install() {
+
+ local _PWD_PAIRS_="$(awk -F ':' '$3>=1000 && $3<2000 {print $1":"$6}'
'/etc/passwd')"
+ local _USER_
+ local _GROUP_
+ local _CFG_DIR_
+
+ for _PWD_PAIR_ in ${_PWD_PAIRS_}; do
+ _USER_="$(echo $_PWD_PAIR_ | cut -d ':' -f 1)"
+ _GROUP_="$(id -gn "${_USER_}")"
+ _CFG_DIR_="$(echo $_PWD_PAIR_ | cut -d ':' -f 2)/.config"
+ test -e "${_CFG_DIR_}/gnunet.conf" || (install -dm700 -o \
+ "${_USER_}" -g "${_GROUP_}" "${_CFG_DIR_}" && install \
+ -Dm600 -o "${_USER_}" -g "${_GROUP_}" \
+ '/etc/skel/.config/gnunet.conf' \
+ "${_CFG_DIR_}/gnunet.conf")
+ done
+
+ echo
+ echo 'Do not forget to add your user to the `gnunet` group, with'
+ echo
+ echo ' sudo usermod -aG gnunet "$(whoami)"'
+ echo
+ echo 'If later you want to remove your user from the group, launch'
+ echo
+ echo ' sudo gpasswd --delete "$(whoami)" gnunet'
+ echo
+ echo 'For information on how to use GNUnet plaese refer to the GNUnet
article in the'
+ echo 'ArchWiki (https://wiki.archlinux.org/title/GNUnet).'
+ echo
+
+}
+
+post_remove() {
+
+ echo
+ echo 'The home directory of the `gnunet` user (`/var/lib/gnunet/`) is
left after'
+ echo 'uninstalling GNUnet. If you are sure that you are never going to
use GNUnet'
+ echo 'ever again, launch:'
+ echo
+ echo ' for username in $(getent group gnunet | cut -d: -f4 | tr
'\'','\'' '\'' '\''); do \'
+ echo ' sudo gpasswd --delete "${username}" gnunet; done'
+ echo ' sudo userdel -r gnunet'
+ echo ' sudo groupdel gnunetdns'
+ echo
+ echo '**Warning** The identity and all the information about the
network'
+ echo 'cumulatively stored by the current peer will be destroyed - this
will not'
+ echo 'affect files explicitly downloaded in other paths.'
+ echo
+ echo 'For further information plaese refer to the GNUnet article in the
ArchWiki'
+ echo '(https://wiki.archlinux.org/title/GNUnet).'
+ echo
+
+}
diff --git a/contrib/packages/arch/gnunet-git/gnunet.sysusers
b/contrib/packages/arch/gnunet-git/gnunet.sysusers
new file mode 100644
index 000000000..163895934
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet.sysusers
@@ -0,0 +1,3 @@
+g gnunet -
+u gnunet - "GNUnet system account" /var/lib/gnunet
+g gnunetdns -
diff --git a/contrib/packages/arch/gnunet-git/gnunet.tmpfiles
b/contrib/packages/arch/gnunet-git/gnunet.tmpfiles
new file mode 100644
index 000000000..5b0b4174d
--- /dev/null
+++ b/contrib/packages/arch/gnunet-git/gnunet.tmpfiles
@@ -0,0 +1,9 @@
+d /var/lib/gnunet 0700 gnunet gnunet - -
+z /usr/lib/gnunet/libexec/gnunet-helper-dns 4750 root gnunetdns - -
+z /usr/lib/gnunet/libexec/gnunet-helper-exit 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-nat-client 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-nat-server 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-transport-bluetooth 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-transport-wlan 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-vpn 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-service-dns 2750 gnunet gnunetdns - -
diff --git a/contrib/packages/arch/gnunet/.SRCINFO
b/contrib/packages/arch/gnunet/.SRCINFO
new file mode 100644
index 000000000..438f91230
--- /dev/null
+++ b/contrib/packages/arch/gnunet/.SRCINFO
@@ -0,0 +1,72 @@
+pkgbase = gnunet
+ pkgdesc = A framework for secure peer-to-peer networking
+ pkgver = 0.17.0
+ pkgrel = 1
+ url = http://gnunet.org
+ install = gnunet.install
+ arch = i686
+ arch = x86_64
+ license = AGPL
+ makedepends = bluez-libs
+ makedepends = libpulse
+ makedepends = libtool
+ makedepends = opus
+ makedepends = pkgconfig
+ makedepends = postgresql
+ makedepends = python
+ depends = brotli
+ depends = gettext
+ depends = gnurl
+ depends = gnutls
+ depends = iptables
+ depends = jansson
+ depends = libextractor
+ depends = libgcrypt
+ depends = libidn2
+ depends = libmicrohttpd
+ depends = libsodium
+ depends = libtool
+ depends = libunistring
+ depends = nss
+ depends = openssl
+ depends = sqlite
+ depends = which
+ depends = zlib
+ optdepends = bluez: for bluetooth transport
+ optdepends = gnunet-gtk: for handling the gnunet:// URI scheme
+ optdepends = libgabe: for Attribute-Based Encryption
+ optdepends = libogg: for conversation service
+ optdepends = libpabc: for re:claimID zero-knowledge privacy credentials
+ optdepends = libpulse: for conversation service
+ optdepends = miniupnpc: for NAT uPnP support
+ optdepends = mysql: for an alternative to sqlite in the database plugin
+ optdepends = opus: for conversation service
+ optdepends = pbc: for Attribute-Based Encryption
+ optdepends = postgresql: for an alternative to sqlite in the database
plugin
+ optdepends = python: for test suite
+ optdepends = texi2mdoc: for automatic mdoc generation
+ optdepends = texinfo: for building the documentation
+ optdepends = texlive-core: for generating GNS business cards via
gnunet-bcd
+ optdepends = zbar: for reading/writing QR codes using gnunet-qr
+ conflicts = gnunet-git
+ conflicts = gnunet-bin
+ backup = etc/gnunet.conf
+ source = ftp://ftp.gnu.org/gnu/gnunet/gnunet-0.17.0.tar.gz
+ source = ftp://ftp.gnu.org/gnu/gnunet/gnunet-0.17.0.tar.gz.sig
+ source = gnunet-system.service
+ source = gnunet.sysusers
+ source = gnunet.tmpfiles
+ source = gnunet-uri.desktop
+ source = gnunet-user.conf
+ source = gnunet-user.service
+ validpgpkeys = 3D11063C10F98D14BD24D1470B0998EF86F59B6A
+ sha256sums =
6b2f7bf34c3c3986f2c294f04e881dda9db8ef636c0e78ebcf8084b8a47d49ca
+ sha256sums = SKIP
+ sha256sums =
163818b89beddcaf78937daba5bdf0ae060b2975de0731aa13d1ccdd813cf262
+ sha256sums =
66299dbbdd0219d2f5f0520e69fc094f38f789724d973c2f63a421257ea4f755
+ sha256sums =
5c34e1ecc6208900426f8e399e8c3edbef12cce19eba605fd7364ddb3547d9f0
+ sha256sums =
98e4e1d6d4fd7c7fd05d9e16402c95f1e7afeb4b97c8c68ac63e8abd11ff4ee7
+ sha256sums =
3f17b9ed2c1f8cc0f919fe477df99678c17778a31f1eeb56517e285e3cef30f2
+ sha256sums =
60caee20b53bcc69522556b35ac3d35d89e28c49b9a22a2ed5121df4a2c33be5
+
+pkgname = gnunet
diff --git a/contrib/packages/arch/gnunet/PKGBUILD
b/contrib/packages/arch/gnunet/PKGBUILD
new file mode 100644
index 000000000..2dfcdd6ec
--- /dev/null
+++ b/contrib/packages/arch/gnunet/PKGBUILD
@@ -0,0 +1,118 @@
+# Maintainer: grufo <madmurphy333 AT gmail DOT com>
+# Contributor: redfish <redfish AT galactica DOT pw>
+# Contributor: kertase <kertase AT gmail DOT com>
+# Contributor: Sergej Pupykin <pupykin DOT s+arch AT gmail.com>
+# Contributor: wahnby <wahnby AT yahoo DOT fr>
+
+pkgname='gnunet'
+pkgver='0.17.0'
+pkgrel=1
+pkgdesc='A framework for secure peer-to-peer networking'
+arch=('i686' 'x86_64')
+url="http://${pkgname}.org"
+license=('AGPL')
+conflicts=("${pkgname}-git" "${pkgname}-bin")
+depends=('brotli' 'gettext' 'gnurl' 'gnutls' 'iptables' 'jansson'
+ 'libextractor' 'libgcrypt' 'libidn2' 'libmicrohttpd' 'libsodium'
+ 'libtool' 'libunistring' 'nss' 'openssl' 'sqlite' 'which' 'zlib')
+makedepends=('bluez-libs' 'libpulse' 'libtool' 'opus' 'pkgconfig' 'postgresql'
+ 'python')
+optdepends=('bluez: for bluetooth transport'
+ 'gnunet-gtk: for handling the gnunet:// URI scheme'
+ 'libgabe: for Attribute-Based Encryption'
+ 'libogg: for conversation service'
+ 'libpabc: for re:claimID zero-knowledge privacy credentials'
+ 'libpulse: for conversation service'
+ 'miniupnpc: for NAT uPnP support'
+ 'mysql: for an alternative to sqlite in the database plugin'
+ 'opus: for conversation service'
+ 'pbc: for Attribute-Based Encryption'
+ 'postgresql: for an alternative to sqlite in the database plugin'
+ 'python: for test suite'
+ 'texi2mdoc: for automatic mdoc generation'
+ 'texinfo: for building the documentation'
+ 'texlive-core: for generating GNS business cards via gnunet-bcd'
+ 'zbar: for reading/writing QR codes using gnunet-qr')
+backup=("etc/${pkgname}.conf")
+source=("ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig}
+ "${pkgname}-system.service"
+ "${pkgname}.sysusers"
+ "${pkgname}.tmpfiles"
+ "${pkgname}-uri.desktop"
+ "${pkgname}-user.conf"
+ "${pkgname}-user.service")
+install="${pkgname}.install"
+validpgpkeys=('3D11063C10F98D14BD24D1470B0998EF86F59B6A')
+sha256sums=('6b2f7bf34c3c3986f2c294f04e881dda9db8ef636c0e78ebcf8084b8a47d49ca'
+ 'SKIP'
+ '163818b89beddcaf78937daba5bdf0ae060b2975de0731aa13d1ccdd813cf262'
+ '66299dbbdd0219d2f5f0520e69fc094f38f789724d973c2f63a421257ea4f755'
+ '5c34e1ecc6208900426f8e399e8c3edbef12cce19eba605fd7364ddb3547d9f0'
+ '98e4e1d6d4fd7c7fd05d9e16402c95f1e7afeb4b97c8c68ac63e8abd11ff4ee7'
+ '3f17b9ed2c1f8cc0f919fe477df99678c17778a31f1eeb56517e285e3cef30f2'
+ '60caee20b53bcc69522556b35ac3d35d89e28c49b9a22a2ed5121df4a2c33be5')
+
+prepare() {
+
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ export GNUNET_PREFIX='/usr/lib'
+ autoreconf -i
+
+}
+
+build() {
+
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix='/usr' --enable-experimental
+ make
+
+}
+
+package() {
+
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ install -dm755 "${pkgdir}/usr/lib/systemd/system"
+ install -Dm644 "${srcdir}/${pkgname}-system.service" \
+ "${pkgdir}/usr/lib/systemd/system/${pkgname}.service"
+
+ install -dm755 "${pkgdir}/usr/lib/systemd/user"
+ install -Dm644 "${srcdir}/${pkgname}-user.service" \
+ "${pkgdir}/usr/lib/systemd/user/${pkgname}.service"
+
+ install -dm755 "${pkgdir}/usr/lib/sysusers.d"
+ install -Dm644 "${srcdir}/${pkgname}.sysusers" \
+ "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
+
+ install -dm755 "${pkgdir}/usr/lib/tmpfiles.d"
+ install -Dm644 "${srcdir}/${pkgname}.tmpfiles" \
+ "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
+
+ install -dm755 "${pkgdir}/usr/share/applications"
+ install -Dm644 "${srcdir}/${pkgname}-uri.desktop" \
+ "${pkgdir}/usr/share/applications/${pkgname}-uri.desktop"
+
+ install -dm700 "${pkgdir}/etc/skel/.config"
+ install -Dm600 "${srcdir}/${pkgname}-user.conf" \
+ "${pkgdir}/etc/skel/.config/${pkgname}.conf"
+
+ # Automatically generate a configuration file using the content of
+ # `/usr/share/gnunet/config.d/` as model; in this way we can ensure
+ # that this configuration file is the one backed up with each update,
+ # while `/usr/share/gnunet/config.d/` is kept as immutable default
+ # configuration.
+
+ install -dm755 "${pkgdir}/etc"
+
+ {
+ echo "# /etc/${pkgname}.conf"
+ (cd "${pkgdir}" > /dev/null 2>&1 && find
"usr/share/${pkgname}/config.d" -type f -name '*.conf' \
+ -printf '\n\n# For the default values of the the
following lines please refer to\n# /%p\n\n' \
+ -exec cat '{}' ';')
+ } > "${pkgdir}/etc/${pkgname}.conf"
+
+}
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 @@
+[Unit]
+Description=GNUnet system service
+After=network.target
+
+[Service]
+Type=simple
+User=gnunet
+ExecStart=/usr/lib/gnunet/libexec/gnunet-service-arm -c /etc/gnunet.conf
+StateDirectory=gnunet
+StateDirectoryMode=0700
+
+[Install]
+WantedBy=multi-user.target
diff --git a/contrib/packages/arch/gnunet/gnunet-uri.desktop
b/contrib/packages/arch/gnunet/gnunet-uri.desktop
new file mode 100644
index 000000000..4f847d20f
--- /dev/null
+++ b/contrib/packages/arch/gnunet/gnunet-uri.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=GNUnet URI
+Exec=gnunet-uri %u
+GenericName=URI handler for the GNUnet network
+Icon=gnunet
+Type=Application
+Terminal=false
+NoDisplay=true
+MimeType=x-scheme-handler/gnunet;
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 @@
+[arm]
+START_SYSTEM_SERVICES = NO
+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 @@
+[Unit]
+Description=GNUnet user service
+After=network.target
+
+[Service]
+Type=simple
+ExecStart=/usr/lib/gnunet/libexec/gnunet-service-arm -c ~/.config/gnunet.conf
+
+[Install]
+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 @@
+post_install() {
+
+ local _PWD_PAIRS_="$(awk -F ':' '$3>=1000 && $3<2000 {print $1":"$6}'
'/etc/passwd')"
+ local _USER_
+ local _GROUP_
+ local _CFG_DIR_
+
+ for _PWD_PAIR_ in ${_PWD_PAIRS_}; do
+ _USER_="$(echo $_PWD_PAIR_ | cut -d ':' -f 1)"
+ _GROUP_="$(id -gn "${_USER_}")"
+ _CFG_DIR_="$(echo $_PWD_PAIR_ | cut -d ':' -f 2)/.config"
+ test -e "${_CFG_DIR_}/gnunet.conf" || (install -dm700 -o \
+ "${_USER_}" -g "${_GROUP_}" "${_CFG_DIR_}" && install \
+ -Dm600 -o "${_USER_}" -g "${_GROUP_}" \
+ '/etc/skel/.config/gnunet.conf' \
+ "${_CFG_DIR_}/gnunet.conf")
+ done
+
+ echo
+ echo 'Do not forget to add your user to the `gnunet` group, with'
+ echo
+ echo ' sudo usermod -aG gnunet "$(whoami)"'
+ echo
+ echo 'If later you want to remove your user from the group, launch'
+ echo
+ echo ' sudo gpasswd --delete "$(whoami)" gnunet'
+ echo
+ echo 'For information on how to use GNUnet plaese refer to the GNUnet
article in the'
+ echo 'ArchWiki (https://wiki.archlinux.org/title/GNUnet).'
+ echo
+
+}
+
+post_remove() {
+
+ echo
+ echo 'The home directory of the `gnunet` user (`/var/lib/gnunet/`) is
left after'
+ echo 'uninstalling GNUnet. If you are sure that you are never going to
use GNUnet'
+ echo 'ever again, launch:'
+ echo
+ echo ' for username in $(getent group gnunet | cut -d: -f4 | tr
'\'','\'' '\'' '\''); do \'
+ echo ' sudo gpasswd --delete "${username}" gnunet; done'
+ echo ' sudo userdel -r gnunet'
+ echo ' sudo groupdel gnunetdns'
+ echo
+ echo '**Warning** The identity and all the information about the
network'
+ echo 'cumulatively stored by the current peer will be destroyed - this
will not'
+ echo 'affect files explicitly downloaded in other paths.'
+ echo
+ echo 'For further information plaese refer to the GNUnet article in the
ArchWiki'
+ echo '(https://wiki.archlinux.org/title/GNUnet).'
+ echo
+
+}
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 @@
+g gnunet -
+u gnunet - "GNUnet system account" /var/lib/gnunet
+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 @@
+d /var/lib/gnunet 0700 gnunet gnunet - -
+z /usr/lib/gnunet/libexec/gnunet-helper-dns 4750 root gnunetdns - -
+z /usr/lib/gnunet/libexec/gnunet-helper-exit 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-nat-client 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-nat-server 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-transport-bluetooth 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-transport-wlan 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-helper-vpn 4755 root root - -
+z /usr/lib/gnunet/libexec/gnunet-service-dns 2750 gnunet gnunetdns - -
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnunet] branch master updated: Add Arch packages,
gnunet <=