aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README126
-rw-r--r--src/fs/test_fs_namespace.c18
2 files changed, 68 insertions, 76 deletions
diff --git a/README b/README
index 8404e6b3a..7b8826dea 100644
--- a/README
+++ b/README
@@ -9,15 +9,11 @@ primary application for GNUnet is anonymous file-sharing. GNUnet is
9currently developed by a worldwide group of independent free software 9currently developed by a worldwide group of independent free software
10developers. GNUnet is a part of the GNU project (http://www.gnu.org/). 10developers. GNUnet is a part of the GNU project (http://www.gnu.org/).
11 11
12This is a BETA release. While there are no known significant bugs, we 12This is an ALPHA release. There are known and significant bugs as
13are still changing significant aspects of the system in any other 13well as many missing features in this release.
14version. While we believe that the system is usable, quite a few
15important features -- which would improve performance make the life of
16users easier -- are still missing. Also, the documentation may not be
17adequate for inexperienced users.
18 14
19For a longer description of the GNUnet System see our webpages 15For a longer description of the GNUnet System see our webpages
20http://www.gnu.org/software/gnunet/ and http://gnunet.org/. 16http://www.gnu.org/software/gnunet/ and http://ng.gnunet.org/.
21 17
22 18
23Dependencies: 19Dependencies:
@@ -26,23 +22,20 @@ Dependencies:
26For the impatient, here is the list of immediate dependencies for 22For the impatient, here is the list of immediate dependencies for
27running GNUnet: 23running GNUnet:
28 24
29- libextractor >= 0.5.23 25- libextractor >= 0.6.1
30- libmicrohttpd >= 0.4.2 26- libmicrohttpd >= 0.4.6
31- libgcrypt >= 1.2 27- libgcrypt >= 1.2
32- libgmp >= 4.0 28- libgmp >= 4.0
33- libcurl >= 7.15.4 29- libcurl >= 7.15.4
34- libltdl >= 2.2 (part of GNU libtool) 30- libltdl >= 2.2 (part of GNU libtool)
35- mysql >= 5.0 (strongly recommended)
36- sqlite >= 3.0 (alternative to MySQL) 31- sqlite >= 3.0 (alternative to MySQL)
37 32- mysql >= ??? (not yet supported)
38Certain gnunet-setup plugins would also like to have: 33- postgres >= ??? (not yet supported)
39- GTK >= 2.6.0
40- Qt >= 4.0
41 34
42Recommended autotools for compiling the SVN version are: 35Recommended autotools for compiling the SVN version are:
43- autoconf >= 2.59 36- autoconf >= 2.59
44- automake >= 1.9.4 37- automake >= 1.11.1
45- libtool >= 2.2 (only in Debian experimental) 38- libtool >= 2.2
46 39
47See also README.debian for a list of Debian packages. 40See also README.debian for a list of Debian packages.
48 41
@@ -52,32 +45,34 @@ How to install?
52 45
53The fastest way is to use a binary package if it is available for your 46The fastest way is to use a binary package if it is available for your
54system. For a more detailed description, read the installation 47system. For a more detailed description, read the installation
55instructions on the webpage at http://gnunet.org/documentation.php3. 48instructions on the webpage at https://ng.gnunet.org/installation.
56
57 49
58If you install from source, you need to install libextractor 50If you install from source, you need to install GNU libextractor first
59first (download from http://gnunet.org/libextractor/). Then 51(download from http://www.gnu.org/software/libextractor/). We also
60you can start the actual GNUnet compilation process with: 52recommend installing GNU libmicrohttpd. Then you can start the actual
53GNUnet compilation process with:
61 54
62$ ./configure --prefix=$HOME --with-extractor=$HOME 55$ ./configure --prefix=$HOME --with-extractor=$HOME
63$ make 56$ make
64# make install 57# make install
65# gnunet-setup # (note: does not yet exist!) 58# sudo -u gnunet gnunet-setup # (note: does not yet exist!)
66# gnunet-arm -s 59# sudo -u gnunet gnunet-arm -s
67 60
68This will compile and install GNUnet to ~/bin/, ~/lib/ and ~/man/. 61This will compile and install GNUnet to ~/bin/, ~/lib/ and ~/man/.
69gnunet-setup will create the configuration; this step is 62gnunet-setup will create the configuration; this step is interactive.
70interactive. You can run gnunet-setup as root for a system-wide 63You can run gnunet-setup as root for a system-wide installation or as
71installation or as a particular user to create a personal 64a particular user to create a personal installation. It is
72installation. If you do not want to run gnunetd as root, gnunet-setup 65recommended that you add a user "gnunet" to run "gnunet-arm". You can
73can be used to add a user "gnunet". Data will then be stored in 66then still run the end-user applications as another user. If you
74/var/lib/gnunet and gnunetd will run as that user. Note that 67create a user "gnunet", it is recommended that you edit the
75additional, per-user configuration files (~/.gnunet/gnunet.conf) also 68configuration file slightly so that data can be stored in
76need to be created by each user by running gnunet-setup without the -d 69"/var/lib/gnunet"; you may also want to use "/etc/gnunet.conf" for the
77option. Depending on your operating system the wizards of 70configuration in this case.
78gnunet-setup can also be used to create an init script that starts 71
79gnunetd each time the system boots. For more general information 72Note that additional, per-user configuration files
80about the GNU build process read the INSTALL file. 73(~/.gnunet/gnunet.conf) need to be created by each user (for example,
74by running gnunet-setup). For more general information about the GNU
75build process read the INSTALL file.
81 76
82GNUnet requires the GNU MP library (http://www.gnu.org/software/gmp/) 77GNUnet requires the GNU MP library (http://www.gnu.org/software/gmp/)
83and libgcrypt. You can specify the path to libgcrypt by passing 78and libgcrypt. You can specify the path to libgcrypt by passing
@@ -96,31 +91,24 @@ $ aclocal -I /usr/local/share/aclocal
96Configuration 91Configuration
97============= 92=============
98 93
99// FIXME: update this section once we have gnunet-setup! 94// FIXME: update this section once we have gnunet-setup! GNUnet uses
100GNUnet uses two types of configuration files, one for the daemon 95two types of configuration files, one for the daemon (called
101(called gnunetd.conf) and one for each user (gnunet.conf). You can 96gnunetd.conf) and one for each user (gnunet.conf). You can create and
102create and edit these configuration files with the gnunet-setup tool. 97edit these configuration files with the gnunet-setup tool. The
103You need to add the option "-d" to gnunet-setup in order to edit
104gnunetd.conf (by default, gnunet-setup will edit gnunet.conf). The
105defaults that are created the first time you run gnunet-setup are 98defaults that are created the first time you run gnunet-setup are
106usually ok, you may want to adjust the limitations (space consumption, 99usually ok, you may want to adjust the limitations (space consumption,
107bandwidth, etc.) though. The configuration files are human-readable; 100bandwidth, etc.) though. The configuration files are human-readable;
108gnunetd's configuration is typically located at "/etc/gnunetd.conf". 101GNUnet's configuration is typically located at
109The per-user configuration file should be at "~/.gnunet/gnunet.conf". 102"~/.gnunet/gnunet.conf".
110A default version of the per-user configuration will automatically
111be created whenever you run any tool that needs that particular
112cofniguration file.
113 103
114You MUST create /etc/gnunet.conf explicitly before starting gnunetd, 104You MUST create "~/.gnunet/gnunet.conf" explicitly before starting
115and the recommended way to do this is to run gnunet-setup -d (plus 105GNUnet, and the recommended way to do this is to run gnunet-setup.
116possibly options to specify which user interface you would perfer). 106You can also create an empty configuration file, in which case
107default values will be used for everything.
117 108
118If you want to use a different configuration file, pass the name of 109If you want to use a different configuration file, pass the name of
119the configuration file as an argument with the option "-c" to any 110the configuration file as an argument with the option "-c" to any
120GNUnet application. Sending a SIGHUP to the gnunetd process will 111GNUnet application.
121cause gnunetd to re-read the configuration file. Note that not all
122options can be changed at runtime this way (e.g. to change any port
123number, you must fully restart gnunetd).
124 112
125 113
126Usage 114Usage
@@ -134,25 +122,27 @@ whenever it is started. If you want to create an alternative URL for
134others to use, the file can be generated on any machine running 122others to use, the file can be generated on any machine running
135GNUnet by periodically executing 123GNUnet by periodically executing
136 124
137$ cat $GNUNETD_HOME/data/hosts/* > the_file 125$ cat $SERVICEHOME/data/hosts/* > the_file
126
127and offering 'the_file' via your web server. Alternatively, you can
128run the build-in web server by adding '-p' to the OPTIONS value
129in the "hostlist" section of gnunet.conf.
138 130
139If the solution with the URL is not feasible for your situation, you 131If the solution with the URL is not feasible for your situation, you
140can also add hosts manually. The GNUnet webpage has a public 132can also add hosts manually. Simply copy the hostkeys to
141directory of hostkeys under http://gnunet.org/hosts/. You 133"$SERVICEHOME/data/hosts/" (where $SERVICEHOME is the directory
142can of course use any other source for these files. Copy the hostkeys 134specified in the /etc/gnunet.conf configuration file).
143to "$GNUNETD_HOME/data/hosts/" (where $GNUNETD_HOME is the
144directory specified in the /etc/gnunet.conf configuration file).
145 135
146Now start the local node using "gnunet-arm -s". GNUnet should run 24/7 if 136Now start the local node using "gnunet-arm -s". GNUnet should run 24/7 if
147you want to maximize your anonymity. You may start it as a service 137you want to maximize your anonymity.
148with "/etc/init.d/gnunet start". To publish files on GNUnet, use
149the "gnunet-publish" command.
150 138
139// FIXME: gnunet-gtk is not yet supported in 0.9.x
151The GTK user interface is shipped separately from GNUnet. After 140The GTK user interface is shipped separately from GNUnet. After
152downloading and installing gnunet-gtk, you can invoke the GUI with: 141downloading and installing gnunet-gtk, you can invoke the GUI with:
153 142
154$ gnunet-gtk 143$ gnunet-gtk
155 144
145// FIXME: gnunet-qt is not yet supported in 0.9.x
156For Qt/KDE users, there is also a QT user interface (also shipped 146For Qt/KDE users, there is also a QT user interface (also shipped
157separately). If you install gnunet-qt, you can invoke the GUI with: 147separately). If you install gnunet-qt, you can invoke the GUI with:
158 148
@@ -167,8 +157,10 @@ This will display a list of results to the console. Then use
167$ gnunet-download -o FILENAME GNUNET_URI 157$ gnunet-download -o FILENAME GNUNET_URI
168 158
169to retrieve a file. The GNUNET_URI is printed by gnunet-search 159to retrieve a file. The GNUNET_URI is printed by gnunet-search
170together with a description. 160together with a description. To publish files on GNUnet, use the
161"gnunet-publish" command.
171 162
163// FIXME: auto-share is not yet supported in 0.9.x
172In order to share files, the easiest way is to create a directory 164In order to share files, the easiest way is to create a directory
173with the files (and directories) that you want to share and run 165with the files (and directories) that you want to share and run
174 166
@@ -181,7 +173,7 @@ Hacking GNUnet
181============== 173==============
182 174
183Contributions are welcome, please submit bugs to 175Contributions are welcome, please submit bugs to
184https://gnunet.org/mantis/. Please make sure to run contrib/report.sh 176https://gnunet.org/bugs/. Please make sure to run contrib/report.sh
185and include the output with your bug reports. More about how to 177and include the output with your bug reports. More about how to
186report bugs can be found in the GNUnet FAQ on the webpage. Submit 178report bugs can be found in the GNUnet FAQ on the webpage. Submit
187patches via E-Mail to gnunet-developers@gnu.org. 179patches via E-Mail to gnunet-developers@gnu.org.
@@ -203,7 +195,7 @@ $ make check
203If any testcases fail to pass on your system, run "contrib/report.sh" 195If any testcases fail to pass on your system, run "contrib/report.sh"
204and report the output together with information about the failing 196and report the output together with information about the failing
205testcase to the Mantis bugtracking system at 197testcase to the Mantis bugtracking system at
206https://gnunet.org/mantis/. 198https://gnunet.org/bugs/.
207 199
208 200
209Running http on port 80 201Running http on port 80
@@ -237,8 +229,8 @@ Stay tuned
237 229
238* http://www.gnu.org/software/gnunet/ 230* http://www.gnu.org/software/gnunet/
239* http://gnunet.org/ 231* http://gnunet.org/
240* https://gnunet.org/mantis/ 232* https://gnunet.org/bugs/
241* https://gnunet.org/drupal/ 233* https://ng.gnunet.org/
242* http://mail.gnu.org/mailman/listinfo/gnunet-developers 234* http://mail.gnu.org/mailman/listinfo/gnunet-developers
243* http://mail.gnu.org/mailman/listinfo/help-gnunet 235* http://mail.gnu.org/mailman/listinfo/help-gnunet
244* http://mail.gnu.org/mailman/listinfo/info-gnunet 236* http://mail.gnu.org/mailman/listinfo/info-gnunet
diff --git a/src/fs/test_fs_namespace.c b/src/fs/test_fs_namespace.c
index 5c60b9437..825612b1a 100644
--- a/src/fs/test_fs_namespace.c
+++ b/src/fs/test_fs_namespace.c
@@ -115,7 +115,6 @@ testNamespace ()
115{ 115{
116 struct GNUNET_FS_Namespace *ns; 116 struct GNUNET_FS_Namespace *ns;
117 struct GNUNET_FS_Uri *adv; 117 struct GNUNET_FS_Uri *adv;
118 struct GNUNET_FS_Uri *rootUri;
119 struct GNUNET_CONTAINER_MetaData *meta; 118 struct GNUNET_CONTAINER_MetaData *meta;
120 struct GNUNET_TIME_Absolute expiration; 119 struct GNUNET_TIME_Absolute expiration;
121 120
@@ -124,14 +123,14 @@ testNamespace ()
124 adv = GNUNET_FS_uri_ksk_create ("testNamespace", NULL); 123 adv = GNUNET_FS_uri_ksk_create ("testNamespace", NULL);
125 ns = GNUNET_FS_namespace_create (fs, 124 ns = GNUNET_FS_namespace_create (fs,
126 "testNamespace"); 125 "testNamespace");
127 rootUri = GNUNET_FS_namespace_advertise (fs, 126 GNUNET_FS_namespace_advertise (fs,
128 ns, 127 ns,
129 meta, 128 meta,
130 1, 1, 129 1, 1,
131 expiration, 130 expiration,
132 adv, 131 "root",
133 "root"); 132 &publish_cont, NULL);
134 GNUNET_assert (NULL != rootUri); 133#if 0
135 GNUNET_FS_publish_sks (fs, 134 GNUNET_FS_publish_sks (fs,
136 ns, 135 ns,
137 "this", 136 "this",
@@ -143,6 +142,7 @@ testNamespace ()
143 GNUNET_FS_PUBLISH_OPTION_NONE, 142 GNUNET_FS_PUBLISH_OPTION_NONE,
144 &publish_cont, 143 &publish_cont,
145 NULL); 144 NULL);
145#endif
146 GNUNET_CONTAINER_meta_data_destroy (meta); 146 GNUNET_CONTAINER_meta_data_destroy (meta);
147} 147}
148 148