MLdonkey runs on most Unix clones: Linux (x86, alpha, sparc), Mac OS X, Solaris x86, Free/OpenBSD, etc.
It runs as a daemon, in the background, that can run, downloading and sharing files, 24 hours a day. You can interact with your mldonkey daemon, either locally or remotely, by a telnet interface, a WEB interface or a GTK GUI. Other GUIs have also been created for mldonkey.
Fortunately, Objective-Caml is not only a functional language: it also provides many other programming paradigms, such as imperative constructs (while and for loops, mutable variables, records), object-oriented constructs, and a powerful C-interface. Moreover, its native-code compiler carefully checks your program for typing errors (no more segfaults !), and produces a very efficient code (even faster than C on many examples).
If you don't believe me, check the following links:
You can also try to read/post in the MLDonkey Forums or on the IRC Channel #mldonkey on irc.freenode.net .
If you have some knowledge of MinGW, you might try to compile Objective-Caml and mldonkey. It would probably run better than under Cygwin. Note that mldonkey does not use threads, and the select call is only used to descriminate between sockets (read/write/connect/accept).
./mldonkeyIt should display some debug info. DON'T CLOSE THE TERMINAL WHERE IT WAS STARTED, otherwise it might get blocked on terminal output. Once you are sure it works correctly, you can dump the debug info in a file (but it can become very big) or better in /dev/null, the next time you start it:
./mldonkey &> /dev/null
telnet localhost 4000where localhost is the host running mldonkey and 4000 is the default port for the telnet interface.
There are many commands available. Use the help command to display all of them.
http://localhost:4080/where localhost is the host running mldonkey and 4080 is the default port for the WEB interface.
Low Bandwidth Usage | High Bandwidth Usage | |||
Your Connection Type | max_hard_upload_rate | max_hard_download_rate | max_hard_upload_rate | max_hard_download_rate | T1 and more | 50 | 0 | 0 | 0 | Cable/ADSL 512/128 kbs | 2 | 6 | 6 | 12 | If you have troubles with these values, find the best one corresponding to your link and send us the information to fix this table !
When the download of a file is finished, the file is added to a list of files that have to be "committed". These files are not renamed, so they are still kept in the temp directory.
To move finished downloads into the incoming/ directory with their final name, you need to use the command commit in the telnet, or the "Save" buttons in the GUI.
This can happen for different reasons:
RewriteEngine on ProxyRequests on RewriteRule /mldonkey http://localhost:4080/$1 [P,L] RewriteRule /(submit.*) http://localhost:4080/$1 [P,L] RewriteRule /(files.*) http://localhost:4080/$1 [P,L] ProxyPassReverse /(.*) http://localhost:4080/$1where, of course, localhost is your mldonkey host, and 4080 is the http_port of mldonkey.
allowed_ips = ["127.0.0.1"; "192.168.255.255"; "65.64.43.63"]for example allows your localhost (127.0.0.1) to control mldonkey, all the hosts from the network 192.168.*.*, and the host 65.64.43.63. If you don't want to stop mldonkey, just connect locally with the telnet, and type:
set allowed_ips "127.0.0.1 192.168.255.255 65.64.43.63"
cvs -d:pserver:anoncvs@subversions.gnu.org:/cvsroot/mldonkey login (password: just hit enter) cvs -z3 -d:pserver:anoncvs@subversions.gnu.org:/cvsroot/mldonkey co mldonkey
~/tmp> tar zxf ocaml-3.06.tar.gz ~/tmp> cd ocaml-3.06 ~/tmp/ocaml-3.06> ./configure ~/tmp/ocaml-3.06> make world opt opt.opt ~/tmp/ocaml-3.06> make install
~/tmp> tar zxf lablgtk-1.2.3.tar.gz ~/tmp> cd lablgtk-1.2.3 ~/tmp/lablgtk-1.2.3> make configure ~/tmp/lablgtk-1.2.3> make ~/tmp/lablgtk-1.2.3> make opt ~/tmp/lablgtk-1.2.3> make installDo not forget the "make opt" which is required to get a native-code version of the libraries.
cd mldonkey ./configure [...options...] make depend makeYou should now have a "mldonkey" executable ... No "make install" is provided.
If you get strange errors from make, you probably need to use "gmake" on your system.
You can use the following options for the configure:
cd mldonkey cvs login cvs -z3 up -d ./configure [...options...] make depend makeIf the error messages are related to camlzip, a workaround is to edit manually the file config/Makefile.config , and to change the line ZLIB=no and SOULSEEK=no (only soulseek requires camlzip).
This network offers a set of characteristics that cannot be found on other networks:
servers "/mnt/windows/bureau/edonkey server list/server.met"
import "/home/bidule/edonkey"
However, each server on which you are connected is not available for another user. For this reason, you should not stay connected to too many servers. mldonkey enforces this policy by limiting to 5 the number of servers on which you remain connected for a long time, whatever the value of max_connected_servers is.
Thus, you should simply see max_connected_servers as the number of servers mldonkey tries to connect concurrently to at the startup, not as the number of servers he will remain connected to.
MLdonkey 2.00 is able to search for files and sources on Overnet. For that, you must make sure that:
As for all networks, you can activate post-filtering of results (very useful on Gnutella too): set the "filter_search" option to true, and maybe the "filter_search_delay" option (period between results updates in seconds). Then, only results matching exactly your query will be displayed.
Allowing incoming connections is important as it is the only way for you to connect other sources which are behind a firewall.
If you have no control on the firewall, and your administrator blocks port 4660 to 4670, you should change the port used by mldonkey in the configuration file downloads.ini : port is the TCP port, while the UDP port is always computed as port + 4 .
shared_directories = [ "/usr/share/documents"; "/usr/share/videos"]
You connect on a single server, and there, you can search for (mainly audio) files, you can join rooms to chat with other users, and you can browse other users files.
By default, mldonkey_gui does not display the servers you are not connected to. So you have to use the "Display All Servers" button, and ask mldonkey to try to connect to the second soulseek server.
Currently, the server is mail.slsk.org , port 2242.
Mldonkey behavior will be improved to automatically connect to the current server from the soulseek site Web page.
The main difference is that all nodes in this network do not broadcast each received message to its neighbours. Instead, special nodes, called ultra-peers, with higher connectivity are dedicated for this task, whereas other smaller nodes (such as mldonkey) only connect and ask ultra-peers.
Currently, the LimeWire support in MLdonkey also allows mldonkey client to use Gnucleus , Morpheus , and MyNapster ultra-peers as servers.
On this network, you can mainly search for small files, you have no way to chat nor browse other peers.
In particular, multiple-words queries are often understood as logical-or queries between words, ie each document that contains at least one word is returned.
As for Overnet, you can activate post-filtering of sources. Then, results which are received are checked by mldonkey against the query and only displayed if they are accurate. Post-Filtering is activated by setting the "filter_search" option to true, and modifying the "filter_search_delay" depending on the period you want between updates (for example, 30 means that results will be added only every 30 seconds).
Features | eDonkey | Direct Connect | Open Napster | Gnutella LimeWire | Soulseek | Audio Galaxy | OpenFT |
Download Server List | 1.16 | CVS | CVS | CVS | CVS | CVS | |
Server Connect | 1.16 | CVS | CVS | CVS | CVS | CVS | CVS |
View Server Users | 1.16 | CVS | |||||
Search Files | 1.16 | CVS | CVS | CVS | CVS | (web) | CVS |
Browse Peer | 1.16 | CVS | CVS | ||||
Download Files | 1.16 | CVS | CVS | CVS | CVS | CVS | CVS |
Recover Files | 1.16 | CVS | CVS | CVS | CVS | ||
Recover Sources | 1.16 | CVS | CVS | CVS | |||
Pause Downloads | 1.16 | CVS | |||||
Cancel Downloads | 1.16 (not CVS) | CVS | |||||
Upload Files | 1.16 | ||||||
Upload File List | 1.16 | CVS | |||||
Friends | 1.16 | ||||||
Public Messages | CVS | CVS | |||||
Private Messages | 1.16 | ||||||
Import Windows Config | 1.16 | ||||||
Config File | downloads.ini | directconnect.ini | opennap.ini | limewire.ini | soulseek.ini | audiogalaxy.ini | openft.ini |
Disable Network | CVS | CVS | CVS | CVS | CVS | CVS | CVS |
If you have any comments, if you want to add some questions, or improve this FAQ, send a mail to mldonkey@mldonkey.net