Deluge on windows

Obligatory screenshot

Click to see the full resolution version.
Deluge on windows screenshot
Deluge WebUI

Note

Due to a lack of time, to the fact I don't have a windows machine to test anymore (viva linux !), I'm not maintaining the windows version of Deluge anymore. However, the nice folks at Deluge torrent (the originals authors) are now doing it. I've now moved onto different projects. But working with Deluge was a great time !

Credits

I am not the author of deluge, I am just the one that ported it to windows. If you like this client, this mainly because of the great work of its original authors. I would like to thank markybob, andar, zachtib and the others for their great work. Hopefully they will host the port when it becomes more stable. If you like the WebUI plugin, this is due to the awesome work done by vonck7 (screenshot courtesy of him).
Also, deluge use libtorrent and its author has provided me with valuable help getting things working on windows. Thanks hydri !
The installer has been created with a modified script from pidgin sources. So, credit where is due, thank you pidgin !
At last, I would like to give credit to all the open sources projects used in this work, look below to see the list. This is incredible what you can do with the help of others. Open source at its best.
Of course, I give a thank you to all users that are testing this client to make it work for others.

Download the installer !

You can now download the installer from the official website.
Download the latest version.
How to upgrade : Just run the new installer and the old version will be upgraded.
Known problems:

  • Language selected is not the good one. If you want to change you language, open a console in the deluge folder, type "set lang=en" without "" and then "deluge.exe".
  • First, you may want to check the tickets for deluge, the problem might be known in deluge and not only deluge for windows. If your problem is there, you can use the trac facilities to provide useful information (if you have it).
  • You can also join the #deluge channel on irc.freenode.net
  • There is also a deluge windows forum available

Changelog (not updated anymore)

0.5.7:

  • Many bugfixes.
  • Added --config switch to specify folder.
  • Corrected location of log files.

0.5.6.1.b:

  • Other fixes for persistent state.

0.5.6.1:

  • BugFixes for 0.5.6
  • Some changes for handling persistent.state. Should reduce the number of runtime errors.

0.5.6: First "stable" release.
Build 22 (alpha 22):

  • Many bugfixes

Alpha 21:

  • Many, many bugfixes
  • Port lost problem is now solved
  • Interface should be fully translated in your language if supported

Alpha 18:

  • Added i8n for some installer options
  • Another port dropping solution

Alpha 17:

  • Support for run with windows and associate with Deluge
  • Many bugfixes
  • Port dropping should be gone

Alpha 16:

  • Fix for icon on Vista

Alpha 15:

  • Fix the crash in 5 minutes that many people are experiencing
  • WebUI is now in sync with deluge svn (rev80)

Alpha 14:

  • Removed the MessageBox when quitting deluge. Now two files are created intstead : deluge.stdout.log and deluge.stderr.log
  • Many bugfixes
  • Error with "~\\" should be gone, please report if otherwise
  • Brand new WebUI plugin, allows you to control deluge from the web. Just point your browser to htt://localhost:8112/ after enabling plugin and setting a password. Sometimes a deluge restart may be necessary for password to be taken into account.

Alpha 13:

  • Many bugfixes

Alpha 12:

  • New, nice theme
  • Drag&Drop should work
  • Open Url should fill dialog box if Url is in clipboard
  • Many fixes

The following is for developers only ! Don't follow any of these instructions if you are a user !

Grab svn snapshot

First step is to get a current snapshot of deluge svn.
For example if you have svn installed:
svn checkout http://deluge-torrent.org/svn/trunk deluge
or the same with RapidSVN.
The folder in which the deluge svn is located will be referred as [delugeroot]

Prerequisites for compiling

If you want to hack into deluge on windows, you will have to install the source code.
Here are the prerequisites:

Python

This is pretty obvious. Get python from http://www.python.org/ and install it on your system. This guide has been tested with python 2.5.

Mingw with gcc4

Instead of downloading the official distribution and then patch to gcc4, it is much better to get http://nuwen.net/files/mingw/mingw-3.0.zip from http://nuwen.net/mingw.html

Dependencies & scripts

Instead of compiling dependencies by hand, just grab the file named win32.7z below and unzip it in [delugeroot]. You should have win32, lib subfolders as well as some .bat. The svn contains the last setup.py which is compatible with this package.

Boost headers

If you did not get Mingw with gcc4 the proposed way, you don't have the boost headers. Grab boost from http://www.boost.org/ and unzip it in [delugeroot]\win32. Rename the folder named boost_version to boost.
You should have [delugeroot]\win32\boost\(boost folders, project-root.jam file)

Compiling & Installing

You can compile deluge by invoking the build.bat in win32 (recommened!) script or by typing:
python setup.py build -c mingw32
Everything should build without errors.
To install, invoke install.bat in win32 (recommened!) or type:
python setup.py install --skip-build
Copy the deluge script from the script folder to the [delugeroot]\win32\run folder
Copy the deps (dlls...) as needed (i told you to use install.bat).

Prerequisites for running

GTK+

You can get GTK+ from http://sourceforge.net/project/showfiles.php?group_id=235&package_id=119...
Get gtk-runtime-2.10.13-rev-a.exe or any newer version and install it.

Pygtk, Pygobect, Pycairo

You can get them from http://www.pygtk.org/downloads.html
Install them, they will put themselves in the correct python folder.

pyxdg

You can get it from http://www.freedesktop.org/wiki/Software/pyxdg
Untar the tarball and copy the xdg folder into [pythonrootfolder]\lib , e.g.
C:\Program Files\Python25\Lib\xdg or C:\Python25\Lib\xdg

libglade

Copy the [delugeroot]\win32\libglade folder to the [gtkrootfolder], so that the dlls are next the gtk ones.
Usually this is C:\Program Files\Common Files\GTK\2.0 but may vary following locale.

dbus-python

You can get it from http://dbus.freedesktop.org/releases/dbus-python/
Untar the tarball and copy the dbus folder into [pythonrootfolder]\lib , e.g.
C:\Program Files\Python25\Lib\dbus or C:\Python25\Lib\dbus
You will then need the python bindings. You can get them precompiled from the win32.7z package below.
Extract the two .pyd into [pythonroot]\lib.

Run

Go to [delugeroot]\win32\run folder, and open a console.
You can now invoke deluge by typing:
python deluge
dbus daemon should start along with deluge.

Package

You will NSIS and py2exe for this to work.
In the [delugeroot]\win32\run folder, run dist.bat or type:
python -OO win32.dist.py py2exe
This will create a [delugeroot]\win32\dist folder with everything inside it. The deluge.exe should work.
Go to [delugeroot]\win32\ and run deluge-installer.nsi from nsis. Done !

If you encounter any error, please contact me.

AttachmentSize
win32.7z1.48 MB

207 comments

Anonymous, Mon, 09/24/2007 - 20:26
deinstall or install over?

slurdge, Mon, 09/24/2007 - 21:09
Install over. Uninstall should be automatic.

Anonymous, Tue, 09/25/2007 - 19:47
I uninstall, restart, delete some files that are somehow protected and then install. Otherwise the install procedure does weird stuff and apparently some files cannot be overwritten. Then again, it could just be Vista.

Anonymous, Wed, 09/26/2007 - 02:57
i first using deluge when im using ubuntu, now it has port to windows ... that great :))

Anonymous, Wed, 09/26/2007 - 08:21
Now finnaly it in window...does it support vista too? currently i using XP... anyway the deluge work fine in XP same like under linux but encounter a problem which i cant drag n drop torrent into it. Overall it's work fine. GREAT JOB~!!! HELL LIKING IT

slurdge, Wed, 09/26/2007 - 15:16
Hey, thanks ! It should work on vista too !

Anonymous, Thu, 09/27/2007 - 19:50
The big guy upstairs sends word. HEAVEN LIKING IT TOO. A lot more. My BT works for the first time in months. It cried Lazarus.

Anonymous, Fri, 09/28/2007 - 04:34
Apparently, deluge of windows version has the memory leak problem and 100% CPU usage. Any idea about it?

Anonymous, Fri, 09/28/2007 - 05:17
try download the latest alpha release and see. I got no problem at all so far...memory usage only 16k

Anonymous, Sat, 09/29/2007 - 08:23
I am also having the same problem. Using the latest alpha12

Anonymous, Sun, 09/30/2007 - 00:25
I frequently get this error warning: --------------------------------------------------- Microsoft visual c++ runtime library Program: deluge.exe File: libtorrent\src\peer_connection.cpp Line: 2788 Expression: bytes_transferred > 0 (sometimes it is int(m_send_buffer[sending_buffer]size()) > m_write_pos) --------------------------------------------------- It will have the options Abort, Retry and Ignore. If I press Abort or Retry, the program closes. If I press Ignore, the program continues to run. However, must quickly press Ignore, otherwise the connections will slowly fall to zero. So leaving Deluge running unattended is a major problem because of this.

slurdge, Sun, 09/30/2007 - 10:55
This is a problem in libtorrent. I have followed the bug upstream. Thank you.

Anonymous, Sun, 09/30/2007 - 14:42
Slurdge, thanks for following up. I know it's not your area, but any chance of getting it fixed? Btw, is this specific to certain machines or setups only? Because other guys in my forum using deluge(both linux and windows) don't seem to have this problem.

slurdge, Sun, 09/30/2007 - 14:53
1/ It is fixed upstream (good chance that this is fixed, either directly or indirectly) 2/ In the beta build, the asserts will be removed, so you will not notice it (although the problem will be still there, you will not have the effects)

Anonymous, Sun, 09/30/2007 - 15:51
good info! hope you will release the beta builds soon, coz with these error messages, deluge isn't really useable when left unattended. thanks again.

Anonymous, Mon, 10/01/2007 - 02:54
hei slurge..it seems that deluge cpu usage goes up abnomally high as it starts downloading..sometimes it reaches 100% that im frequently forced to close it temporarily to cool down my cpu..is there anything we as normal deluge users can do to help you indentify the culprit of this problem? from the task manager i see deluge.exe is taking most cpu usage (97%)

Anonymous, Mon, 10/01/2007 - 06:34
hi..it's me again..i think i've figured out what causes the high cpu usage problem..i notice this problem will most likely to happen if you download a torrent file that will create folder structure in the download folder eg: c:\ ...download folder\ ......lord of the lolipop\ .........lord of the lolipop.avi however, if the torrent file create only "lord of the lolipop.avi" without the folder as below: c:\ ...download folder\ ......lord of the lolipop.avi ..deluge will work normally with no high cpu usage..

slurdge, Mon, 10/01/2007 - 06:36
Hi, This is actually really useful information. I will try to confirm this on my dev computer. Meanwhile, if other users are able to confirm, please to do.

Anonymous, Mon, 10/01/2007 - 07:37
After running Deluge (alpha-12) for a while, active port stop responding to incoming connection. Both the preference window and netstat show Deluge is still listening on the configured active port. But test active port show the port is closed (if the test is run just after Deluge start up, the port is shown as open).

Anonymous, Sun, 10/07/2007 - 05:33
i'm gettin the same problem here..... i've portforwarded the active port and it shows that it's open when i test it after opening deluge. then when i tested it again after bout half an hour later it says the port is closed. :(

Anonymous, Mon, 10/01/2007 - 14:46
Traceback (most recent call last): File "deluge", line 42, in File "deluge\__init__.pyo", line 36, in File "deluge\common.pyo", line 50, in WindowsError: [Error 3] The system cannot find the path specified: '~\\deluge' ^Any idea what's this? Thanks.

Anonymous, Mon, 10/01/2007 - 15:10
Deluge is working fine in my pc, average mem usage around 20-30% however i am just curious about this error whenever i exit the program: C:\Program Files\Deluge\deluge.exe\deluge\interface.py:921: PangoWarning: couldn't load font "Lucida Grande Bold Not-Rotated 8", falling back to "Sans Bold Not-Rotated 8", expect ugly output. well it doesnt seem ugly to me anyway :D any idea wat this is?

Anonymous, Tue, 10/02/2007 - 12:44
Traceback (most recent call last): File "deluge", line 121, in File "deluge", line 109, in start_deluge File "deluge\interface.pyo", line 54, in __init__ File "deluge\core.pyo", line 270, in __init__ File "deluge\core.pyo", line 856, in sync RuntimeError: dictionary changed size during iteration

Anonymous, Tue, 10/02/2007 - 18:32
Traceback (most recent call last): File "deluge", line 121, in File "deluge", line 109, in start_deluge File "deluge\interface.pyo", line 54, in __init__ File "deluge\core.pyo", line 270, in __init__ File "deluge\core.pyo", line 856, in sync RuntimeError: dictionary changed size during iteration Its happening to mee too :s Runing windows vista.. is there anyway to solve this?? ty

slurdge, Tue, 10/02/2007 - 20:09
There is probably a problem with the loading of torrents. First, backup your current torrents. They are in c:\documents and settings\(your user name)\deluge\torrentfiles Then, in c:\documents and settings\(your user name)\deluge\, remove persistent.state. Run deluge. If error has gone away, readd torrents one by one. Report here success or failure.

Anonymous, Wed, 10/03/2007 - 15:26
As far as privacy matters, you get better protection with deluge than other torrent clients.

Anonymous, Thu, 10/04/2007 - 05:03
how so? please explain your statement.

Anonymous, Thu, 10/04/2007 - 10:03
i can't restart my previous download...so i need to start the file from the scratch..why can't deluge do the checking?

Anonymous, Thu, 10/04/2007 - 14:04
hello, I posted earlier about the Visual C++ error messages in Alpha12. Just tested Alpha13, seems that the error messages still happens. However, good news is that it happens much much less. So far running it more than 1 day, I saw about 3 times occuring. Compare to earlier alpha which sometimes happens several times an hour.

Anonymous, Fri, 10/05/2007 - 03:46
me too....

slurdge, Fri, 10/05/2007 - 08:18
This is normal to have error messages in these alpha. In fact, if there were no error messages, we (dev) would be unable to see the bugs. Moreover, this is still an alpha that is build from the freshest svn. Don't expect something stable before a few months(1-2), sorry.

Anonymous, Fri, 10/05/2007 - 10:17
Hello, Just wanted to leave a thanks message for this great torrent client Keep the great work avalonpt

Anonymous, Fri, 10/05/2007 - 15:53
Greetings! 1st of all, congratulations on all your hard work. I have this strange error when I try to run deluge.exe Traceback (most recent call last): File "deluge", line 121, in File "deluge", line 109, in start_deluge File "deluge\interface.pyo", line 60, in __init__ File "deluge\plugins.pyo", line 61, in scan_for_plugins File "share\deluge\plugins\WebUi\__init__.py", line 39, in from dbus_interface import DbusManager File "share\deluge\plugins\WebUi\dbus_interface.py", line 42, in from md5 import md5 ImportError: No module named md5 It compiles all normally, but when I try to run it, it creates the log file with that information. Any good soul to help me? ^_^''

Anonymous, Fri, 10/05/2007 - 16:09
I suppose that you are compiling from source, and are a developper. The solution is to disable WebUI, just remove the folder WebUI from the plugins directory. WebUI does not work yet on windows.

Anonymous, Fri, 10/05/2007 - 16:56
Thanks for your fast answer! It solved the problem :)

Anonymous, Fri, 10/05/2007 - 18:06
Traceback (most recent call last): File "deluge", line 42, in File "deluge\__init__.pyo", line 36, in File "deluge\common.pyo", line 50, in WindowsError: [Error 3] The system cannot find the path specified: '~\\deluge'

Anonymous, Fri, 10/05/2007 - 23:06
Hey there.. I installed alpha13 for windows on my computer.. When i'm opening Deluge it shows this error: http://img530.imageshack.us/img530/2194/delugeerrorzt8.png Does anyone knows how to fix it? I'm really needing Deluge to avoid traffic shapping from my ISP Plz help me.. my email: J_P_1112@hotmail.com Thanks

slurdge, Sun, 10/07/2007 - 13:28
Try to removes the preferences as stated above. If this not work, wait for later alpha, maybe they will solve your problem, but I can't guarantee it.

Anonymous, Sun, 10/07/2007 - 07:05
An error that force me to close my deluge application occurred quite often when i using alpha-14. Previously i was using alpha-12 no such problem happen, the error not about c++ visual library.

slurdge, Sun, 10/07/2007 - 08:53
Yeah, i'm having this problem too. When waiting for a fix, i suggest you to use alpha13.

Anonymous, Sun, 10/07/2007 - 10:45
Same here, the beta 14 only work about 5s back to alpha 13

Anonymous, Sun, 10/07/2007 - 12:21
Hi there! I'm having a problem with deluge. I can't add new torrents, and i already tried with version 12,13,14. At first everything worked just fine. I started with alpha 12. But suddenly, i couldnt add torrents to deluge anymore. Tried alpha 13 and then alpha 14, but i still cant add new torrents. Can anyone help me? Thanks

slurdge, Sun, 10/07/2007 - 13:26
What is the error ? Deluge crashes ? Do you have .log files in your deluge folder ?

Anonymous, Sun, 10/07/2007 - 13:33
C:\Program Files\Deluge\deluge.exe\deluge\interface.py:956: PangoWarning: Invalid UTF-8 string passed to pango_layout_set_text() C:\Program Files\Deluge\deluge.exe\deluge\dialogs.py:430: PangoWarning: Invalid UTF-8 string passed to pango_layout_set_text() C:\Program Files\Deluge\deluge.exe\deluge\dialogs.py:481: PangoWarning: Invalid UTF-8 string passed to pango_layout_set_text() Traceback (most recent call last): File "deluge\interface.pyo", line 1282, in add_torrent_clicked File "deluge\interface.pyo", line 1208, in interactive_add_torrent File "deluge\dialogs.pyo", line 496, in show_directory_chooser_dialog TypeError: GtkFileChooser.set_current_folder() argument 1 must be string, not None C:\Program Files\Deluge\deluge.exe\deluge\interface.py:1307: PangoWarning: Invalid UTF-8 string passed to pango_layout_set_text() Traceback (most recent call last): File "deluge\interface.pyo", line 1312, in add_torrent_url_clicked File "deluge\interface.pyo", line 1201, in interactive_add_torrent_url File "deluge\interface.pyo", line 1208, in interactive_add_torrent File "deluge\dialogs.pyo", line 496, in show_directory_chooser_dialog TypeError: GtkFileChooser.set_current_folder() argument 1 must be string, not None Traceback (most recent call last): File "deluge\interface.pyo", line 1312, in add_torrent_url_clicked File "deluge\interface.pyo", line 1201, in interactive_add_torrent_url File "deluge\interface.pyo", line 1208, in interactive_add_torrent File "deluge\dialogs.pyo", line 496, in show_directory_chooser_dialog TypeError: GtkFileChooser.set_current_folder() argument 1 must be string, not None Traceback (most recent call last): File "deluge\interface.pyo", line 1282, in add_torrent_clicked File "deluge\interface.pyo", line 1208, in interactive_add_torrent File "deluge\dialogs.pyo", line 496, in show_directory_chooser_dialog TypeError: GtkFileChooser.set_current_folder() argument 1 must be string, not None Traceback (most recent call last): File "deluge\interface.pyo", line 1282, in add_torrent_clicked File "deluge\interface.pyo", line 1208, in interactive_add_torrent File "deluge\dialogs.pyo", line 496, in show_directory_chooser_dialog TypeError: GtkFileChooser.set_current_folder() argument 1 must be string, not None Traceback (most recent call last): File "deluge\interface.pyo", line 1282, in add_torrent_clicked File "deluge\interface.pyo", line 1208, in interactive_add_torrent File "deluge\dialogs.pyo", line 496, in show_directory_chooser_dialog TypeError: GtkFileChooser.set_current_folder() argument 1 must be string, not None This is all i have in .log file. I dont get any error message. Not even adding torrents by URL. I simply choose to open a new torrent, and then, nothing happens. Thanks for your reply.

slurdge, Sun, 10/07/2007 - 13:45
Either remove your preferences folder (and readd torrents), or in your preferences specify a folder for downloading the torrents (instead of choosing it for each torrent). The bug should be gone after that.

Anonymous, Sun, 10/07/2007 - 13:57
Thanks alot friend! tried the second one, and worked :) Thanks for your time ;)

Anonymous, Sun, 10/07/2007 - 13:07
I still having the same Runtime error on alpha14!!! plz someone help me fix this!! Microsoft Visual C++ Runtime Library

Anonymous, Sun, 10/07/2007 - 17:44
vonck7 (now in romania) I just installed alfa14 and the webui works fine :D. unfortunately irc and torrents are blocked here, so i can't test a lot. i did't think a gtk/linux client ported to windows would compete with utorrent/ azureus before. but now i think deluge on win could become really big.

Anonymous, Sun, 10/07/2007 - 18:59
My Deluge (new alpha 14) crashes after 2 minutes running. No log, only the well known message error of Windows XP.

Anonymous, Mon, 10/08/2007 - 09:10
thanks for the hard work. alpha15 is running stable on my system

Pages