cd2f043990f92ee7658e537bee55c1feb21c7ebb
[oweals/gnunet.git] / doc / documentation / gnunet.texi
1 \input texinfo
2 @c -*-texinfo-*-
3
4 @c %**start of header
5 @setfilename gnunet.info
6 @documentencoding UTF-8
7 @settitle GNUnet Reference Manual
8 @exampleindent 2
9 @c It seems as if this breaks some old garbage version of
10 @c texinfo running on some systems. FIXME!!!
11 @c @urefbreakstyle before
12 @c %**end of header
13
14 @include version.texi
15
16 @c Set Versions which might be used in more than one place:
17 @set GNUFTP-URL https://ftp.gnu.org/gnu/gnunet
18 @set PYPI-URL https://pypi.python.org/packages/source
19 @set GNURL-VERSION-CURRENT 7.55.1
20 @set GNUNET-DIST-URL https://gnunet.org/sites/default/files/
21 @c @set OPENPGP-SIGNING-KEY-ID
22
23 @copying
24 Copyright @copyright{} 2001-2018 GNUnet e.V.
25
26 Permission is granted to copy, distribute and/or modify this document
27 under the terms of the GNU Free Documentation License, Version 1.3 or
28 any later version published by the Free Software Foundation; with no
29 Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
30 copy of the license is included in the section entitled ``GNU Free
31 Documentation License''.
32
33 A copy of the license is also available from the Free Software
34 Foundation Web site at @url{http://www.gnu.org/licenses/fdl.html}.
35
36 Alternately, this document is also available under the General
37 Public License, version 3 or later, as published by the Free Software
38 Foundation.  A copy of the license is included in the section entitled
39 ``GNU General Public License''.
40
41 A copy of the license is also available from the Free Software
42 Foundation Web site at @url{http://www.gnu.org/licenses/gpl.html}.
43 @end copying
44
45 @c TODO: Improve this and improve https://directory.fsf.org/wiki/Gnunet
46 @c NOTE FOR TRANSLATORS: Due to en.wikipedia.org being the wikipedia
47 @c                       which is more up to date than others, refrain
48 @c                       from using localized wikipedia unless you are
49 @c                       sure the articles content is good enough. For
50 @c                       example the german wikipedia entry for GNUnet
51 @c                       is in a terrible shape, but the en.wikipedia.org
52 @c                       entry is still acceptable (although in need of
53 @c                       updates).
54
55 @dircategory Networking
56 @direntry
57 * GNUnet: (gnunet).       Framework for secure peer-to-peer networking
58 @end direntry
59
60 @titlepage
61 @title GNUnet Reference Manual
62 @subtitle Installing, configuring, using and contributing to GNUnet
63 @author The GNUnet Developers
64
65 @page
66 @vskip 0pt plus 1filll
67 Edition @value{EDITION} @*
68 @value{UPDATED} @*
69
70 @insertcopying
71 @end titlepage
72
73 @summarycontents
74 @contents
75
76 @node Top
77 @top Introduction
78
79 This document is the Reference Manual for GNUnet version @value{VERSION}.
80
81 @menu
82
83 * Preface::                         Chapter 0
84 * Philosophy::                      About GNUnet
85 @c * Vocabulary::                      Vocabulary
86 * Using GNUnet::                    Using GNUnet
87 @c * Configuration Handbook::          Configuring GNUnet
88 * GNUnet Contributors Handbook::    Contributing to GNUnet
89 * GNUnet Developer Handbook::       Developing GNUnet
90 * GNU Free Documentation License::  The license of this manual
91 * GNU General Public License::      The license of this manual
92 * Concept Index::                   Concepts
93 * Programming Index::               Data types, functions, and variables
94
95 @detailmenu
96  --- The Detailed Node Listing ---
97
98 Preface
99
100 * About this book
101 * Introduction
102 * General Terminology::
103 * Typography::
104
105 Philosophy
106
107 * Design Goals::
108 * Security and Privacy::
109 * Versatility::
110 * Practicality::
111 * Key Concepts::
112 * Authentication::
113 * Accounting to Encourage Resource Sharing::
114 * Confidentiality::
115 * Anonymity::
116 * Deniability::
117 * Peer Identities::
118 * Zones in the GNU Name System (GNS Zones)::
119 * Egos::
120 * Backup of Identities and Egos::
121 * Revocation::
122
123 Using GNUnet
124
125 * Checking the Installation::
126 * First steps - File-sharing::
127 * First steps - Using the GNU Name System::
128 * First steps - Using GNUnet Conversation::
129 * First steps - Using the GNUnet VPN::
130 * File-sharing::
131 * The GNU Name System::
132 * Using the Virtual Public Network::
133 * The graphical configuration interface::
134 * How to start and stop a GNUnet peer::
135
136 GNUnet Contributors Handbook
137
138 * Contributing to GNUnet::
139 * Licenses of contributions::
140 * Copyright Assignment::
141 * Contributing to the Reference Manual::
142
143 GNUnet Developer Handbook
144
145 * Developer Introduction::
146 * Internal dependencies::
147 * Code overview::
148 * System Architecture::
149 * Subsystem stability::
150 * Naming conventions and coding style guide::
151 * Build-system::
152 * Developing extensions for GNUnet using the gnunet-ext template::
153 * Writing testcases::
154 * Building GNUnet and its dependencies::
155 * TESTING library::
156 * Performance regression analysis with Gauger::
157 * TESTBED Subsystem::
158 * libgnunetutil::
159 * Automatic Restart Manager (ARM)::
160 * TRANSPORT Subsystem::
161 * NAT library::
162 * Distance-Vector plugin::
163 * SMTP plugin::
164 * Bluetooth plugin::
165 * WLAN plugin::
166 * ATS Subsystem::
167 * CORE Subsystem::
168 * CADET Subsystem::
169 * NSE Subsystem::
170 * HOSTLIST Subsystem::
171 * IDENTITY Subsystem::
172 * NAMESTORE Subsystem::
173 * PEERINFO Subsystem::
174 * PEERSTORE Subsystem::
175 * SET Subsystem::
176 * STATISTICS Subsystem::
177 * Distributed Hash Table (DHT)::
178 * GNU Name System (GNS)::
179 * GNS Namecache::
180 * REVOCATION Subsystem::
181 * File-sharing (FS) Subsystem::
182 * REGEX Subsystem::
183
184 @end detailmenu
185 @end menu
186
187 @c *********************************************************************
188 @include chapters/preface.texi
189 @c *********************************************************************
190
191 @c *********************************************************************
192 @include chapters/philosophy.texi
193 @c *********************************************************************
194
195 @c *********************************************************************
196 @include chapters/user.texi
197 @c *********************************************************************
198
199 @include chapters/contributing.texi
200
201 @c *********************************************************************
202 @include chapters/developer.texi
203 @c For now in its own Book:
204 @c @include gnunet-c-tutorial.texi
205 @c *********************************************************************
206
207 @c *********************************************************************
208 @node GNU Free Documentation License
209 @appendix GNU Free Documentation License
210 @cindex license, GNU Free Documentation License
211 @include fdl-1.3.texi
212
213 @c *********************************************************************
214 @node GNU General Public License
215 @appendix GNU General Public License
216 @cindex license, GNU General Public License
217 @include gpl-3.0.texi
218
219 @c *********************************************************************
220 @node Concept Index
221 @unnumbered Concept Index
222 @printindex cp
223
224 @node Programming Index
225 @unnumbered Programming Index
226 @syncodeindex tp fn
227 @syncodeindex vr fn
228 @printindex fn
229
230 @bye