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