README   README 
skipping to change at line 30 skipping to change at line 30
Please note that for many of its dependencies GNUnet requires very Please note that for many of its dependencies GNUnet requires very
recent versions of the libraries which are often NOT to be found in recent versions of the libraries which are often NOT to be found in
stable distributions in 2011. While using older packages may in some stable distributions in 2011. While using older packages may in some
cases on some operating systems may seem to work in some limited cases on some operating systems may seem to work in some limited
fashion, we are in many cases aware of serious problems with older fashion, we are in many cases aware of serious problems with older
packages. Hence please make sure to use the versions listed below. packages. Hence please make sure to use the versions listed below.
These are the direct dependencies for running GNUnet: These are the direct dependencies for running GNUnet:
- libextractor >= 0.6.1 - libextractor >= 0.6.1
- libmicrohttpd >= 0.9.21 - libmicrohttpd >= 0.9.18
- libgcrypt >= 1.2 - libgcrypt >= 1.2
- libcurl >= 7.21.0 - libcurl >= 7.21.0
- libunistring >= 0.9.2
- libltdl >= 2.2 (part of GNU libtool) - libltdl >= 2.2 (part of GNU libtool)
- sqlite >= 3.0 (default database) - sqlite >= 3.0 (default database)
- mysql >= 5.1 (alternative to sqLite) - mysql >= 5.1 (alternative to sqLite)
- postgres >= 8.3 (alternative to sqLite) - postgres >= 8.3 (alternative to sqLite)
Recommended autotools for compiling the SVN version are: Recommended autotools for compiling the SVN version are:
- autoconf >= 2.59 - autoconf >= 2.59
- automake >= 1.11.1 - automake >= 1.11.1
- libtool >= 2.2 - libtool >= 2.2
skipping to change at line 66 skipping to change at line 67
GNUnet requires the GNU MP library (http://www.gnu.org/software/gmp/) GNUnet requires the GNU MP library (http://www.gnu.org/software/gmp/)
and libgcrypt (http://www.gnupg.org/). You can specify the path to and libgcrypt (http://www.gnupg.org/). You can specify the path to
libgcrypt by passing "--with-gcrypt=PATH" to configure. You will also libgcrypt by passing "--with-gcrypt=PATH" to configure. You will also
need either sqlite (http://www.sqlite.org/), MySQL need either sqlite (http://www.sqlite.org/), MySQL
(http://www.mysql.org/) or PostGres (http://www.postgres.org/). (http://www.mysql.org/) or PostGres (http://www.postgres.org/).
If you install from source, you need to install GNU libextractor first If you install from source, you need to install GNU libextractor first
(download from http://www.gnu.org/software/libextractor/). We also (download from http://www.gnu.org/software/libextractor/). We also
recommend installing GNU libmicrohttpd (download from recommend installing GNU libmicrohttpd (download from
http://www.gnu.org/software/libmicrohttpd/). Then you can start the http://www.gnu.org/software/libmicrohttpd/). Then you can start the
actual GNUnet compilation process with: actual GNUnet compilation and installation process with:
$ ./configure --prefix=$HOME --with-extractor=$HOME $ export GNUNET_PREFIX=/usr/local # or other directory of your choice
$ addgroup gnunetdns
$ adduser gnunet gnunet
$ ./configure --prefix=$GNUNET_PREFIX --with-extractor=$LE_PREFIX
$ make $ make
# make install # make install
# sudo -u gnunet mkdir ~/.gnunet/ # sudo -u gnunet mkdir ~/.gnunet/
# sudo -u gnunet touch ~/.gnunet/gnunet.conf # sudo -u gnunet touch ~/.gnunet/gnunet.conf
# sudo -u gnunet gnunet-arm -s # sudo -u gnunet gnunet-arm -s
This will compile and install GNUnet to $HOME/bin/, $HOME/lib/ and This will create the users and groups needed for running GNUnet
$HOME/share/ and start the system with the default configuration. It securely and then compile and install GNUnet to $GNUNET_PREFIX/bin/,
is recommended that you add a user "gnunet" to run "gnunet-arm". You $GNUNET_PREFIX/lib/ and $GNUNET_PREFIX/share/ and start the system
can then still run the end-user applications as another user. If you with the default configuration. It is strongly recommended that you
create a user "gnunet", it is recommended that you edit the add a user "gnunet" to run "gnunet-arm". You can then still run the
configuration file slightly so that data can be stored in end-user applications as another user.
"/var/lib/gnunet"; you may also want to use "/etc/gnunet.conf" for the
location of the configuration file in this case. If you create a system user "gnunet", it is recommended that you edit
the configuration file slightly so that data can be stored in the
system user home directory at "/var/lib/gnunet"; you may also want to
use "/etc/gnunet.conf" for the location of the configuration file in
this case.
You can avoid running 'make install' as root if you run configure You can avoid running 'make install' as root if you run configure
with the "--with-sudo=yes" option and have extensive sudo rights with the "--with-sudo=yes" option and have extensive sudo rights
(can run chmod +s and chown via sudo). If you run 'make install' (can run "chmod +s" and "chown" via 'sudo'). If you run 'make install'
as a normal user without sudo rights (or the configure option), as a normal user without sudo rights (or the configure option),
certain binaries that require additional priviledges will not be certain binaries that require additional priviledges will not be
installed properly (and NAT traversal, WLAN and VPN will not work). installed properly (and autonomous NAT traversal, WLAN, DNS/GNS and
the VPN will then not work).
Note that additional, per-user configuration files Note that additional, per-user configuration files
(~/.gnunet/gnunet.conf) need to be created by each user (for example, (~/.gnunet/gnunet.conf) need to be created by each user (for example,
by running gnunet-setup). Note that gnunet-setup is a separate by running gnunet-setup). Note that gnunet-setup is a separate
download and requires recent versions of GTK+ and Glade; you can also download and requires recent versions of GTK+ and Glade; you can also
edit the configuration file by hand, but this is not recommended. For edit the configuration file by hand, but this is not recommended. For
more general information about the GNU build process read the INSTALL more general information about the GNU build process read the INSTALL
file. file.
If you are compiling the code from subversion, you have to run If you are compiling the code from subversion, you have to run
skipping to change at line 111 skipping to change at line 120
running of ". bootstrap" that looks like "macro `AM_PATH_GTK' not running of ". bootstrap" that looks like "macro `AM_PATH_GTK' not
found in library", you may need to run aclocal by hand with the -I found in library", you may need to run aclocal by hand with the -I
option, pointing to your aclocal m4 macros, i.e. option, pointing to your aclocal m4 macros, i.e.
$ aclocal -I /usr/local/share/aclocal $ aclocal -I /usr/local/share/aclocal
Configuration Configuration
============= =============
GNUnet uses two types of configuration files, one that specifies the GNUnet uses two types of configuration files, one that specifies the
system-wide defaults (typically located in /usr/share/gnunet/defaults system-wide defaults (typically located in
.conf) and a second one that overrides default values with $GNUNET_PREFIX/share/gnunet/config.d/) and a second one that overrides
user-specific preferences. The user-specific configuration file default values with user-specific preferences. The user-specific
should be located in "~/.gnunet/gnunet.conf" or its location can be configuration file should be located in "~/.gnunet/gnunet.conf" or its
specified by giving the "-c" option to the respective GNUnet location can be specified by giving the "-c" option to the respective
application. GNUnet application.
The defaults that are shipped with the installation are usually ok, The defaults that are shipped with the installation are usually ok,
you may want to adjust the limitations (space consumption, bandwidth, you may want to adjust the limitations (space consumption, bandwidth,
etc.) though. The configuration files are human-readable. Note that etc.) though. The configuration files are human-readable. Note that
you MUST create "~/.gnunet/gnunet.conf" explicitly before starting you MUST create "~/.gnunet/gnunet.conf" explicitly before starting
GNUnet. You can either run gnunet-setup (available as part of the GNUnet. You can either run gnunet-setup (available as part of the
gnunet-gtk source package) or simply create an empty file. gnunet-gtk source package) or simply create an empty file.
Usage Usage
===== =====
skipping to change at line 164 skipping to change at line 173
This will display a list of results to the console. Then use This will display a list of results to the console. Then use
$ gnunet-download -o FILENAME GNUNET_URI $ gnunet-download -o FILENAME GNUNET_URI
to retrieve a file. The GNUNET_URI is printed by gnunet-search to retrieve a file. The GNUNET_URI is printed by gnunet-search
together with a description. To publish files on GNUnet, use the together with a description. To publish files on GNUnet, use the
"gnunet-publish" command. "gnunet-publish" command.
The GTK user interface is shipped separately. After downloading and The GTK user interface is shipped separately. After downloading and
installing gnunet-gtk, you can invoke the GUI with: installing gnunet-gtk, you can invoke the setup tool and the
file-sharing GUI with:
$ gnunet-gtk $ gnunet-setup
$ gnunet-fs-gtk
For further documentation, see our webpage. For further documentation, see our webpage.
Hacking GNUnet Hacking GNUnet
============== ==============
Contributions are welcome, please submit bugs to Contributions are welcome, please submit bugs to
https://gnunet.org/bugs/. Please make sure to run contrib/report.sh https://gnunet.org/bugs/. Please make sure to run contrib/report.sh
and include the output with your bug reports. More about how to and include the output with your bug reports. More about how to
report bugs can be found in the GNUnet FAQ on the webpage. Submit report bugs can be found in the GNUnet FAQ on the webpage. Submit
 End of changes. 10 change blocks. 
21 lines changed or deleted 32 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/