Update README.md

This commit is contained in:
Kirill 2013-09-23 21:05:56 +04:00
parent 06b4aaa05d
commit 60d2333113

146
README.md
View File

@ -1,35 +1,12 @@
Netsukuku
http://netsukuku.freaknet.org http://netsukuku.freaknet.org
--
1. What is this?
2. Get the code!
3. Build and install
3.1 Static Binaries and Packages
4. Kernel dependencies
5. How to use it
6. Where to get in touch with us
7. Bug report
8. Hack the code
9. License and that kind of stuff...
--
**
**** 1. What is this?
** # What is this?
Netsukuku is an alternative to the internet, It will have all of the features of the internet, Netsukuku is an alternative to the internet, It will have all of the features of the internet,
Such as websites, Instant messaging, File transfers, DNS, Etc. It functions as a Such as websites, Instant messaging, File transfers, DNS, Etc. It functions as a
@ -62,25 +39,21 @@ Before doing anything, please read the documentation in doc/ or in
http://netsukuku.freaknet.org http://netsukuku.freaknet.org
** # Get the code!
**** 2. Get the code!
**
$git clone git@github.com:Netsukuku/netsukuku.git
$git clone git@github.com:Netsukuku/netsukuku.git
** # Build and install
**** 3. Build and install
**
The dependencies of netsukuku can be gathered by running this command. The dependencies of netsukuku can be gathered by running this command.
# sudo apt-get install zlibc libgmp-dev openssl libgee-dev libpth-dev libgcrypt11-dev autoconf cmake autogen # sudo apt-get install zlibc libgmp-dev openssl libgee-dev libpth-dev libgcrypt11-dev autoconf cmake autogen
To compile the code you can use scons or just go with the old school way: To compile the code you can use scons or just go with the old school way:
# ./configure && make && make install # ./configure && make && make install
But SCons is cooler: But SCons is cooler:
http://www.scons.org/ http://www.scons.org/
@ -97,16 +70,17 @@ the openssl library here: http://openssl.org
and finally the zlibs: http://zlib.net and finally the zlibs: http://zlib.net
Then go in the src/ directory and type: Then go in the src/ directory and type:
$ scons --help
$ scons --help
That will show you all the options you can use in the build and installation That will show you all the options you can use in the build and installation
process. Finally execute: process. Finally execute:
$ scons $ scons
The code will be compiled. If all went well install NetsukukuD with: The code will be compiled. If all went well install NetsukukuD with:
# scons install # scons install
Now you should give a look at /etc/netsukuku.conf (or wherever you installed Now you should give a look at /etc/netsukuku.conf (or wherever you installed
it) and modify it for your needs, but generally the default options are good. it) and modify it for your needs, but generally the default options are good.
@ -115,12 +89,11 @@ it) and modify it for your needs, but generally the default options are good.
If you want to change some scons option to do another installation, (i.e. you If you want to change some scons option to do another installation, (i.e. you
may want to reinstall it with another MANDIR path), you have to run: may want to reinstall it with another MANDIR path), you have to run:
$ scons --clean
$ scons --clean
** # Static Binaries and Packages
**** 3.1 Static Binaries and Packages
**
If you prefer to just install Netsukuku, without compiling it, you can If you prefer to just install Netsukuku, without compiling it, you can
download the static binaries suitable to your platform. They come packed in download the static binaries suitable to your platform. They come packed in
@ -133,64 +106,58 @@ The packages repository is at:
(This archive contains unoffical packages, However, They have been tested, And function on Ubuntu 12.04 and earlier.) (This archive contains unoffical packages, However, They have been tested, And function on Ubuntu 12.04 and earlier.)
** # Kernel dependencies
**** 4. Kernel dependencies
**
(The following probably is already, If not will be soon, Unnecessary/automated.) (The following probably is already, If not will be soon, Unnecessary/automated.)
On Linux be sure to have the following options set in your kernel .config. On Linux be sure to have the following options set in your kernel .config.
These options are taken from linux-2.6.14. These options are taken from linux-2.6.14.
#
# Networking options Networking options
#
CONFIG_PACKET=y CONFIG_PACKET=y
CONFIG_UNIX=y CONFIG_UNIX=y
CONFIG_INET=y CONFIG_INET=y
CONFIG_IP_MULTICAST=y CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_NET_IPIP=y CONFIG_NET_IPIP=y
CONFIG_NETFILTER=y CONFIG_NETFILTER=y
and these from linux-2.6.16.19. and these from linux-2.6.16.19.
# Core Netfilter Configuration
# Core Netfilter Configuration
#
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
NETFILTER_XT_TARGET_CONNMARK=y NETFILTER_XT_TARGET_CONNMARK=y
# IP: Netfilter Configuration
# IP: Netfilter Configuration
#
CONFIG_IP_NF_IPTABLES=y CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_NAT=y CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y CONFIG_IP_NF_TARGET_MASQUERADE=y
If you are using modules you have to load them before launching the daemon. If you are using modules you have to load them before launching the daemon.
** # How to use it
**** 5. How to use it
**
Before doing anything do: Before doing anything do:
$ man ntkd $ man ntkd
$ man andna $ man andna
when you feel confortable and you are ready to dare type with root when you feel confortable and you are ready to dare type with root
priviledges: priviledges:
# ntkd # ntkd
then just wait... ^_- then just wait... ^_-
@ -203,11 +170,9 @@ to force the daemon to use specific interfaces you should use the B<-i>
option. option.
** # Where to get in touch with us
**** 6. Where to get in touch with us
**
> Mailing list ## Mailing list
Subscribe to the netsukuku mailing to get help, be updated on the latest news Subscribe to the netsukuku mailing to get help, be updated on the latest news
and discuss on its development. and discuss on its development.
@ -222,16 +187,15 @@ You can browse the archive here:
http://dir.gmane.org/gmane.network.peer-to-peer.netsukuku http://dir.gmane.org/gmane.network.peer-to-peer.netsukuku
> IRC ## IRC
We live night and day in IRC, come to see us on channel We live night and day in IRC, come to see us on channel
#netsukuku #netsukuku
on the FreeNode irc server (irc.freenode.org). on the FreeNode irc server (irc.freenode.org).
** # Bug report
**** 7. Bug report
**
{ Don't panic! } { Don't panic! }
@ -243,9 +207,7 @@ or the mailing list:
and explain what the problem is and if possible a way to reproduce it. and explain what the problem is and if possible a way to reproduce it.
** # Hack the code
**** 8. Hack the code
**
Feel free to debug, patch, modify and eat the code. Then submit your results Feel free to debug, patch, modify and eat the code. Then submit your results
to the mailing list ^_- to the mailing list ^_-
@ -255,9 +217,7 @@ help the development writing some nice poems. For a start you can take a look
at the src/TODO file. at the src/TODO file.
** # License and that kind of stuff...
**** 9. License and that kind of stuff...
**
All the Netsukuku code is released under the GPL-2, please see the COPYING All the Netsukuku code is released under the GPL-2, please see the COPYING
file for more information. file for more information.