Search Criteria
Package Details: gnunet-git 0.11.0-1
Git Clone URL: | https://aur.archlinux.org/gnunet-git.git (read-only) |
---|---|
Package Base: | gnunet-git |
Description: | A framework for secure peer-to-peer networking |
Upstream URL: | http://gnunet.org |
Keywords: | Anonymity GNUnet Internet P2P |
Licenses: | |
Conflicts: | |
Provides: | |
Submitter: | grufo |
Maintainer: | grufo (redfish) |
Last Packager: | redfish |
Votes: | 1 |
Popularity: | 0.001243 |
First Submitted: | 2018-03-16 13:42 |
Last Updated: | 2018-08-23 00:31 |
Dependencies (20)
- gnurl (gnurl-git)
- jansson
- libextractor
- libmicrohttpd (libmicrohttpd-git)
- sqlite (sqlite-fossil, sqlite-replication)
- autoconf (autoconf-git) (make)
- bluez-libs (bluez-git) (make)
- fakeuser-git (make)
- gettext (gettext-git) (make)
- glpk (make)
- libpulse (libpulse-nosystemd, pulseaudio-git) (make)
- opus (opus-git) (make)
- pkgconfig (pkg-config-git, pkgconf-git, pkgconf) (make)
- python2 (pypy19, stackless-python2) (make)
- bluez-libs (bluez-git) (optional)
- glpk (optional)
- libpulse (libpulse-nosystemd, pulseaudio-git) (optional)
- opus (opus-git) (optional)
- python2 (pypy19, stackless-python2) (optional)
- python2-zbar (optional)
Required by (4)
- gnunet-fuse (requires gnunet)
- gnunet-fuse-git (requires gnunet)
- gnunet-gtk-git
- gnunet-webui-git (requires gnunet)
Latest Comments
grufo commented on 2018-08-24 10:27
@redfish
Thanks for removing the “already satisfied” deps and for adding
zbar
.As for the “maybe optional” ones, it's hard to decide what to do. The official Arch package lists them as optional as well. On the one hand Arch developers might be wrong as anyone else, but on the other hand that means that likely no one has ever reported any crash concerning missing deps. I would keep things as they are, but I wouldn't bet it's the right choice.
About the version, I am not completely sure. Sometimes we might want to “force” users to perform an uptdate if a git revision solves important security bugs. We could do this also through
pkgrel
, but this in my opinion would not be semantically the right way.redfish commented on 2018-08-23 00:39
@grufo: Good catch. Those are transitive deps (via libmicrohttpd->gnutls->nettle, etc). I removed them.
Re optional vs non-optional: maybe we should make those deps required if gnunet will really crash if you try to use that functionality but didn't install those packages.
Btw, gnunet-qr needs zbar. I added it (as optional, but perhaps it should be required since gnunet-qr is installed by default). zbar is only available for python 2 so I switched the whole build to python 2.
Re version: what I do for other packages is keep the version clean without the hash/revision, and bump the version only every time upstream release happens. So users will be notified of an update when release updates, but they always can rebuild the package to get latest master whenever they want. When committing, I just make sure to exclude the change to the version from PKGBUILD and .SRCINFO.
grufo commented on 2018-08-22 13:06
@redfish
I just launched
namcap
and, among other things, this is what I got:It seems to suggest to move
python
,libpulse
andopus
fromoptdepends
todepends
, and moreover it shows a weird message concerninggmp
,libgcrypt
,libunistring
,libidn
(“Dependency included but already satisfied”).Any idea?
grufo commented on 2018-03-23 16:00
@redfish
Thank you very much for your help! Yes, this package had been removed and I used the official
gnunet
package as a new starting base. After your suggestions I fixed everything and I think that the gnunet user issue might be solvable by usingfakeuser
(https://aur.archlinux.org/packages/fakeuser-git/). I am going to send you an email with the updates for a test/review.--grufo
redfish commented on 2018-03-23 05:47
The defaults.conf is out-of-date (for example, USE_LOCALADDR is no longer a valid option) and this file should be removed from the package, because the default configs are automatically installed into /usr/share/gnunet/config.d/*.conf. If the user wants to change the defaults, he should create a /etc/gnunetd.conf and define only the options he wants to override. (Similar usage model as systemd config files.) It's not good to have all defaults in this .conf in the package, because it will fall out of sync with upstream.
Option
--with-nssdir
no longer exists. Remove it, please.Remove this too, these files are no longer installed: rm -rf "${pkgdir}/usr/include/libltdl" "${pkgdir}/usr/lib/libltdl".* "${pkgdir}/usr/include/ltdl.h"
The package version should still contain the major.minor.build version in addition to VCS revision height and commit hash, like so: 0.11.0.r123.gaabbccddeeff. Here is a corrected pkgver():
The recommendation printed by the configure script is to create a dedicated 'gnunet' user and a 'gnunetdns' group. It's not good to run as nobody because gnunet creates files, so those files should be owned by gnunet user. So, please add an install file to the package that will create the user, the gnunetdns group, and the /var/lib/gnunet. Also, then, add under [PATHS] one option SERVICEHOME = /var/lib/gnunet to the gnunet.conf in this package. Also, at the time of running 'make install' the group gnunetdns must exist, otherwise the permissions/ownership on some service executables are not going to be correct and they will fail to start. I am not sure what is the best way to do this, because creating the group in package() seems not conventional. If not that, then a alternative would be to patch up the ownership with chmod in .install, the disadvantage is that it duplicates upstream commands and will go out of sync with upstream.
Add shutdown command to .service and and add this to avoid issue with child process detection (I had some issue):
I can provide a diff, if you prefer.
Btw, why was this package re-created and re-uploade? As a result the AUR comments were lost. Also it might be good to credit the original uploader in the contributors list: kertase kertase at gmail com