aboutsummaryrefslogtreecommitdiff
path: root/doc/documentation/chapters/preface.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/documentation/chapters/preface.texi')
-rw-r--r--doc/documentation/chapters/preface.texi67
1 files changed, 47 insertions, 20 deletions
diff --git a/doc/documentation/chapters/preface.texi b/doc/documentation/chapters/preface.texi
index 00e6290f0..29cf924a2 100644
--- a/doc/documentation/chapters/preface.texi
+++ b/doc/documentation/chapters/preface.texi
@@ -12,9 +12,9 @@ all kinds of basic applications for the foundation of a new Internet.
12 12
13@menu 13@menu
14* About this book:: 14* About this book::
15* Contributing to this book::
15* Introduction:: 16* Introduction::
16* Project governance:: 17* Project governance::
17* General Terminology::
18* Typography:: 18* Typography::
19@end menu 19@end menu
20 20
@@ -37,6 +37,26 @@ The first chapter (``Preface'') as well as the the second
37chapter (``Philosophy'') give an introduction to GNUnet as a project, 37chapter (``Philosophy'') give an introduction to GNUnet as a project,
38what GNUnet tries to achieve. 38what GNUnet tries to achieve.
39 39
40@node Contributing to this book
41@section Contributing to this book
42
43The GNUnet Reference Manual is a collective work produced by various
44people throughout the years. The version you are reading is derived
45from many individual efforts hosted on our website. This was a failed
46experiment, and with the conversion to Texinfo we hope to address this
47in the longterm. Texinfo is the documentation language of the GNU project.
48While it can be intimidating at first and look scary or complicated,
49it is just another way to express text format instructions. We encourage
50you to take this opportunity and learn about Texinfo, learn about GNUnet,
51and one word at a time we will arrive at a book which explains GNUnet in
52the least complicated way to you. Even when you don't want or can't learn
53Texinfo, you can contribute. Send us an Email or join our IRC chat room
54on freenode and talk with us about the documentation (the prefered way
55to reach out is the mailinglist, since you can communicate with us
56without waiting on someone in the chatroom). One way or another you
57can help shape the understanding of GNUnet without the ability to read
58and understand its sourcecode.
59
40@node Introduction 60@node Introduction
41@section Introduction 61@section Introduction
42 62
@@ -66,25 +86,31 @@ immediately. A few months after the first release we contacted the
66GNU project, happily agreed to their governance model and became an 86GNU project, happily agreed to their governance model and became an
67official GNU package. 87official GNU package.
68 88
69Within the first year, we created GNU libextractor, a helper library 89Within the first year, we created
90@uref{https://gnu.org/s/libextractor, GNU libextractor}, a helper library
70for meta data extraction which has been used by a few other projects 91for meta data extraction which has been used by a few other projects
71as well. 2003 saw the emergence of pluggable transports, the ability 92as well. 2003 saw the emergence of pluggable transports, the ability
72for GNUnet to use different mechanisms for communication, starting 93for GNUnet to use different mechanisms for communication, starting
73with TCP, UDP and SMTP (support for the latter was later dropped due 94with TCP, UDP and SMTP (support for the latter was later dropped due
74to a lack of maintenance). In 2005, the project first started to 95to a lack of maintenance). In 2005, the project first started to
75evolve beyond the original file-sharing application with a first 96evolve beyond the original file-sharing application with a first
76simple P2P chat. In 2007, we created GNU libmicrohttpd 97simple P2P chat. In 2007, we created
98@uref{https://gnu.org/s/libmicrohttpd, GNU libmicrohttpd}
77to support a pluggable transport based on HTTP. In 2009, the 99to support a pluggable transport based on HTTP. In 2009, the
78architecture was radically modularized into the multi-process system 100architecture was radically modularized into the multi-process system
79that exists today. Coincidentally, the first version of the ARM 101that exists today. Coincidentally, the first version of the ARM@footnote{ARM: Automatic Restart Manager}
80service was implemented a day before systemd was announced. From 2009 102service was implemented a day before systemd was announced. From 2009
81to 2014 work progressed rapidly thanks to a significant research grant 103to 2014 work progressed rapidly thanks to a significant research grant
82from the Deutsche Forschungsgesellschaft. This resulted in particular 104from the Deutsche Forschungsgesellschaft. This resulted in particular
83in the creation of the R5N DHT, CADET, ATS and the GNU Name System. 105in the creation of the R5N DHT, CADET, ATS and the GNU Name System.
84In 2010, GNUnet was selected as the basis for the SecuShare online 106In 2010, GNUnet was selected as the basis for the
85social network, resutling in a significant growth of the core team. 107@uref{https://secushare.org, secushare} online
86In 2013, we launched GNU Taler to address the challenge of convenient 108social network, resulting in a significant growth of the core team.
87and privacy-preserving online payments. In 2015, the pEp project 109In 2013, we launched @uref{https://taler.net, GNU Taler} to address
110the challenge of convenient
111and privacy-preserving online payments. In 2015, the
112@c TODO: Maybe even markup for the E if it renders in most outputs.
113@uref{https://pep.foundation/, pEp}@footnote{pretty easy privacy} project
88announced that they will use GNUnet as the technology for their 114announced that they will use GNUnet as the technology for their
89meta-data protection layer, ultimately resulting in GNUnet e.V. 115meta-data protection layer, ultimately resulting in GNUnet e.V.
90entering into a formal long-term collaboration with the pEp 116entering into a formal long-term collaboration with the pEp
@@ -99,9 +125,9 @@ computing has been the core driver of the GNU project. With GNUnet we
99are focusing on informational self-determination for collaborative 125are focusing on informational self-determination for collaborative
100computing and communication over networks. 126computing and communication over networks.
101 127
102The Internet is shaped as much by code and protocols as by its 128The Internet is shaped as much by code and protocols as it is by its
103associated political processes (IETF, ICANN, IEEE, etc.), and its 129associated political processes (IETF, ICANN, IEEE, etc.).
104flaws are similarly not limited to the protocol design. Thus, 130Similarly its flaws are not limited to the protocol design. Thus,
105technical excellence by itself will not suffice to create a better 131technical excellence by itself will not suffice to create a better
106network. We also need to build a community that is wise, humble and 132network. We also need to build a community that is wise, humble and
107has a sense of humor to achieve our goal to create a technical 133has a sense of humor to achieve our goal to create a technical
@@ -116,23 +142,22 @@ follows the governance model of a benevolent dictator. This means
116that ultimately, the GNU project appoints the GNU maintainer and can 142that ultimately, the GNU project appoints the GNU maintainer and can
117overrule decisions made by the GNUnet maintainer. Similarly, the 143overrule decisions made by the GNUnet maintainer. Similarly, the
118GNUnet maintainer can overrule any decisions made by individual 144GNUnet maintainer can overrule any decisions made by individual
145@c TODO: Should we mention if this is just about GNUnet? Other projects
146@c TODO: in GNU seem to have rare issues (GCC, the 2018 documentation
147@c TODO: discussion.
119developers. Still, in practice neither has happened in the last 20 148developers. Still, in practice neither has happened in the last 20
120years, and we hope to keep it that way. 149years, and we hope to keep it that way.
121 150
151@c TODO: Actually we are a Swiss association, or just a German association
152@c TODO: with Swiss bylaws/Satzung?
153@c TODO: Rewrite one of the 'GNUnet eV may also' sentences.
122The GNUnet project is supported by GNUnet e.V., a German association 154The GNUnet project is supported by GNUnet e.V., a German association
123where any developer can become a member. GNUnet e.V. servers as a 155where any developer can become a member. GNUnet e.V. serves as a
124legal entity to hold the copyrights to GNUnet. GNUnet e.V. may also 156legal entity to hold the copyrights to GNUnet. GNUnet e.V. may also
125choose to pay for project resources, and can collect donations. 157choose to pay for project resources, and can collect donations.
126GNUnet e.V. may also choose to adjust the license of the 158GNUnet e.V. may also choose to adjust the license of the
127software (with the constraint that it has to remain free software). 159software (with the constraint that it has to remain free software)@footnote{For example in 2018 we switched from GPL3 to AGPL3. In practice these changes do not happen very often.}
128
129
130@node General Terminology
131@section General Terminology
132 160
133In the following manual we may use words that can not be found in the
134Appendix. Since we want to keep the manual selfcontained, we will
135explain words here.
136 161
137@node Typography 162@node Typography
138@section Typography 163@section Typography
@@ -142,3 +167,5 @@ command should/can be issued as root, or if "normal" user privileges are
142sufficient. We use a @code{#} for root's shell prompt, a 167sufficient. We use a @code{#} for root's shell prompt, a
143@code{%} for users' shell prompt, assuming they use the C-shell or tcsh 168@code{%} for users' shell prompt, assuming they use the C-shell or tcsh
144and a @code{$} for bourne shell and derivatives. 169and a @code{$} for bourne shell and derivatives.
170@c TODO: Really? Why the different prompts? Do we already have c-shell
171@c TODO: examples?