-fix #3211
[oweals/gnunet.git] / doc / man / gnunet.conf.5
1 .TH GNUNET.CONF "5" "12 Aug 2013" "GNUnet"
2 .SH NAME
3 gnunet.conf \- GNUnet configuration file
4 .SH SYNOPSIS
5 ~/.config/gnunet.conf
6 .SH DESCRIPTION
7 .PP
8
9 A GNUnet setup typically consists of a a set of service processes run by a user "gnunet" and a set of user-interface processes run by a standard account.  The default location for the configuration file for the services is "~gnunet/.config/gnunet.conf"; however, as normal users also may need read-access to this configuration, you might want to instead put the service process configuration in "/etc/gnunet.conf".  gnunet\-setup (part of the GTK package) can be used to edit this configuration.  The parts of GNUnet that is ran as a normal user may have config options too and they read from "$HOME/.config/gnunet.conf". The latter config file can skip any options for the services.
10
11 .TP
12 The basic structure of the configuration file is the following.  The file is split into sections.  Every section begins with "[SECTIONNAME]" and contains a number of options of the form "OPTION=VALUE".  Empty lines and lines beginning with a "#" are treated as comments.  Almost all options are optional and the tools resort to reasonable defaults if they are not present.
13 .PP
14 Default values for all of the options can be found in the files in the "$GNUNET_PREFIX/share/gnunet/config.d/" directory. A typical setup will work out of the box with those. See the examples section below for some common setups on top of that.
15
16 .SH General OPTIONS
17 .PP
18 Many options will be common between sections. They can be repeated under each section with different values.  The "[PATHS]" section is special. Here, it is possible to specify values for variables like "GNUNET_HOME".  Then, in all filenames that begin with "$GNUNET_HOME" the "$GNUNET_HOME" will be replaced with the respective value at runtime.  The main use of this is to redefine "$GNUNET_HOME", which by default points to "$HOME/.config/".  By setting this variable, you can change the location where GNUnet stores its internal data.
19 .PP
20
21 The following options are generic and shared by all services:
22
23 .IP HOSTNAME
24     The hostname specifies the machine on which the service is running.  This is usually "localhost".
25 .IP BINARY
26     The filename that implements the service. For example "gnunet-service-ats".
27 .IP AUTOSTART
28     This defines the section it is defined in, which should be a service, will be started by the ARM service if the value is set to YES.
29 .IP ACCEPT_FROM
30     A semi-column separated list of IPv4 addresses that are allowed to use the service; usually 127.0.0.1.
31 .IP ACCEPT_FROM6
32     A semi-column separated list of IPv6 addresses that are allowed to use the service; usually ::1.
33 .IP UNIXPATH
34     Path to use for the UNIX domain socket for inter process communication with the service on POSIX systems.
35 .IP UNIX_MATCH_UID
36     If UNIX domain sockets are used, set this to YES if only users with the same UID are allowed to access the service.
37 .IP UNIX_MATCH_GID
38     If UNIX domain sockets are used, set this to YES if only users with the same GID are allowed to access the service.
39 .IP USER_SERVICE
40     Set to YES if this service should be run per-user, NO if this is a system service.  End-users should never have to change the defaults GNUnet provides for this option.
41
42
43
44 .SH ARM Options
45
46 This section is configuration for the automatic restart manager which is responsible for launching services.
47
48 .IP DEFAULTSERVICES
49     list of services that ARM should always start by default.  AUTOSTART services are only started when the service is needed by some other service.  The services listed here will always be started, not just on-demand.  "topology" and "hostlist" should virtually always be listed here, and most users will want to specify high-level applications like "fs", "gns" or "pt" here as well.
50 .B
51 .SH ATS Options
52
53 .IP UNSPECIFIED_QUOTA_IN
54     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
55 .IP UNSPECIFIED_QUOTA_OUT
56     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
57 .IP LOOPBACK_QUOTA_IN
58     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
59 .IP LOOPBACK_QUOTA_OUT
60     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
61 .IP LAN_QUOTA_IN
62     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
63 .IP LAN_QUOTA_OUT
64     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
65 .IP WAN_QUOTA_IN
66     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
67 .IP WAN_QUOTA_OUT
68     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
69 .IP WLAN_QUOTA_IN
70     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
71 .IP WLAN_QUOTA_OUT
72     quotes in KiB or MiB per seconds.  Or use the word "unlimited"
73
74 .SH EXAMPLES
75
76 This example is a simple way to get started, using a server that has a known list of peers to get you started. Most users will be behind a firewal on IPv4, as such NAT is enabled.  Please rememeber to change your IP address to the actual external address for your usage.
77 .PP
78     [hostlist]
79     OPTIONS = -b
80     SERVERS = http://v9.gnunet.org:58080/
81
82     [arm]
83     DEFAULTSERVICES = topology hostlist fs
84
85     [nat]
86     BEHIND_NAT = YES
87     ENABLE_UPNP = YES
88     DISABLEV6 = YES
89     EXTERNAL_ADDRESS = 157.166.249.10
90
91 .SH FILES
92 .TP
93 ~/.config/gnunet.conf
94 GNUnet configuration file
95 .SH "REPORTING BUGS"
96 Report bugs by using Mantis <https://gnunet.org/bugs/> or by sending electronic mail to <bug-gnunet@gnu.org>
97 .SH "SEE ALSO"
98 \fBgnunet\-setup\fP(1), \fBgnunet\-arm\fP(1)