What is Site Deploy?

Site Deploy is a PyGTK-based cross-platform GUI tool for the easy deployment of web sites to different types of web servers.

At the moment, focus lies on ease of use and configuration. Currently, Site Deploy supports Django and Play! sites on Apache, plus static sites on Apache, nginx and lighttpd (all on Debian-based platforms). Packaging, uploading and server restart is automated.

What can I do with it?

Site Deploy supports different combinations of server and site types. Please see the list of supported servers and sites.

If you are reading this documentation on, then you are already seeing a real use case. I’m using Site Deploy myself to update/upload this documentation. As access rights on the SourceForge project web server are very limited, I added the option “full SSH command access available” to the server configuration (disabled for SF, you can’t execute SSH commands unless you create a temporary shell). It allows me to upload static sites to SF without any hassle.


At the moment, there are no “stable” releases of Site Deploy yet, but ready-built Ubuntu packages are available in a PPA. They are stable enough to test the software, so give it a try! Here’s how you can install Site Deploy:


sudo apt-add-repository ppa:andidog/ppa
sudo apt-get update
sudo apt-get install site-deploy

All dependencies are automatically installed by aptitude. After installation, you can find Site Deploy in the “Accessories” menu of GNOME.


I haven’t yet tested whether installation on Windows works without problems. If you want to try it, create a installer from the source code using the command bdist_wininst (or bdist_msi) and then install the package. You will need

  • GTK+ installation

    Make sure you choose a GTK+ installer that includes libglade. This is the case in the above link, but not for the downloads on because Alexander Shaduri, who packages those downloads, creates “pure” packages without extra libraries or utilities.

  • Python 2.6 (newer 2.x versions might work as well)

    Choose “Windows x86 MSI Installer” even if you’re using a x64 architecture because some Python packages are not available as x64 versions.

  • pywin32 extensions

    Choose the latest installer, e.g. “pywin32-216.win32-py2.6.exe”.

  • pygtk 2.16 with Glade support

  • pygobject 2.20

  • pycairo 1.8

Newer versions of the Python modules might work, too, but these versions are the ones that are used during development (I’m mostly developing on Windows).


Seems like PyGTK has pushed out all-in-one installers for the Python modules recently, including a GTK+ runtime. These most recent versions lead to the unnerving Pango bug PangoWarning: failed to choose a font, expect ugly output. engine-type='PangoRenderWin32', which leads to all text glyphs being rendered as rectangles. This has happened to me before in older versions, but with recent versions even “workarounds” don’t work anymore. I’m trying hard to find out what is going on there.

This problem only seems to apply to Windows (Pango’s win32 font module).

In the next chapter, we will step right into usage of Site Deploy. The chapter presents a practical example, showing how to create a server and site configuration quickly.

Table Of Contents

Previous topic

Site Deploy user manual

Next topic

Supported server and site types

This Page