[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [www] branch master updated: updated /use and /install-debi
From: |
gnunet |
Subject: |
[GNUnet-SVN] [www] branch master updated: updated /use and /install-debian .sva |
Date: |
Sun, 18 Aug 2019 18:23:26 +0200 |
This is an automated email from the git hooks/post-receive script.
sva pushed a commit to branch master
in repository www.
The following commit(s) were added to refs/heads/master by this push:
new baf2d00 updated /use and /install-debian .sva
baf2d00 is described below
commit baf2d006b7e7fd74526c1799c8b53e98a1cb39de
Author: mu <mu@m.m>
AuthorDate: Sun Aug 18 18:21:35 2019 +0200
updated /use and /install-debian .sva
---
template/install-on-debian9.html.j2 | 165 ++++++----------------------
template/use.html.j2 | 209 +++++++++++++++++++++++++++++++++---
2 files changed, 226 insertions(+), 148 deletions(-)
diff --git a/template/install-on-debian9.html.j2
b/template/install-on-debian9.html.j2
index 338fa92..808e2c3 100644
--- a/template/install-on-debian9.html.j2
+++ b/template/install-on-debian9.html.j2
@@ -64,8 +64,8 @@
</p>
<p>
- <b>Attention: The official libmicrohttpd package for Debian 9 is too old,
we need
- at least version 0.9.52.</b>
+ Note: The official libmicrohttpd package for Debian 9 is too old, we need
+ at least version 0.9.52 – that's why we install it from gnunet.org, and
not from the package manager.
</p>
<code>
@@ -93,22 +93,22 @@
<p>
Installing GNUnet is not hard. We have two options:
- installing a *production version* and installing a *development version*.
If
+ installing a <b>production version</b> and installing a <b>development
version</b>. If
you want to start writing GNUnet applications or join the GNUnet
development
choose the development version (it will print more debug output and
contains
debug symbols that can be displayed with a debugger). Otherwise choose the
production version.
</p>
- <h3>{{ _("Option 1: GNUnet for production / usage") }}</h3>
+ <h3>{{ _("Option 1: GNUnet for testing / usage") }}</h3>
<code>
$ cd ~/gnunet_installation/gnunet<br>
$ ./bootstrap<br>
$ export GNUNET_PREFIX=/usr/local # for example, other locations possible
$ ./configure --prefix=$GNUNET_PREFIX --disable-documentation
--with-microhttpd=/opt/libmicrohttpd<br>
- $ sudo addgroup gnunetdns<br>
- $ sudo adduser --system --group --disabled-login --home /var/lib/gnunet
gnunet<br>
+ $ sudo addgroup gnunet<br>
+ $ sudo usermod -aG gnunet $USER
$ make -j$(nproc || echo -n 1)<br>
$ sudo make install
</code>
@@ -118,13 +118,16 @@
<code>
$ cd ~/gnunet_installation/gnunet<br>
$ ./bootstrap<br>
+ $ export GNUNET_PREFIX=/usr/local # for example, other locations possible
$ export CFLAGS="-g -Wall -O0"<br>
$ ./configure --prefix=$GNUNET_PREFIX --disable-documentation
--enable-logging=verbose --with-microhttpd=/opt/libmicrohttpd<br>
+ $ sudo addgroup gnunet<br>
+ $ sudo usermod -aG gnunet $USER<br>
$ make -j$(nproc || echo -n 1)<br>
$ sudo make install
</code>
- <h3>{{ _("Option 3: gnunet-gtk") }}</h3>
+ <h3>{{ _("In Addition: gnunet-gtk") }}</h3>
<p>
Installing the Gtk+-based graphical user
interface can be done on top of either the production or development
installation.
@@ -133,24 +136,31 @@
$ sudo apt install libgtk-3-dev libgladeui-dev libunique-dev
libqrencode-dev
$ cd ~/gnunet_installation/gnunet-gtk<br>
$ ./bootstrap<br>
+ $ export GNUNET_PREFIX=/usr/local # for example, other locations
possible</br>
$ export CFLAGS="-g -Wall -O0"<br>
- $ ./configure --prefix=$GNUNET_PREFIX --with-gnunet=$GNUNET_PREFIX<br>
+ $ ./configure --prefix=$GNUNET_PREFIX --disable-documentation
--with-gnunet=$GNUNET_PREFIX<br>
$ make -j$(nproc || echo -n 1)<br>
$ sudo make install
</code>
+ <p>
+ Since we added our user to the group gnunet, we need to call the following
command (or alternatively log out and log in again) to make the membership
effective:
+ </p>
+ <code>
+ $ newgrp<br>
+ </code>
<!--
<h3>{{ _("Install GNUnet plugin for name resolution") }}</h3>
<p>
- So now it gets a bit nasty. It's not so bad. All we have to do
- is copy a file and edit another one. The file we need to copy
- is GNUnet's plugin for the Name Service Switch (NSS) in unix
- systems. Different unixes expect it in different locations and
- GNUnet's build system does not try to guess. On Debian 9 we
- have to do
- <code>
- $ sudo cp /usr/lib/gnunet/nss/libnss_gns.so.2 /lib/$(uname
-m)-linux-gnu/
- </code>
+ So now it gets a bit nasty. It's not so bad. All we have to do
+ is copy a file and edit another one. The file we need to copy
+ is GNUnet's plugin for the Name Service Switch (NSS) in unix
+ systems. Different unixes expect it in different locations and
+ GNUnet's build system does not try to guess. On Debian 9 we
+ have to do
+ <code>
+ $ sudo cp /usr/lib/gnunet/nss/libnss_gns.so.2 /lib/$(uname
-m)-linux-gnu/
+ </code>
</p>
<p>
@@ -194,7 +204,7 @@
<p>That's it. It wasn't that nasty, was it?</p>
-->
- <h2>{{ _("Configuration") }}</h2>
+ <h2>{{ _("Create configuration file") }}</h2>
<p>
Congratulations! GNUnet is now installed! Before we start it we
@@ -204,71 +214,15 @@
</p>
<code>
+ $ mkdir -p ~/.config
$ touch ~/.config/gnunet.conf
</code>
-
- <p>
- It's reccomended that you increase your bandwidth restrictions
- from the acutely low defaults. The example below sets the WAN
- and LAN limits to the value "unlimited".
- </p>
-
- <code>
- $ gnunet-config -s ats -o WAN_QUOTA_IN -V unlimited<br />
- $ gnunet-config -s ats -o WAN_QUOTA_OUT -V unlimited<br />
- $ gnunet-config -s ats -o LAN_QUOTA_IN -V unlimited<br />
- $ gnunet-config -s ats -o LAN_QUOTA_OUT -V unlimited<br />
- </code>
-
- <p>
- Now we can start it with the command line tool
- `gnunet-arm` (Automatic Restart Manager).
- </p>
-
- <code>
- $ gnunet-arm -s
- </code>
-
- <p>
- It starts the default GNUnet services. We can list them with the
- `-I` option:
- </p>
-
- <code>
- $ gnunet-arm -I<br>
- Running services:<br>
- ats (gnunet-service-ats)<br>
- revocation (gnunet-service-revocation)<br>
- set (gnunet-service-set)<br>
- nat (gnunet-service-nat)<br>
- transport (gnunet-service-transport)<br>
- peerstore (gnunet-service-peerstore)<br>
- hostlist (gnunet-daemon-hostlist)<br>
- identity (gnunet-service-identity)<br>
- namecache (gnunet-service-namecache)<br>
- peerinfo (gnunet-service-peerinfo)<br>
- datastore (gnunet-service-datastore)<br>
- zonemaster (gnunet-service-zonemaster)<br>
- zonemaster-monitor (gnunet-service-zonemaster-monitor)<br>
- nse (gnunet-service-nse)<br>
- cadet (gnunet-service-cadet)<br>
- dht (gnunet-service-dht)<br>
- core (gnunet-service-core)<br>
- gns (gnunet-service-gns)<br>
- statistics (gnunet-service-statistics)<br>
- topology (gnunet-daemon-topology)<br>
- fs (gnunet-service-fs)<br>
- namestore (gnunet-service-namestore)<br>
- vpn (gnunet-service-vpn)
- </code>
-
+
<p>
- For stopping GNUnet again we can use the `-e` option.
+ Now we created the configuration file. Please check the handbook for a
first <a
href="https://docs.gnunet.org/handbook/gnunet.html#Minimal-configuration">minimal
configuration</a>. But in general, we dont need to configure anything in
particular for now.
</p>
- <code>
- $ gnunet-arm -e
- </code>
+To go on, please <a href="https://gnunet.org/en/use.html">move over here</a>:
<h2>{{ _("Use GNUnet!") }}</h2>
<p>
@@ -286,61 +240,8 @@
$ sudo apt autoremove<br>
$ sudo userdel -r gnunet<br>
$ sudo groupdel gnunet<br>
- $ sudo groupdel gnunetdns<br>
- $ sudo mv /etc/nsswitch.conf.original /etc/nsswitch.conf<br>
- $ sudo rm /lib/$(uname -m)-linux-gnu/libnss_gns.so.2
</code>
- <h2>{{ _("Troubleshooting") }}</h2>
-
- <h3>{{ _("You can't reach other people's nodes") }}</h3>
-
- <p>
- Should our computer not have reached the open GNUnet network automatically,
- we can manually instruct our node how to reach the nodes of our friends.
This
- works by exchanging HELLO strings. This is how we get a hello string for
our
- computer.
- </p>
-
- <code>
- $ gnunet-peerinfo -gn
- </code>
-
- <p>
- We can now pass this string to our friends "out of band" (using
- whatever existing chat or messaging technology). If the string
- contains some private IP networks we don't want to share, we can
- carefully edit them out.
- </p>
-
- <p>
- Once we receive such strings from our friends, we can add them
- like this:
- </p>
-
- <code>
- gnunet-peerinfo -p <string>
- </code>
-
- <p>
- Now our GNUnet nodes can attempt reaching each other directly. This may
- still fail due to NAT traversal issues.
- </p>
-
-
-<!--
- <h3>{{ _("OMG you guys broke my internet") }}</h3>
-
- <p>
- We can replace `/etc/nsswitch.conf` with the backup we made earlier
- (`/etc/nsswitch.conf.original`). Now DNS resolution should work again
without a
- running GNUnet.
- </p>
-
- <code>
- $ cp /etc/nsswitch.conf.original /etc/nsswitch.conf
- </code>
--->
-
</article>
{% endblock body_content %}
+
diff --git a/template/use.html.j2 b/template/use.html.j2
index e5a696e..f8589b4 100644
--- a/template/use.html.j2
+++ b/template/use.html.j2
@@ -15,7 +15,8 @@
<a class="nav-link" href="#gns_cli">{{ _("GNS with CLI") }}</a>
<a class="nav-link" href="#gns_browser">{{ _("GNS with Browser") }}</a>
<a class="nav-link" href="#vpn">{{ _("VPN") }}</a>
- <a class="nav-link" href="#conversation">{{ _("Conversation") }}</a>
+ <!-- <a class="nav-link" href="#conversation">{{ _("Conversation")
}}</a> -->
+ <a class="nav-link" href="#trouble">{{ _("Trouble Shooting") }}</a>
</nav>
</div>
@@ -24,10 +25,65 @@
<p>
This document is just a brief intro on what can be done with GNUnet.
Find much more in our <a ref="https://docs.gnunet.org/">documentation</a>, e.g.
in the section <a
href="https://docs.gnunet.org/handbook/gnunet.html#toc-Using-GNUnet-1">"using
GNUnet"</a> in the handbook.
- The configuration in the handbook is done with the UI interface
gnunet-gtk.
+ The configuration in the handbook is done with the UI interface
gnunet-gtk. => whats meant with this sentence? I cant see any context...
</p>
</section>
+<section>
+
+ <h3>{{ _("Get on GNUnet") }}</h3>
+
+ <p>
+ Now we can start it with the command line tool
+ `gnunet-arm` (Automatic Restart Manager) with the -s option; s=start.
+ </p>
+
+ <code>
+ $ gnunet-arm -s
+ </code>
+
+ <p>
+ It starts the default GNUnet services. We can list them with the
+ `-I` option:
+ </p>
+
+ <code>
+ $ gnunet-arm -I<br>
+ Running services:<br>
+ ats (gnunet-service-ats)<br>
+ revocation (gnunet-service-revocation)<br>
+ set (gnunet-service-set)<br>
+ nat (gnunet-service-nat)<br>
+ transport (gnunet-service-transport)<br>
+ peerstore (gnunet-service-peerstore)<br>
+ hostlist (gnunet-daemon-hostlist)<br>
+ identity (gnunet-service-identity)<br>
+ namecache (gnunet-service-namecache)<br>
+ peerinfo (gnunet-service-peerinfo)<br>
+ datastore (gnunet-service-datastore)<br>
+ zonemaster (gnunet-service-zonemaster)<br>
+ zonemaster-monitor (gnunet-service-zonemaster-monitor)<br>
+ nse (gnunet-service-nse)<br>
+ cadet (gnunet-service-cadet)<br>
+ dht (gnunet-service-dht)<br>
+ core (gnunet-service-core)<br>
+ gns (gnunet-service-gns)<br>
+ statistics (gnunet-service-statistics)<br>
+ topology (gnunet-daemon-topology)<br>
+ fs (gnunet-service-fs)<br>
+ namestore (gnunet-service-namestore)<br>
+ vpn (gnunet-service-vpn)
+ </code>
+
+ <h3>{{ _("Get off GNUnet") }}</h3>
+ <p>
+ For stopping GNUnet again we can use the `-e` option; e=end.
+ </p>
+
+ <code>
+ $ gnunet-arm -e
+ </code>
+
<section>
<h3>{{ _("Make sure your GNUnet installation works...") }}</h3>
<p>After installing and starting GNUnet you should make sure that
your peer is connecting
@@ -42,7 +98,9 @@
Tue Oct 30 19:58:48 2018: connection established 5WBG (timeout
in 299 s)<br>
</code>
</p>
+ There are much more options to see if you are connected and how. E.g.
'gnunet-peerinfo' shows you all peers your peer knows, or with "tail -f
~/.cache/gnunet/*" you'll get to see what's going on with your node.
</section>
+
<section>
<h3>{{ _("... and play around with it.") }}</h3>
<p>
@@ -50,12 +108,13 @@
</p>
<ul>
- <li>filesharing</li>
+ <li>Filesharing</li>
<li>A simple chat using CADET</li>
<li>Another simple chat using a nim client</i>
<li>Name resolution using GNS on the command line</li>
<li>Name resolution using GNS with a browser (do it on the command
line first)</li>
<li>Serving a website using VPN (do name resolution with a browser
first)</li>
+ <!-- <li>Conversation </li> -->
</ul>
</section>
@@ -70,7 +129,7 @@
<p>
We can choose any file and describe it with meaningful keywords
(using the
- `-k` command line option).
+ `-k` command line option), in this example these are "commons" and
"state".
</p>
<p>
<code>
@@ -94,17 +153,36 @@
ostrom.pdf)!
</p>
<p>
- Please also refer to the chapter on
- <a
href="https://docs.gnunet.org/handbook/gnunet.html#File_002dsharing">filesharing
in the handbook</a>.
+ <p>
+ It's recommended for filesharing that you increase your bandwidth
restrictions
+ from the actually pretty low defaults. The example below sets the WAN
+ and LAN limits to the value "unlimited".
+ </p>
+
+ <code>
+ $ gnunet-config -s ats -o WAN_QUOTA_IN -V unlimited<br />
+ $ gnunet-config -s ats -o WAN_QUOTA_OUT -V unlimited<br />
+ $ gnunet-config -s ats -o LAN_QUOTA_IN -V unlimited<br />
+ $ gnunet-config -s ats -o LAN_QUOTA_OUT -V unlimited<br />
+ </code>
+ </p>
+ <p>
+ Please note that it might take some time (up to some hours) till
your peers can see your freshly uploaded files.
+ </p>
+ <p> Further reading: Please also refer to the chapter on
+ <a
href="https://docs.gnunet.org/handbook/gnunet.html#File_002dsharing">filesharing
in the handbook</a>.
</section>
+
+
+
<section>
<h3><a name="cadet" class="subnav-anchor"></a>{{ _("CADET (and Chat)")
}}</h3>
<p>
We can use the `gnunet-cadet` command line tool to open a port and
from
another machine connect to this port and chat or transfer data.
First we need
- our *peer ID* of the GNUnet peer opening the port.
+ our <b>peer ID</b> of the GNUnet peer opening the port.
</p>
<p>
<code>
@@ -120,30 +198,56 @@
$ gnunet-cadet -o my-secret-port
</code>
</p>
- <p>On the other machine we can connect using the peer ID and the port
and start chatting!</p>
+ <p>On the other machine we can connect using the peer ID and the port
and start chatting! "Other machine can be a friend's one which has GNUnet
running, but it can also just be another shell on your machine.</p>
<p>
<code>
$ gnunet-cadet P4T5GHS1PCZ06R82D3KW8Z8J1113BQZWAWGYHTZ8G1ZXMWXQGAVG
my-secret-port
</code>
</p>
<p>
- If you are interested into CADET in detail, please have a look
in the <a
href="https://docs.gnunet.org/handbook/gnunet.html#CADET-Subsystem">chapter
"Cadet-Subsystem" in our handbook</a>.
+ If you are interested into CADET in detail, please have a look
in the <a
href="https://docs.gnunet.org/handbook/gnunet.html/CADET-Subsystem.html#CADET-Subsystem
">chapter "Cadet-Subsystem" in our handbook</a>. The CADET subsystem is
responsible for secure end-to-end communications between nodes in the GNUnet
overlay network; as transport protocol it's somewhat of the heart of the
project.
</p>
-
</section>
+
+
<section>
<h3><a name="groupchat" class="subnav-anchor"></a>{{ _("Chatting with
a (simple) client") }}</h3>
<p>
- To chat a tiny bit prettier, we need to install and compile
additional software.
+ To chat a tiny bit prettier, we can install and compile
additional software.
If you join the chat mentioned below and no one is there, feel
free to ping on
IRC/freenode #gnunet and ask if someone can join to test with
you! (But we are
trying to be there as often as possible).
- </p>
- <p>
- First we have to install Nim either through our package manager
or following the
- <a href="https://nim-lang.org/install.html">official installation
instructions</a>.
- Then we download and compile the groupchat application:
+ </p>
+ <p>
+ First we have to install Nim. Please refer to their <a
href="https://nim-lang.org/install.html">project site</a> for further details.
The preferred method is using our package manager, e.g. for Debian it would
look like this:
+ </p>
+ <code>
+ $ sudo apt install nim
+ $ nim --version
+ Nim Compiler Version 0.20.2 [Linux: amd64]
+ Compiled at 2019-07-17
+ Copyright (c) 2006-2019 by Andreas Rumpf
+
+ active boot switches: -d:release -d:nativeStackTrace
+ </code>
+ <p>
+ If the displayed version is <b>0.19.0 or newer</b>, we have a
compatible version and can continue downloading and compiling the groupchat. If
the version is older (like on Ubuntu 18.04) we can install Nim using a tool
called <i>choosenim</i>:
+ </p>
+ <code>
+ $ curl https://nim-lang.org/choosenim/init.sh -sSf | sh
+ </code>
+ <p>
+ Then we follow the onscreen instructions. More information can be found
in the <a href="https://nim-lang.org/install.html">official documentation</a>.
+ </p>
+ <p>In the onscreen instructions you'll be ask to add a line to your
bashrc - once you've done that, re-read your bash environment to make the
change active:
+ </p>
+ <code>
+ source ~/.bashrc
+ </code>
+
+ <p>
+ After we have installed (and maybe upgraded) Nim we download and
compile the groupchat application:
</p>
<p>
<code>
@@ -179,6 +283,8 @@
</p>
</section>
+
+
<section>
<h3><a name="gns_cli" class="subnav-anchor"></a>{{ _("Name resolution
using GNS on the command line") }}</h3>
<p>GNS is the GNU name service, a fully decentralized alternatice to
DNS. We'll publish an IP address in a GNS record try to resolve it on the
command line. First we need an identity which is the
@@ -250,6 +356,7 @@
</section>
+
<section id='gns_proxy'>
<h3><a name="gns_browser" class="subnav-anchor"></a>{{ _("Name
resolution using GNS with a browser") }}</h3>
@@ -327,6 +434,9 @@
See the <a
href="https://docs.gnunet.org/handbook/gnunet.html#Integration-with-Browsers">chapter
on Integration with Browsers in our handbook</a> for a more detailed
description.
</p>
</section>
+
+
+
<section>
<h3><a name="vpn" class="subnav-anchor"></a>{{ _("VPN") }}</h3>
<p>
@@ -385,13 +495,80 @@
The UI version of this Tutorial can be find in Chapter <a
href='https://docs.gnunet.org/handbook/gnunet.html#First-steps-_002d-Using-the-GNUnet-VPN'>Using
the GNUnet VPN</a> in the handbook.
</p>
</section>
+
+<!--
<section>
<h3><a name="conversation" class="subnav-anchor"></a>{{
_("Conversation") }}</h3>
<p>
TBD, see <a
href="https://docs.gnunet.org/handbook/gnunet.html#First-steps-_002d-Using-GNUnet-Conversation">chapter
"Using GNUnet Conversation" in the handbook.</a>
</p>
</section>
+-->
+
+
+
+
+ <section>
+ <h3><a name="trouble" class="subnav-anchor"></a>{{ _("Trouble
Shooting") }}</h3>
+
+ <h4>{{ _("You can't reach other people's nodes") }}</h3>
+
+ <p>
+ Should our computer not have reached the open GNUnet network automatically,
+ we can manually instruct our node how to reach the nodes of our friends.
This
+ works by exchanging HELLO strings. This is how we get a hello string for
our
+ computer.
+ </p>
+
+ <code>
+ $ gnunet-peerinfo -gn
+ </code>
+
+ <p>
+ We can now pass this string to our friends "out of band" (using
+ whatever existing chat or messaging technology). If the string
+ contains some private IP networks we don't want to share, we can
+ carefully edit them out.
+ </p>
+
+ <p>
+ Once we receive such strings from our friends, we can add them
+ like this:
+ </p>
+
+ <code>
+ gnunet-peerinfo -p <string>
+ </code>
+
+ <p>
+ Now our GNUnet nodes can attempt reaching each other directly. This may
+ still fail due to NAT traversal issues.
+ </p>
+
+
+<!--
+ <h4>{{ _("OMG you guys broke my internet") }}</h3>
+
+ <p>
+ We can replace `/etc/nsswitch.conf` with the backup we made earlier
+ (`/etc/nsswitch.conf.original`). Now DNS resolution should work again
without a
+ running GNUnet.
+ </p>
+
+ <code>
+ $ cp /etc/nsswitch.conf.original /etc/nsswitch.conf
+ </code>
+-->
+
+ </section>
+
+
</div>
</div>
</article>
{% endblock body_content %}
+
+
+
+
+
--
To stop receiving notification emails like this one, please contact
address@hidden.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] [www] branch master updated: updated /use and /install-debian .sva,
gnunet <=