Installing Python
Installing uliGo
Upgrade from uliGo 0.1
Systemwide installation under Unix/Linux


The program is written in Python, a high-level interpreted programming language. That means that you need to install Python before you can run uliGo. Any version better than 1.5.2 should do; I tested the program with Python 1.5.2, 2.0 and 2.1. If you have to install Python, you should get the current version 2.1.

--- Installing python

If you do not have python installed yet, here is what you have to do: You can get everything you need, including further explanation, under http://www.python.org/

If you are using Windows, just download the installer and run it; that should be very easy.

If you are running Linux, it is likely that Python is already included in your distribution. It is also easy to build it yourself with the source from the Python website. But be sure to install the Tkinter module which is needed for the GUI, too; look at the in the README file for instructions how to do that.

Python is also available for the Apple Macintosh (and numerous other platforms, actually), but unfortunately I cannot give you any further information about the installation here. You should find everything you need on the website mentioned above, though.

--- Installing uliGo

Once you have Python working, just download and unpack the uliGo file (uligo02.tar.gz or uligo02.zip). It will create a subdirectory called uligo01 in the directory where you unzip it, and all files needed for uliGo will be placed in that subdirectory. Then just start uligo.py (or uligo.pyw on Windows): On a Linux box, just change into the corresponding directory, and type 'python uligo.py'. (You can also make 'uligo.py' executable, possibly adapt the path in its first line to point to your Python installation, and run it as 'uligo.py'.) Under Windows, double-clicking on 'uligo.pyw' should be enough. You also can run it from a MS-DOS prompt, by 'c:\python20\pythonw uligo.pyw' (of course you might have to adjust the path of you Python installation).

The uliGo subdirectory should contain the following files:

uligo.py, board.py, clock.py, unixinst.py
uligo.doc, gpl.txt, install.txt, readme.txt
sgf/ easy.sgf, hard.sgf
gifs/ logo.gif, board.gif, solved1.gif, solved2.gif, wrong.gif, empty.gif
Sgflib/ sgflib.py, typelib.py, README.txt, lgpl.txt, __init__.py

After the installation, just start uliGo, load a problem database (File-Open), and press 'Next Problem'! Most things should be self-explanatory. More information can be found in the file uligo.doc; or look at the Help menu ('Documentation').

--- Upgrade from uliGo 0.1

Basically, you should just install uliGo 0.2 from scratch, and delete the old version. In particular, you should not use the files uligo.def and uligo.opt from version 0.1 with version 0.2 (these files contain the default problem collection and the saved options, respectively).

You can use the .dat files from uliGo 0.1, though (these files contain the information about right/wrong answers etc.; for each SGF file that you used with uliGo there is a corresponding .dat file). Just copy the .dat files from the sgf subdirectory of uligo01 to the sgf subdirectory of uligo02. (In case you installed uliGo system-wide under Unix, it is slightly more complicated; please see below.)

--- Systemwide installation under Unix/Linux

To install uligGo system-wide (in /usr/local/share, for instance), proceed as follows:

Put the uliGo files in /usr/local/share/uligo02 (if you put them somewhere else, you have to adapt the unixinst.py script accordingly).

Carefully read, and -if necessary- edit the script unixinst.py . (I think that you probably will not want to change much.) Basically, the unixinst.py script writes a 'global' uligo.def file (in the uligo02 directory) which tells uligo to look for individual .def files (in $HOME/.uligo ) when it is started. So for every user who uses uligo, a subdirectory called .uligo will be created in the user's home directory. In this directory, the individual .def file (which stores the path and name of the SGF file used last), the .opt file (which stored the saved options), and the .dat files (which store the number of correct/wrong answers for each problem in the corresponding SGF file) are stored. In order to avoid name conflicts between .dat files for .sgf files in different directories, the path is shadowed in the .uligo directory: for a .sgf file in /usr/local/share/uligo/sgf, for example, the corresponding .dat file is in $HOME/.uligo/usr/local/share/uligo/sgf.

Furthermore the unixinst.py script creates a link in /usr/local/bin, pointing to uligo.py.

After you edited the unixinst.py script, execute it with 'python unixinst.py'. The only other thing you might have to do (if your python interpreter is not in /usr/bin), is to change the very first line of the file uligo.py, which must contain the location of the python interpreter, so that uligo can be started by 'uligo.py'.