Gajim Win32 Dev Environment
I've just completed setting up my environment (Windows 7) for Gajim HG on a new machine. These are the files I used, with source webpages.
Note: For trunk (0.14+) pygtk2.16 is needed, so we need to use python2.6. so take py2.6 version of all modules.
Sources
For the actual sources:
Tortoise HG
http://sourceforge.net/project/showfiles.php?group_id=199155&package_id=236242&release_id=679975 ( http://bitbucket.org/tortoisehg/stable/wiki/install)
- Install
- Right-Click target folder -> Select TortoiseHG -> Clone a repository
- Enter URL as: http://hg.gajim.org/gajim
- Click on Clone button
Dependencies
Download and install the following dependencies:
Python
Use the 32-bit version even if you're on 64-bit windows, there's an issue with the key in the registry, deps won't find the 64 bit.
http://www.python.org/ftp/python/2.6.4/python-2.6.4.msi
( http://www.python.org/download/)
GTK+
Check out our binaries of GTK :
- Right click somewhere in windows explorer -> Select TortoiseHG -> Clone a repository
- In Source Path, enter URL as: http://hg.gajim.org/gtk-win32-bin
- In Destination Path, browse and enter this path: [PATH_TO_GAJIM]\src\gtk
- Click on Clone button
PyGTK for Windows (PyGTK, PyCairo, PyGObject)
- http://ftp.gnome.org/pub/GNOME/binaries/win32/pycairo/1.8/pycairo-1.8.6.win32-py2.6.exe
- http://ftp.gnome.org/pub/GNOME/binaries/win32/pygobject/2.20/pygobject-2.20.0.win32-py2.6.exe (You need 2.20, it has split out glib, which some gajim code imports directly.)
- http://ftp.gnome.org/pub/GNOME/binaries/win32/pygtk/2.16/pygtk-2.16.0.win32-py2.6.exe
( http://pygtk.org/downloads.html)
Python for Windows extensions (PyWin32)
http://downloads.sourceforge.net/project/pywin32/pywin32/Build%20214/pywin32-214.win32-py2.6.exe
( http://sourceforge.net/project/showfiles.php?group_id=78018)
Optional Dependencies
The following dependencies are optional:
OpenSSL (optional)
PyOpenSSL
http://pypi.python.org/packages/2.6/p/pyOpenSSL/pyOpenSSL-0.10.winxp32-py2.6.exe#md5=54c7dd629bf4004569a7c97c9ef6daa5 ( http://pypi.python.org/pypi/pyOpenSSL)
? Win32 OpenSSL (Shining Light)
(Looks like PyOpenSSL installed from egg file works without having OpenSSL installed on PC.)
http://www.slproweb.com/download/Win32OpenSSL-0_9_8g.exe ( http://www.slproweb.com/products/Win32OpenSSL.html)
PyCrypto?
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
Docutils (optional)
http://mesh.dl.sourceforge.net/sourceforge/docutils/docutils-0.4.tar.gz ( http://docutils.sourceforge.net/)
- Untar, run install.sh
Zero Conf (optional)
The following are the configuration steps to get zero configuration networking working.
Bonjour for Windows
http://supportdownload.apple.com/download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/Mac_OS_X/downloads/061-3511.20070726.b32fw/BonjourSetup.exe ( http://developer.apple.com/networking/bonjour/download/)
pybonjour
http://o2s.csail.mit.edu/download/pybonjour/pybonjour-1.1.0.zip ( http://o2s.csail.mit.edu/o2s-wiki/pybonjour)
- Unzip to a temp location
- Copy pybonjour.py into the src/common/zeroconf folder
Run!
And finally run: launch.bat
Hide the console
Just use "pythonw gajim.py" to run Gajim without console window, or
BTW: For getting rid of the console window (cmd.exe), try:
The Wonderful Icon
http://www.thewonderfulicon.com/wondicon.exe ( http://www.thewonderfulicon.com/download.html)
- Install
- Right-click tray icon -> Configure
- Set hotkey for hide window to Win + H
Then once the console has successfully started the app, just press Win + H to disappear it. Also, try setting the tray icon to always hide. (Right-Click in System Tray->Properties->Customize...)
Debugging
In PythonWin, you need to set the current directory using "os.chdir("C:\Projects\Gajim\src")"; you may want to add this to your gajim.py file before "if os.path.isdir('gtk'):" to save remembering to type it every time you debug.
Then open and run gajim.py
Enjoy
Happy hacking!
Campey campey[at]gmail.com
