How to run mldonkey on bubba

How are you using your Bubba? Got ideas for a cool modification? Share!
Posts: 106
Joined: 13 Jan 2007, 06:03
Location: Venice

How to run mldonkey on bubba

Post by msx » 11 Feb 2007, 06:06

Here's a little guide on how to run mldonkey on bubba, if any of you is interested :) Mldonkey consumes very little ram and cpu, so it's perfect for the miniserver.

Clearly, do this at your own risk, you may break things or even void your warranty.

Note: the informations in this post are outdated, read the whole topic before installing.

First off, you have to enable debian repositories: open the file /etc/apt/sources.list and uncomment the commented lines.
Then update your packages list: as root, give:

apt-get update

Now install the tools needed to compile mldonkey with this command (always as root):

apt-get install bzip2 gcc libc6-dev ocaml-nox zlib1g-dev libbz2-dev libgd2-noxpm-dev

Add an user for the remaining of the work.. don't do it as root:

adduser mule

su - mule

cd /home/mule

Now download the latest release of mldonkey, mine was 2.8.2 (if this doesn't work, go and download it manually):

wget ... .2.tar.bz2

Untar and enter your directory:

tar xjvf mldonkey-2.8.2.tar.bz2
cd mldonkey-2.8.2

Now, before configuring and compiling, there's a patch to apply. This is becouse of a bug in the arm code that make it freeze. The bug is still open but they posted a patch that walkaround the problem. Here more info:

Download and apply the patch:

wget -O arm.patch ... e_id=10357

patch < arm.patch

Now you can configure:


Now for the final step: make. This will take a long time, so prepare to work on your favourite hobby or to take a long nap:


Now you can finally run mldonkey:


I suggest to close it as soon as it finish startup, and go editing your config files, especially the file ~/.mldonkey/downloads.ini where you can configure allowed address (for interfaces).
My settings are:

Code: Select all

 allowed_ips = [

 gui_port = 4001

 gift_port = 0

 http_port = 4080

 telnet_port = 4000
Now restart mldonkey, you should be able to reach the http interface at http://bubba:4080/

That's it :)

Some hint:
- Configure your firewall: search the configurations file to know your ports and open them, or you'll get low-id and wont' donwload much.
- You can use the wonderful "screen" command to run mlnet in background after loggin out from bubba.

References: ... e_id=10357
Last edited by msx on 29 May 2007, 05:47, edited 2 times in total.

Posts: 1470
Joined: 31 Dec 2006, 07:12
Location: Sweden

Post by johannes » 12 Feb 2007, 03:02

Very nice, thanks! :D
/Johannes (Excito co-founder a long time ago, but now I'm just Johannes)

Posts: 1
Joined: 19 Jan 2007, 08:56

Post by Luislz » 13 Apr 2007, 15:52

I worked great :D

Just a few notes:
* The bug has been moved to this link.

* The patch file is now ... e_id=12004 so do
wget -O arm.patch ... e_id=12004

* It works great with 2.8.3 version though 2.8.4 is out. Not tested.

* You can do ./mlnet <&- >> mldonkey.log 2>&1 & to run mldonkey in background and close the ssh session

Thanks to point me to the right direction. I didn't know what to do when mldonkey froze my box :?

Posts: 106
Joined: 13 Jan 2007, 06:03
Location: Venice

Post by msx » 28 May 2007, 14:56

Hi! A little update:
i managed to compile version 2.8.5.
They corrected the ARM hang bug (so the patch above is not necessary anymore).
But they introduced support for SUI (secure user identification, iirc) that doesn't compile on bubba.
To compile, you have to pass --disable-donkeysui parameter to configure:

./configure --disable-donkeysui

For the rest, it works great :)

Posts: 106
Joined: 13 Jan 2007, 06:03
Location: Venice

Post by msx » 10 Feb 2008, 12:24

Another update:

I just compiled version 2.9.3 on Bubba with Etch (the light version). It compiled correctly with no patch and no special directive :) just plain old compile/make.

Just a note: on the light-etch image there is no "make" installed, so if you're making a clean install, remember to do an "apt-get install make"

Posts: 52
Joined: 10 Nov 2008, 17:11

Post by scoobynz » 02 Dec 2008, 16:41

I thought I would share a few notes with others as to my experiences. Installing mldonkey as it was a bit fiddly.

I can confirm that this link is the correct way to install mldonkey and that I have the version 2.9.6 running, with highID, on my server – without any patches.

Please note a few pointers;
1)When I installed the apps listed at the top of the thread my Bubba became inaccesible. This was because the bubba-frontend had been uninstalled. This was easily fixed when, once I knew what was broken. Please refer to this link for further info if this affects you
2)IMPORTANT: g++ is also required to enable SUI on the donkey network. Please ensure that this is the same version as gcc (which it will be if you add it to the end of the list of applications to be installed above. You will also need to install ocaml-native-compilers. I found this link to be extremely helpful on how to compile, particularly the bottom that runs through a compilation example and when packages are required to install – take the time to read it.
3)Once installed the program can only be launched from within the folder home/mule/mldonkey-x.x.x, where x.x.x is the current version. Launch by using command ./mlnet as per the post above.
4)Ensure that you open the required ports, including 4080, and forward the IP address of the server only. Do not forward the IP address of the desktop you are using to connect to your Bubba as well, as this will lead to fail porttests.
5)Ensure that your WAN IP does not end with a 0 as this will lead to a lowID

Good luck!!