manpages.
[oweals/gnunet.git] / doc / man / gnunet-directory.1
1 .\" This file is part of GNUnet.
2 .\" Copyright (C) 2001-2019 GNUnet e.V.
3 .\"
4 .\" Permission is granted to copy, distribute and/or modify this document
5 .\" under the terms of the GNU Free Documentation License, Version 1.3 or
6 .\" any later version published by the Free Software Foundation; with no
7 .\" Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
8 .\" copy of the license is included in the file
9 .\" ``FDL-1.3''.
10 .\"
11 .\" A copy of the license is also available from the Free Software
12 .\" Foundation Web site at @url{http://www.gnu.org/licenses/fdl.html}.
13 .\"
14 .\" Alternately, this document is also available under the General
15 .\" Public License, version 3 or later, as published by the Free Software
16 .\" Foundation.  A copy of the license is included in the file
17 .\" ``GPL3''.
18 .\"
19 .\" A copy of the license is also available from the Free Software
20 .\" Foundation Web site at @url{http://www.gnu.org/licenses/gpl.html}.
21 .\"
22 .\" SPDX-License-Identifier: GPL3.0-or-later OR FDL1.3-or-later
23 .\"
24 .Dd February 25, 2012
25 .Dt GNUNET-DIRECTORY 1
26 .Os
27 .Sh NAME
28 .Nm gnunet-directory
29 .Nd
30 display directories
31 .Sh SYNOPSIS
32 .Nm
33 .Op Fl c Ar FILENAME | Fl \-config= Ns Ar FILENAME
34 .Op Fl h | \-help
35 .Op Fl L Ar LOGLEVEL | Fl \-loglevel= Ns Ar LOGLEVEL
36 .Op Fl v | \-version
37 .Ao Ar FILENAME Ac
38 .Sh DESCRIPTION
39 .Nm
40 lists the contents of one or more GNUnet directories.
41 A GNUnet directory is a binary file that contains a list of GNUnet file-sharing URIs and meta data.
42 The names of the directory files must be passed as command-line arguments to gnunet-directory.
43 The options are as follows:
44 .Bl -tag -width Ds
45 .It Fl c Ar FILENAME | Fl \-config= Ns Ar FILENAME
46 Configuration file to use.
47 This option is useless, since gnunet-directory does not really depend on any configuration options.
48 .It Fl h | \-help
49 Print the help page.
50 .It Fl L Ar LOGLEVEL | Fl \-loglevel= Ns Ar LOGLEVEL
51 Change the loglevel.
52 Possible values for LOGLEVEL are ERROR, WARNING, INFO and DEBUG.
53 .It Fl v | \-version
54 Print the version number.
55 .El
56 .Ss NOTES
57 A GNUnet directory is a file containing a list of GNUnet URIs and meta data.
58 The keys can point to files, other directories or files in namespaces.
59 In other words, a GNUnet directory is similar to UNIX directories.
60 The difference to tar and zip is that GNUnet directory does not contain the actual files (except if they are really small, in which case they may be inlined), just symbolic (links), similar to directories with symbolic links in UNIX filesystems.
61 The benefit is that the individual files can be retrieved separately (if desired) and if some of the files are inserted to another node in GNUnet, this just increases their availability but does not produce useless duplicates (for example, it is a better idea to publish a collection of pictures or compressed sound files using a GNUnet directory instead of processing them with archivers such as tar or zip first).
62 Directories can contain arbitrary meta data for each file.
63 .Pp
64 If a directory has missing blocks (for example, some blocks failed to download), GNUnet is typically able to retrieve information about other files in the directory.
65 Files in a GNUnet directory have no particular order; the GNUnet code that generates a directory can reorder the entries in order to better fit the information about files into blocks of 32k.
66 Respecting 32k boundaries where possible makes it easier for gnunet-directory (and other tools) to recover information from partially downloaded directory files.
67 .Pp
68 At the moment, directories can be created by
69 .Xr gnunet-fs-gtk 1 ,
70 and
71 .Xr gnunet-publish 1 .
72 Just like ordinary files, a directory can be published in a namespace.
73 .Pp
74 GNUnet directories use the (unregistered) mimetype "application/gnunet-directory".
75 They can show up among normal search results.
76 The directory file can be downloaded to disk by
77 .Xr gnunet-download 1
78 for later processing or be handled more directly by
79 .Xr gnunet-fs-gtk 1 .
80 .\".Sh EXAMPLES
81 .Sh SEE ALSO
82 .Xr gnunet-download 1 ,
83 .Xr gnunet-fs-gtk 1 ,
84 .Xr gnunet-publish 1 ,
85 .Xr gnunet-search 1
86 .sp
87 The full documentation for gnunet is maintained as a Texinfo manual.
88 If the
89 .Xr info 1
90 and gnunet programs are properly installed at your site, the command
91 .Pp
92 .Dl info gnunet
93 .Pp
94 should give you access to the complete handbook,
95 .Pp
96 .Dl info gnunet-c-tutorial
97 .Pp
98 will give you access to a tutorial for developers.
99 .sp
100 Depending on your installation, this information is also available in
101 .Xr gnunet 7 and
102 .Xr gnunet-c-tutorial 7 .
103 .\".Sh HISTORY
104 .\".Sh AUTHORS
105 .Sh BUGS
106 Report bugs by using
107 .Lk https://bugs.gnunet.org
108 or by sending electronic mail to
109 .Aq Mt gnunet-developers@gnu.org .