diff options
Diffstat (limited to 'doc/documentation/chapters/user.texi')
-rw-r--r-- | doc/documentation/chapters/user.texi | 89 |
1 files changed, 55 insertions, 34 deletions
diff --git a/doc/documentation/chapters/user.texi b/doc/documentation/chapters/user.texi index fe47abb86..72b95d16f 100644 --- a/doc/documentation/chapters/user.texi +++ b/doc/documentation/chapters/user.texi | |||
@@ -43,6 +43,7 @@ To stop GNUnet: | |||
43 | @example | 43 | @example |
44 | $ gnunet-arm -e | 44 | $ gnunet-arm -e |
45 | @end example | 45 | @end example |
46 | |||
46 | @node First steps - Using the GNU Name System | 47 | @node First steps - Using the GNU Name System |
47 | @section First steps - Using the GNU Name System | 48 | @section First steps - Using the GNU Name System |
48 | @c %**end of header | 49 | @c %**end of header |
@@ -246,7 +247,7 @@ more an experimental feature and not really our primary goal at this | |||
246 | time. Still, it is a possible use-case and we welcome help with testing | 247 | time. Still, it is a possible use-case and we welcome help with testing |
247 | and development. | 248 | and development. |
248 | 249 | ||
249 | 250 | @pindex gnunet-bcd | |
250 | @node Creating a Business Card | 251 | @node Creating a Business Card |
251 | @subsection Creating a Business Card | 252 | @subsection Creating a Business Card |
252 | @c FIXME: Which parts of texlive are needed? Some systems offer a modular | 253 | @c FIXME: Which parts of texlive are needed? Some systems offer a modular |
@@ -257,7 +258,9 @@ Note that this requires having @command{LaTeX} installed on your system. | |||
257 | If you are using a Debian GNU/Linux based operating system, the | 258 | If you are using a Debian GNU/Linux based operating system, the |
258 | following command should install the required components. | 259 | following command should install the required components. |
259 | Keep in mind that this @b{requires 3GB} of downloaded data and possibly | 260 | Keep in mind that this @b{requires 3GB} of downloaded data and possibly |
260 | @b{even more} when unpacked. | 261 | @b{even more}@footnote{Author's note: |
262 | @command{guix size `guix build texlive`} in summer 2018 returns a DAG | ||
263 | size of 5032.4 MiB} when unpacked. | ||
261 | @b{We welcome any help in identifying the required components of the | 264 | @b{We welcome any help in identifying the required components of the |
262 | TexLive Distribution. This way we could just state the required components | 265 | TexLive Distribution. This way we could just state the required components |
263 | without pulling in the full distribution of TexLive.} | 266 | without pulling in the full distribution of TexLive.} |
@@ -312,12 +315,14 @@ you might need a trip to the store together. | |||
312 | Before we get started, we need to tell @code{gnunet-qr} which zone | 315 | Before we get started, we need to tell @code{gnunet-qr} which zone |
313 | it should import new records into. For this, run: | 316 | it should import new records into. For this, run: |
314 | 317 | ||
318 | @pindex gnunet-identity | ||
315 | @example | 319 | @example |
316 | $ gnunet-identity -s namestore -e NAME | 320 | $ gnunet-identity -s namestore -e NAME |
317 | @end example | 321 | @end example |
318 | where NAME is the name of the zone you want to import records | 322 | where NAME is the name of the zone you want to import records |
319 | into. In our running example, this would be ``gnu''. | 323 | into. In our running example, this would be ``gnu''. |
320 | 324 | ||
325 | @pindex gnunet-qr | ||
321 | Henceforth, for every business card you collect, simply run: | 326 | Henceforth, for every business card you collect, simply run: |
322 | @example | 327 | @example |
323 | $ gnunet-qr | 328 | $ gnunet-qr |
@@ -335,6 +340,7 @@ GNUnet network at this time, you should thus be able to | |||
335 | resolve your friends names. Suppose your friend's nickname | 340 | resolve your friends names. Suppose your friend's nickname |
336 | is "Bob". Then, type | 341 | is "Bob". Then, type |
337 | 342 | ||
343 | @pindex gnunet-gns | ||
338 | @example | 344 | @example |
339 | $ gnunet-gns -u test.bob.gnu | 345 | $ gnunet-gns -u test.bob.gnu |
340 | @end example | 346 | @end example |
@@ -381,6 +387,7 @@ a revocation certificate corresponding to your ego. This certificate, | |||
381 | when published on the P2P network, flags your private key as invalid, | 387 | when published on the P2P network, flags your private key as invalid, |
382 | and all further resolutions or other checks involving the key will fail. | 388 | and all further resolutions or other checks involving the key will fail. |
383 | 389 | ||
390 | @pindex gnunet-revocation | ||
384 | A revocation certificate is thus a useful tool when things go out of | 391 | A revocation certificate is thus a useful tool when things go out of |
385 | control, but at the same time it should be stored securely. | 392 | control, but at the same time it should be stored securely. |
386 | Generation of the revocation certificate for a zone can be done through | 393 | Generation of the revocation certificate for a zone can be done through |
@@ -433,6 +440,7 @@ private conversation with your friend. Finally, help us | |||
433 | with the next GNUnet release for even more applications | 440 | with the next GNUnet release for even more applications |
434 | using this new public key infrastructure. | 441 | using this new public key infrastructure. |
435 | 442 | ||
443 | @pindex gnunet-conservation-gtk | ||
436 | @node First steps - Using GNUnet Conversation | 444 | @node First steps - Using GNUnet Conversation |
437 | @section First steps - Using GNUnet Conversation | 445 | @section First steps - Using GNUnet Conversation |
438 | @c %**end of header | 446 | @c %**end of header |
@@ -485,6 +493,7 @@ that will show up when you call somebody else, as well as the | |||
485 | GNS zone that will be used to resolve names of users that you | 493 | GNS zone that will be used to resolve names of users that you |
486 | are calling. Run | 494 | are calling. Run |
487 | 495 | ||
496 | @pindex gnunet-conversation | ||
488 | @example | 497 | @example |
489 | gnunet-conversation -e zone-name | 498 | gnunet-conversation -e zone-name |
490 | @end example | 499 | @end example |
@@ -564,7 +573,7 @@ Either of you can end the call using @command{/cancel}. You can exit | |||
564 | 573 | ||
565 | @menu | 574 | @menu |
566 | * VPN Preliminaries:: | 575 | * VPN Preliminaries:: |
567 | * Exit configuration:: | 576 | * GNUNet-Exit configuration:: |
568 | * GNS configuration:: | 577 | * GNS configuration:: |
569 | * Accessing the service:: | 578 | * Accessing the service:: |
570 | * Using a Browser:: | 579 | * Using a Browser:: |
@@ -595,6 +604,9 @@ The exact details may differ a bit, which is fine. Add the text | |||
595 | hosts: files gns [NOTFOUND=return] mdns4_minimal [NOTFOUND=return] dns mdns4 | 604 | hosts: files gns [NOTFOUND=return] mdns4_minimal [NOTFOUND=return] dns mdns4 |
596 | @end example | 605 | @end example |
597 | 606 | ||
607 | @c TODO: outdated section, we no longer install this as part of the | ||
608 | @c TODO: standard installation procedure and should point out the manual | ||
609 | @c TODO: steps required to make it useful. | ||
598 | @noindent | 610 | @noindent |
599 | You might want to make sure that @code{/lib/libnss_gns.so.2} exists on | 611 | You might want to make sure that @code{/lib/libnss_gns.so.2} exists on |
600 | your system, it should have been created during the installation. | 612 | your system, it should have been created during the installation. |
@@ -608,8 +620,8 @@ $ cd src/gns/nss; sudo make install | |||
608 | @noindent | 620 | @noindent |
609 | to install the NSS plugins in the proper location. | 621 | to install the NSS plugins in the proper location. |
610 | 622 | ||
611 | @node Exit configuration | 623 | @node GNUnet-Exit configuration |
612 | @subsection Exit configuration | 624 | @subsection GNUnet-Exit configuration |
613 | @c %**end of header | 625 | @c %**end of header |
614 | 626 | ||
615 | Stop your peer (as user @code{gnunet}, run @command{gnunet-arm -e}) and | 627 | Stop your peer (as user @code{gnunet}, run @command{gnunet-arm -e}) and |
@@ -696,9 +708,10 @@ the searcher/downloader specify "no anonymity", non-anonymous | |||
696 | file-sharing is used. If either user specifies some desired degree | 708 | file-sharing is used. If either user specifies some desired degree |
697 | of anonymity, anonymous file-sharing will be used. | 709 | of anonymity, anonymous file-sharing will be used. |
698 | 710 | ||
699 | After a short introduction, we will first look at the various concepts in | 711 | After a short introduction, we will first look at the various concepts |
700 | GNUnet's file-sharing implementation. Then, we will discuss specifics as to how | 712 | in GNUnet's file-sharing implementation. Then, we will discuss |
701 | they impact users that publish, search or download files. | 713 | specifics as to how they impact users that publish, search or download |
714 | files. | ||
702 | 715 | ||
703 | 716 | ||
704 | @menu | 717 | @menu |
@@ -724,10 +737,11 @@ $ gnunet-search [-t TIMEOUT] KEYWORD | |||
724 | @end example | 737 | @end example |
725 | 738 | ||
726 | @noindent | 739 | @noindent |
727 | The -t option specifies that the query should timeout after | 740 | The @command{-t} option specifies that the query should timeout after |
728 | approximately TIMEOUT seconds. A value of zero is interpreted | 741 | approximately TIMEOUT seconds. A value of zero (``0'') is interpreted |
729 | as @emph{no timeout}, which is also the default. In this case, | 742 | as @emph{no timeout}, which is the default. In this case, |
730 | gnunet-search will never terminate (unless you press CTRL-C). | 743 | @command{gnunet-search} will never terminate (unless you press |
744 | @command{CTRL-C}). | ||
731 | 745 | ||
732 | If multiple words are passed as keywords, they will all be | 746 | If multiple words are passed as keywords, they will all be |
733 | considered optional. Prefix keywords with a "+" to make them mandatory. | 747 | considered optional. Prefix keywords with a "+" to make them mandatory. |
@@ -750,10 +764,11 @@ as the first will match files shared under the keywords | |||
750 | "Das" or "Kapital" whereas the second will match files | 764 | "Das" or "Kapital" whereas the second will match files |
751 | shared under the keyword "Das Kapital". | 765 | shared under the keyword "Das Kapital". |
752 | 766 | ||
753 | Search results are printed by gnunet-search like this: | 767 | Search results are printed by @command{gnunet-search} like this: |
754 | 768 | ||
755 | @c it will be better the avoid the ellipsis altogether because I don't | 769 | @c it will be better the avoid the ellipsis altogether because I don't |
756 | @c understand the explanation below that | 770 | @c understand the explanation below that |
771 | @c ng0: who is ``I'' and what was the complete sentence? | ||
757 | @example | 772 | @example |
758 | #15: | 773 | #15: |
759 | gnunet-download -o "COPYING" gnunet://fs/chk/PGK8M...3EK130.75446 | 774 | gnunet-download -o "COPYING" gnunet://fs/chk/PGK8M...3EK130.75446 |
@@ -762,10 +777,11 @@ gnunet-download -o "COPYING" gnunet://fs/chk/PGK8M...3EK130.75446 | |||
762 | 777 | ||
763 | @noindent | 778 | @noindent |
764 | The whole line is the command you would have to enter to download | 779 | The whole line is the command you would have to enter to download |
765 | the file. The argument passed to @code{-o} is the suggested | 780 | the file. The first argument passed to @code{-o} is the suggested |
766 | filename (you may change it to whatever you like). | 781 | filename (you may change it to whatever you like). |
767 | It is followed by the key for decrypting the file, the query for searching the | 782 | It is followed by the key for decrypting the file, the query for |
768 | file, a checksum (in hexadecimal) finally the size of the file in bytes. | 783 | searching the file, a checksum (in hexadecimal) finally the size of |
784 | the file in bytes. | ||
769 | 785 | ||
770 | @node fs-Downloading | 786 | @node fs-Downloading |
771 | @subsection Downloading | 787 | @subsection Downloading |
@@ -802,9 +818,9 @@ already present. | |||
802 | GNUnet's file-encoding mechanism will ensure file integrity, even if the | 818 | GNUnet's file-encoding mechanism will ensure file integrity, even if the |
803 | existing file was not downloaded from GNUnet in the first place. | 819 | existing file was not downloaded from GNUnet in the first place. |
804 | 820 | ||
805 | You may want to use the @command{-V} switch to turn on verbose reporting. In | 821 | You may want to use the @command{-V} switch to turn on verbose |
806 | this case, @command{gnunet-download} will print the current number of bytes | 822 | reporting. In this case, @command{gnunet-download} will print the |
807 | downloaded whenever new data was received. | 823 | current number of bytes downloaded whenever new data was received. |
808 | 824 | ||
809 | @node fs-Publishing | 825 | @node fs-Publishing |
810 | @subsection Publishing | 826 | @subsection Publishing |
@@ -845,10 +861,14 @@ list by running @command{extract -L}. Use quotes around the entire | |||
845 | meta-data argument if the value contains spaces. The meta-data | 861 | meta-data argument if the value contains spaces. The meta-data |
846 | is displayed to other users when they select which files to | 862 | is displayed to other users when they select which files to |
847 | download. The meta-data and the keywords are optional and | 863 | download. The meta-data and the keywords are optional and |
848 | maybe inferred using @code{GNU libextractor}. | 864 | may be inferred using @code{GNU libextractor}. |
865 | |||
866 | @command{gnunet-publish} has a few additional options to handle | ||
867 | namespaces and directories. Refer to the man-page for details: | ||
849 | 868 | ||
850 | gnunet-publish has a few additional options to handle namespaces and | 869 | @example |
851 | directories. See the man-page for details. | 870 | man gnunet-publish |
871 | @end example | ||
852 | 872 | ||
853 | @node Indexing vs. Inserting | 873 | @node Indexing vs. Inserting |
854 | @subsubsection Indexing vs Inserting | 874 | @subsubsection Indexing vs Inserting |
@@ -1528,11 +1548,11 @@ record you want to access). | |||
1528 | @subsection Using Public Keys as Top Level Domains | 1548 | @subsection Using Public Keys as Top Level Domains |
1529 | 1549 | ||
1530 | 1550 | ||
1531 | GNS also assumes responsibility for any name that uses in a well-formed | 1551 | GNS also assumes responsibility for any name that uses in a |
1532 | public key for the TLD. Names ending this way are then resolved by querying | 1552 | well-formed public key for the TLD. Names ending this way are then |
1533 | the respective zone. Such public key TLDs are expected to be used under rare | 1553 | resolved by querying the respective zone. Such public key TLDs are |
1534 | circumstances where globally unique names are required, and for | 1554 | expected to be used under rare circumstances where globally unique |
1535 | integration with legacy systems. | 1555 | names are required, and for integration with legacy systems. |
1536 | 1556 | ||
1537 | @node Resource Records in GNS | 1557 | @node Resource Records in GNS |
1538 | @subsection Resource Records in GNS | 1558 | @subsection Resource Records in GNS |
@@ -1574,13 +1594,14 @@ GNS currently supports the following record types: | |||
1574 | @node NICK | 1594 | @node NICK |
1575 | @subsubsection NICK | 1595 | @subsubsection NICK |
1576 | 1596 | ||
1577 | A NICK record is used to give a zone a name. With a NICK record, you can | 1597 | A NICK record is used to give a zone a name. With a NICK record, you |
1578 | essentially specify how you would like to be called. GNS expects this | 1598 | can essentially specify how you would like to be called. GNS expects |
1579 | record under the empty label ``@@'' in the zone's database (NAMESTORE); however, | 1599 | this record under the empty label ``@@'' in the zone's database |
1580 | it will then automatically be copied into each record set, so that | 1600 | (NAMESTORE); however, it will then automatically be copied into each |
1581 | clients never need to do a separate lookup to discover the NICK record. | 1601 | record set, so that clients never need to do a separate lookup to |
1582 | Also, users do not usually have to worry about setting the NICK record: | 1602 | discover the NICK record. Also, users do not usually have to worry |
1583 | it is automatically set to the local name of the TLD. | 1603 | about setting the NICK record: it is automatically set to the local |
1604 | name of the TLD. | ||
1584 | 1605 | ||
1585 | @b{Example}@ | 1606 | @b{Example}@ |
1586 | 1607 | ||