here's a fix to make contrib/packages/fedora/10-dns2gns.sh portable.
Taken from my pkgsrc package, NetBSD header not removed, feel free to
do so or just take the patch as an info.
I'd suggest to add checkbashisms as part of dev tests to check all .sh
ERROR: [check-portability.awk] => Found test ... == ...:
ERROR: [check-portability.awk] contrib/packages/fedora/10-dns2gns.sh:31:
if [ $? == 0 ]; then
The "test" command, as well as the "[" command, are not required to know
the "==" operator. Only a few implementations like bash and some
versions of ksh support it.
When you run "test foo == foo" on a platform that does not support the
"==" operator, the result will be "false" instead of "true". This can
lead to unexpected behavior.
There are two ways to fix this error message. If the file that contains
the "test ==" is needed for building the package, you should create a
patch for it, replacing the "==" operator with "=". If the file is not
needed, add its name to the CHECK_PORTABILITY_SKIP variable in the
possible bashism in
line 31 (should be 'b = a'):
if [ $? == 0 ]; then
Martin Schanzenbach transcribed 6.2K bytes:
We are pleased to announce the release of GNUnet 0.18.0.
GNUnet is an alternative network stack for building secure, decentralized and
privacy-preserving distributed applications. Our goal is to replace the old
insecure Internet protocol stack. Starting from an application for secure
publication of files, it has grown to include all kinds of basic protocol
components and applications towards the creation of a GNU internet.
This is a new major release. It breaks protocol compatibility with the 0.17.x
versions. Please be aware that Git master is thus henceforth (and has been for a
while) INCOMPATIBLE with the 0.17.x GNUnet network, and interactions between old
and new peers will result in issues. 0.17.x peers will be able to communicate
with Git master or 0.18.x peers, but some services - in particular the DHT -
will not be compatible.
In terms of usability, users should be aware that there are still a number of
known open issues in particular with respect to ease of use, but also some
critical privacy issues especially for mobile users. Also, the nascent network
is tiny and thus unlikely to provide good anonymity or extensive amounts of
interesting information. As a result, the 0.18.0 release is still only suitable
for early adopters with some reasonable pain tolerance.
Note that due to mirror synchronization, not all links might be functional
early after the release. For direct access try http://ftp.gnu.org/gnu/gnunet/
Noteworthy changes in 0.18.0 (since 0.17.6):
UTIL: Added enum GNUNET_ErrorCode for better error handling throughout the
- Moved namecache updates out of namestore and into zonemaster.
This fixes issues from version 0.17.6 with respect to premature
namestore monitor update messages and zone propagation. [#7378]
- Added a new API for bulk imports: GNUNET_NAMESTORE_records_store2.
The API can be combined with the transactional API in order to
significantly improve namestore performance for lage zones. For
postgres databases, storing records is around 20x faster than the old
- New database setup utility gnunet-namestore-dbtool. Databases can be
initialized and reset using this new CLI. Currently, database plugins
still allow to initialize databases automatically as well by setting
INIT_ON_CONNECT (Default: YES). [#7204]
- There are new APIs for zone iterations and monitoring which support
filtering of records using GNUNET_GNSRECORD_Filter. By default,
maintenance records such as TOMBSTONEs are filtered. [#7193]
- New zonefile import utility gnunet-namestore-zonefile that for DNS
zone files. [#7396]
- Make use of new enum GNUNET_ErrorCode in C and REST API. [#7399]
- Included handling of orphaned GNS records. Records are orphaned of
Egos are (accidentally) deleted which makes operations on records
difficult but at the same time existing records are still published.
- Updated the C API documentation to reflect the above changes:
- Updated the user documentation to reflect the above changes and
included various tutorials on zone management:
- Updated the REST API and its documentation to reflect the above
ZONEMASTER: Zonemaster now uses worker threads for record signing.
DHT: The specification has been updated to reflect the changes:
BUILD: Fix mysql/mariadb detection (again). [#7356]
PACKAGING: Revamped the RPM package available through Fedora COPR and
A detailed list of changes can be found in the ChangeLog
(https://git.gnunet.org/gnunet.git/tree/ChangeLog) and the bug tracker
- There are known major design issues in the TRANSPORT, ATS and CORE
subsystems which will need to be addressed in the future to achieve
acceptable usability, performance and security.
- There are known moderate implementation limitations in CADET that
negatively impact performance.
- There are known moderate design issues in FS that also impact usability
- There are minor implementation limitations in SET that create unnecessary
attack surface for availability.
- The RPS subsystem remains experimental.
- Some high-level tests in the test-suite fail non-deterministically due to
the low-level TRANSPORT issues.
In addition to this list, you may also want to consult our bug tracker at
bugs.gnunet.org which lists about 190 more specific issues.
This release was the work of many people. The following people contributed code
and were thus easily identified: Christian Grothoff, Tristan Schwieren,
madmurphy, Willow Liquorice, t3sserakt, TheJackiMonster and Martin Schanzenbach.