(This does not cover installing on cygwin.)
Install Python
First, make sure that you have a recent version of Python installed on your machine. We recommend 2.5 or 2.4, although most of Dabo should work with 2.3. You can get a binary installer for Windows at http://python.org ; here's the link for the 2.5 installer: http://www.python.org/ftp/python/2.5/python-2.5.msi . Run the installer; defaults are good. This installed Python into C:\Python25\. To test the installation, open cmd.exe and type python - you'll probably get an error. Now type c:\Python25\python.exe - you should get the interactive Python prompt. To exit the interpreter, type Ctrl-Z and press Enter.
Next, add this Python directory to your path. Open the Control Panel, and go to Performance and Maintenance/ System. On the Advanced tab, click the Environmental Variables button. Find Path under the System Varibles listing, and double-click it. Scroll to the end of the Varible Value textbox, add a semi-colon, and then add the path to your Python installation (default would be C:\Python25). Click OK a bunch of times to close everything up. If you still have cmd.exe running, close it and open a fresh copy. Now try typing python at the command prompt; you should be brought directly to the interpreter. Type Ctrl-Z and Enter to exit Python.
Install wxPython
Go to the wxPython download page at http://wxpython.org/download.php to find the pre-built binaries with Unicode support (DON'T get the ANSI version - it won't work with Dabo!). Here's an direct URL for the Win32 Unicode version: http://prdownloads.sourceforge.net/wxpython/wxPython2.8-win32-unicode-2.8.1.1-py25.exe (note, that is an old version of wxPython). Run the installer, accepting all the defaults. It can detect your Python installation, and will install it into the appropriate location.
To test the installation, open a Python session from cmd.exe. Type import wx and press Enter. If it pauses for a bit and then displays another normal prompt, you're OK. If you get any sort of error message, something went wrong; you can try re-installing and see if that fixes the problem.
If you install wxPython version 2.8.11.0, and then version 0.9.2 of Dabo from a compressed file, make sure you perform a WebUpdate, otherwise you will encounter the _extraStyle error.
Install SQLite 3 (only necessary with Python 2.4 or earlier)
If you installed Python 2.5, you already have all the SQLite stuff you need, as it's now included with Python. But if you have an older version of Python, go to http://www.sqlite.org/download.html and under the section for Precompiled Binaries For Windows, find the entry that looks like sqlite-3_X_X.zip, where the Xs will be the current version numbers. Download that file and unzip it. You can place the binary file anywhere; just make sure that it's in your path. I recommend putting it in your C:\Python24 directory, since I we already added that to the path in the first step.
Install PySQLite 2 (only necessary with Python 2.4 or earlier)
If you installed Python 2.5, you already have all the PySQLite stuff you need, as it's now included with Python. You can get the binary installer for pysqlite2 from this URL: http://initd.org/pub/software/pysqlite/releases/2.3/2.3.3/pysqlite-2.3.3.win32-py2.4.exe . This is for the 2.3.3 release, which is the current one as I write this. You can go to the main page for pysqlite (http://initd.org/tracker/pysqlite), and scroll down to the Downloads section. Grab the one Latest 2.x version, Windows binaries, Python 2.4. Once you have the installer, run it, accepting all the defaults as usual. Test it out by opening a Python session in cmd.exe, and typing import pysqlite2. If you don't get any error messages, you're good to go!
Install ReportLab
Go to http://www.reportlab.org/downloads.html and download the latest version of the ReportLab Toolkit: http://www.reportlab.org/ftp/ReportLab_2_2.zip . Unzip the file, and you should have a folder named ReportLab_2_2. Inside that is another folder named simply reportlab. Move that folder to your C:\PythonXX\Lib\site-packages directory. Now go to http://www.reportlab.com/ftp/ and download the zip file containing the DLLs for the appropriate version of Python you have on your machine; the file will be named win32-dlls-pyXX.zip, where XX is the number for your Python version. To install, just unpack into your C:\PythonXX\DLLs directory. Then you should install the Python Imaging Library (PIL), that adds image processing capabilities to your Python interpreter. This library supports many file formats, and provides powerful image processing and graphics capabilities. Download it from http://effbot.org/downloads/PIL-1.1.6.win32-py2.5.exe. This package is for Python 2.5, if it's not the case in http://www.pythonware.com/products/pil/index.htm you will find the right package for you python version. Once all that is done, check your installation by firing up Python and typing import reportlab - no errors means that everything is OK.
Install MySQLdb (optional)
If you want to connect to a MySQL database, you'll need to install MySQLdb. Go to http://sourceforge.net/project/showfiles.php?group_id=22307 and click on the link for mysql-python in the Latest File Releases section. That will take you to the file download page; there will be an entry with a .tar.gz extension (for Linux) and one with a .exe extension (for Windows). The name should look something like MySQL-python-1.2.2.win32-py2.5.exe . Once that's downloaded, double-click it to run the installer. Accept the defaults, and test it by going to the Python prompt and typing 'import MySQLdb'; again, no error messages mean that the installation was successful.
Python 2.5 is supported since MySQL-python version 1.2.2.
Install psycopg2 (optional)
If you want to connect to a PostgreSQL database, you'll need to install psycopg2. You can get the installer from this page: http://www.stickpeople.com/projects/python/win-psycopg/index.html . There is a table with the various releases in the middle of that page; make sure you get a psycopg2 version (2.x.x) that matches your Python version; the file name should look like psycopg2-2.0.5.1.win32-py2.5-pg8.2.0-release.exe, with differences for the specific versions. Run the installer, accepting the defaults, and check your installation by typing import psycopg2 at the Python prompt.
Install kinterbasdb (optional)
If you want to connect to a Firebird database, you'll need to install kinterbasdb. Go to http://firebirdsql.org/index.php?op=devel&sub=python to download the kinterbasdb version for your used Firebird server. The different files are specific for which version of Firebird you will be working with, as well as the version of Python you are running. Download the appropriate file, and run it to install the module. Accept the defaults, and you should be good to go. NOTE: kinterbasdb requires the firebird client to be installed.
Install TortoiseSVN (optional, but recommended for those developing Dabo)
There are other ways of using Subversion in Windows, but far and away the best choice is TortoiseSVN, a free tool available from http://tortoisesvn.tigris.org
Once installed, TortoiseSVN integrates into Windows Explorer by adding itself to the right-click context menu. Additionally, the files you check out will have an additional icon over their regular icon that indicates the status of that file. You can turn that off if you like, but I think it's a great way to tell when you've changed something.
If you've installed TortoiseSVN and can now see the TortoiseSVN options when you right-click a file, use the steps below in the "Installing Using TortoiseSVN" section.
Install the Dabo Framework
You have a few options regarding installing the Dabo Framework. If you only plan to use Dabo (i.e., and not help develop Dabo), follow the Normal User Install instructions. Otherwise, follow the Subversion Install instructions.
Normal User Install
Get the latest published release version and unzip it, which will create a folder named dabo. You actually got 3 things: 1) the dabo framework module, which is installed like any other 3rd-party Python module; 2) the demo folder, which contains the DaboDemo app that shows off some of what Dabo can do; and 3) the ide folder, which contains all of the visual tools. To be honest, we don't really have an actual IDE; the name comes from our initial idealistic goals of creating a full IDE, but the real world requirements of paying bills has prevented that from happening yet. Both the demo and ide folders can be placed/moved anywhere on your disk that is convenient to you, or you can just leave them where they are. They are not part of the framework, but are actually a set of applications that are written in Dabo!
You now have two options for installing the framework:
- Install Dabo as a Python module the normal way -- install the Python Egg. Open a DOS prompt, change to this new dabo directory, and then (as an administrator) type
python setup.py install. This will install Dabo as a Python module.
The Dabo installer requires setuptools (at least 0.9.2 requires it). If it does not find setuptools on your system, it will attempt to install it. (This may fail because of an outdated URL. Visit http://pypi.python.org/pypi/setuptools and download an appropriate package for your system, then run the Dabo install command again.) - Install Dabo the unconventional way. After extracting Dabo to wherever you wanted it, add a dabo.pth file to your Python site-packages directory, as discussed below in section Installing Dabo as a Python module.
The unconventional way has the advantage that you can keep the Dabo module in an unprivileged location, and hence you can be sure that the WebUpdate feature will work for you.
Once Python knows about the Dabo module, type python to start a Python session. In that session type import dabo. If you don't get any error messages, you're all set! If instead you get a traceback like this: "ImportError?: No module named dabo", don't panic - it's probably something simple. Read this, or post a message on the dabo-users list (you can sign up for free at http://leafe.com/mailman/listinfo/dabo-users), and someone will certainly help you out.
Since Dabo is being actively developed, it is likely that several files in the framework have been updated since the released version was built. To keep current with all the enhancements and bug fixes, Dabo features WebUpdate, which will compare your installed version with the latest approved revision on the Dabo server. If it finds that a newer version is available, you will be asked if you want to update to the latest version. If you answer Yes, any changed files will be copied to your machine, keeping you up-to-date quickly and effortlessly. (If you install wxPython version 2.8.11.0, and you then install release version 0.9.2 of Dabo, you will need to perform a manual WebUpdate using DaboDemo, otherwise you will encounter the _extraStyle error quite soon with ClassDesigner and with certain portions of DaboDemo.)
If you plan on creating Dabo web applications, you need to create a pylons app named daboserver and replace its daboserver subdirectory with the daboserver directory you downloaded.
Subversion Install
If you plan on helping develop Dabo itself, use Subversion to get the latest and greatest code as it is updated. You have two main options for using Subversion in Windows: TortoiseSVN (see section above), or installing the bare-bones command-line version. Here are instructions for both methods:
Installing Using TortoiseSVN
Select a directory where all of the Dabo-related files will go. I typically use something like C:\projects\ as my base directory, but you can put the files wherever makes sense to you. Right-click on that directory, and select SVN Checkout... from the context menu.

That will bring up a dialog. Enter the URL for the main Dabo repository in the first field, and the directory that you want to install it to on your machine. If that directory doesn't yet exist, it will prompt you for permission to create it:

Once you click OK, TortoiseSVN will go out over the internet, connect to the dabodev.com servers, and start copying files. When it is done, you'll see a long list of the copied files:

Here is the result in Windows Explorer. Note the green checkboxes added to each file's icon. If you were to modify a file, it would change to a red exclamation mark, indicating that the file has been modified.

Install the Dabo Demo and IDE files
These two directories are not necessary to use Dabo, but they are still very useful. The demo files are examples of different aspects of Dabo programming, and includes the DaboDemo application, which lets you see the various Dabo classes in action, along with their source code, which you can modify to see how changes to that code affects behavior. The IDE directory is still very much a work in progress, and contains all the visual tools that we've created to make your Dabo development efforts easier.
You can place these files anywhere on your system that you prefer, as they aren't part of the Dabo framework, but rather applications written using Dabo. So either download them from the website and unzip them where you like, or, using the Subversion tool of your choice, grab the following URLs:
http://svn.dabodev.com/dabo/trunk/ide http://svn.dabodev.com/dabo/trunk/demo
Installing Using the Command-line Version
From the command window / DOS box:mkdir dabodev cd dabodev svn checkout http://svn.dabodev.com/dabo/trunk/dabo svn checkout http://svn.dabodev.com/dabo/trunk/ide svn checkout http://svn.dabodev.com/dabo/trunk/demo
Installing Dabo as a python module
If you did not install Dabo the normal way (i.e., you did not use python setup.py install), you need to tell Python where to find Dabo. First, determine the location of site-packages by typing from the shell prompt:
python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
or by starting python and typing:
from distutils.sysconfig import get_python_lib print get_python_lib()
The path displayed will show you where site-packages are read from.
Second, create a file called "dabo.pth" in the site-packages directory of your Python install, and type into that file the path to the dabomodule directory. For example, if your Dabo folder is located at C:\someFolder\anotherFolder\dabo, you'd set your dabo.pth file to read:
C:\someFolder\anotherFolder
since that is the path to the folder that contains the dabo folder.
note: don't quote the path, even if there are spaces in it.
The general rule is: The .pth file should contain the path of the directory that contains the dabo module folder.
Example showing where to put dabo.pth, what is in it, and what it looks like when it is and isn't done right:
C:\Documents and Settings\joeuser>python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()" C:\Python25\Lib\site-packages C:\Documents and Settings\joeuser>type c:\Python25\Lib\site-packages\dabo.pth C:\Documents and Settings\joeuser\dabodev\dabomodule\ C:\Documents and Settings\joeuser>python -c "import dabo" Traceback (most recent call last): File "<string>", line 1, in <module> ImportError: No module named dabo C:\Documents and Settings\joeuser>python -c "import dabo" C:\Documents and Settings\joeuser>
Uninstall
Suppose you installed the normal/egg way, but you later determine you need the latest and greatest fixes/changes, so you need to uninstall what you have, then switch over to a Subversion install. Uninstall from the command window / DOS box using something similar to the following::
cd \Python*\Lib\site-packages
easy_install.py -mxN Dabo
# remove the Dabo-...egg folder in C:\Python*\Lib\site-packages
# remove the dabo folder that you originally created from the *.zip file
Testing
You can test out your installation by running the DaboDemo program, located inside the demo package. Either locate DaboDemo.py and double-click it, or run the following code (assuming you've installed the demo files in \dabodev\demo\):
cd \dabodev\demo
python DaboDemo.py