Merge branch 'master' of gnunet.org:gnunet
[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
47 @dircategory Networking
48 @direntry
49 * GNUnet: (gnunet).       Framework for secure peer-to-peer networking
50 @end direntry
51
52 @titlepage
53 @title GNUnet Reference Manual
54 @subtitle Installing, configuring, using and contributing to GNUnet
55 @author The GNUnet Developers
56
57 @page
58 @vskip 0pt plus 1filll
59 Edition @value{EDITION} @*
60 @value{UPDATED} @*
61
62 @insertcopying
63 @end titlepage
64
65 @summarycontents
66 @contents
67
68 @node Top
69 @top Introduction
70
71 This document is the Reference Manual for GNUnet version @value{VERSION}.
72
73 @menu
74
75 * Philosophy::                      About GNUnet
76 @c * Vocabulary::                      Vocabulary
77 * GNUnet Installation Handbook::    How to install GNUnet
78 * Using GNUnet::                    Using GNUnet
79 @c * Configuration Handbook::          Configuring GNUnet
80 * GNUnet Contributors Handbook::    Contributing to GNUnet
81 * GNUnet Developer Handbook::       Developing GNUnet
82 * GNU Free Documentation License::  The license of this manual
83 * GNU General Public License::      The license of this manual
84 * Concept Index::                   Concepts
85 * Programming Index::               Data types, functions, and variables
86
87 @detailmenu
88  --- The Detailed Node Listing ---
89
90 Terminology and Typography
91
92 * Terminology
93 * Typography
94
95 Philosophy
96
97 * Design Goals::
98 * Security and Privacy::
99 * Versatility::
100 * Practicality::
101 * Key Concepts::
102 * Authentication::
103 * Accounting to Encourage Resource Sharing::
104 * Confidentiality::
105 * Anonymity::
106 * Deniability::
107 * Peer Identities::
108 * Zones in the GNU Name System (GNS Zones)::
109 * Egos::
110 * Backup of Identities and Egos::
111 * Revocation::
112
113 @c Vocabulary
114 @c 
115 @c * Definitions abbreviations and acronyms::
116 @c * Words and characters::
117 @c * Technical Assumptions::
118
119 GNUnet Installation Handbook
120
121 * Dependencies::
122 * Pre-installation notes::
123 * Generic installation instructions::
124 * Build instructions for Ubuntu 12.04 using Git::
125 * Build instructions for software builds from source::
126 * Build Instructions for Microsoft Windows Platforms::
127 * Build instructions for Debian 7.5::
128 * Installing GNUnet from Git on Ubuntu 14.4::
129 * Build instructions for Debian 8::
130 * Outdated build instructions for previous revisions::
131 @c * Portable GNUnet::
132 * The graphical configuration interface::
133 * How to start and stop a GNUnet peer::
134
135 Using GNUnet
136
137 * Checking the Installation::
138 * First steps - File-sharing::
139 * First steps - Using the GNU Name System::
140 * First steps - Using GNUnet Conversation::
141 * First steps - Using the GNUnet VPN::
142 * File-sharing::
143 * The GNU Name System::
144 * Using the Virtual Public Network::
145
146 @c Configuration Handbook
147
148 GNUnet Contributors Handbook
149
150 * Contributing to GNUnet::
151 * Licenses of contributions::
152 * Copyright Assignment::
153 * Contributing to the Reference Manual::
154
155 GNUnet Developer Handbook
156
157 * Developer Introduction::
158 * Code overview::
159 * System Architecture::
160 * Subsystem stability::
161 * Naming conventions and coding style guide::
162 * Build-system::
163 * Developing extensions for GNUnet using the gnunet-ext template::
164 * Writing testcases::
165 * TESTING library::
166 * Performance regression analysis with Gauger::
167 * TESTBED Subsystem::
168 * libgnunetutil::
169 * Automatic Restart Manager (ARM)::
170 * TRANSPORT Subsystem::
171 * NAT library::
172 * Distance-Vector plugin::
173 * SMTP plugin::
174 * Bluetooth plugin::
175 * WLAN plugin::
176 * ATS Subsystem::
177 * CORE Subsystem::
178 * CADET Subsystem::
179 * NSE Subsystem::
180 * HOSTLIST Subsystem::
181 * IDENTITY Subsystem::
182 * NAMESTORE Subsystem::
183 * PEERINFO Subsystem::
184 * PEERSTORE Subsystem::
185 * SET Subsystem::
186 * STATISTICS Subsystem::
187 * Distributed Hash Table (DHT)::
188 * GNU Name System (GNS)::
189 * GNS Namecache::
190 * REVOCATION Subsystem::
191 * File-sharing (FS) Subsystem::
192 * REGEX Subsystem::
193
194 @end detailmenu
195 @end menu
196
197 @c *********************************************************************
198 @include chapters/terminology.texi
199 @c *********************************************************************
200
201 @c *********************************************************************
202 @include chapters/philosophy.texi
203 @c *********************************************************************
204
205 @c WIP:
206 @c @include chapters/vocabulary.texi
207
208 @c *********************************************************************
209 @include chapters/installation.texi
210 @c *********************************************************************
211
212 @c *********************************************************************
213 @include chapters/user.texi
214 @c *********************************************************************
215
216 @c WIP:
217 @c @include chapters/configuration.texi
218
219 @include chapters/contributing.texi
220
221 @c *********************************************************************
222 @include chapters/developer.texi
223 @c For now in its own Book:
224 @c @include gnunet-c-tutorial.texi
225 @c *********************************************************************
226
227 @c *********************************************************************
228 @node GNU Free Documentation License
229 @appendix GNU Free Documentation License
230 @cindex license, GNU Free Documentation License
231 @include fdl-1.3.texi
232
233 @c *********************************************************************
234 @node GNU General Public License
235 @appendix GNU General Public License
236 @cindex license, GNU General Public License
237 @include gpl-3.0.texi
238
239 @c *********************************************************************
240 @node Concept Index
241 @unnumbered Concept Index
242 @printindex cp
243
244 @node Programming Index
245 @unnumbered Programming Index
246 @syncodeindex tp fn
247 @syncodeindex vr fn
248 @printindex fn
249
250 @bye