The programs can be downloaded from this page. Please read the Install section before downloading and installing. Most people will also need to read the installation instructions specific for their operating system - Linux, Windows or Mac OS X. Though it is a particular flavour of Linux we have also provided specific instructions for installation under the Raspberry Pi OS.


The download files have been compressed using the zip program.

Before April 2022 two versions of the programs were available for download: one for Python 3. and the other for Python 2.7. Since then only the Python 3 version is being developed and made available. ie no new programs will be added to the Python2 version but it will still be available for download as

Click on the "Download:" link below to download the latest Python 3 version (m_n is the release number). When unzipped it will create a directory named pzl3_download.

Click on the "Download:" link below to download the final Python 2.7 version. When unzipped it will create a directory named pzl_download.

The installation instructions are the same for both versions.

The files, their sizes and SHA1 hashes are listed below.

Download: (Python 3) 4.0MB de9b684e128446caed7fc397170d4eb88ea60051

Download: (Python 2.7) 3.9MB 4b8382fa526060c23b7a242515330d0287fbbd5c


The programs are available as a single download file. This file contains all the programs and their icons, plus an installer and a launcher. Because the programs are written in the language Python each program will run on Linux, Windows and Mac OS X: there is no need for a different download for each system.

The download is a Zip file and so needs to be unzipped after download. Once unzipped the programs and their icons can be installed by using the pzl_installer program. This will create the necessary directories and copy over the files. For Linux users it will also add the pzl launcher to the desktop and to the Games menu. There is an essential requirement for running the programs: the Python interpreter and the Tk library need to be installed on your machine. This additional download and installation only takes a few minutes and is also outlined below.

The jigsaw program is an exception in that it requires additional software: The Python Imaging Library (PIL) in order to run. Although the Python Imaging Library runs on Linux, Mac OS X and Windows, users may need to find out how to install it on their particular system.

The recommended way of launching the programs is to use the pzl_launcher program. Use of the launcher enables any of the programs to be launched from a single button. However, if you are only interested in a single game, please follow the installation instructions and then set up the game of interest using its corresponding icon.


The pzl_launcher program has an option which will delete all the pzl programs, and their associated files: the directory .pzl and all its contents will be deleted.


The pzl_launcher (shown in the adjacent screenshot) consists of a single puzzle button which contains a menu with a list of the installed pzl programs. To launch any program simply select it using this menu. Note that only one program can be run at a time. The launcher can also be used to uninstall all the pzl programs.



A screen dump from pzl_launcher showing the menu in use.


This section describes how to install Tk, how to unzip the download and use the installer which will set up a launcher on the Desktop and in the Games menu.

If your username is "me" and your home directory is "/home/me". After installation the programs will be in directory
and named,,... and icons are in directory
and named sudoku_icon.png, kakuro_icon.png,..., you get the pattern. Notice that because it starts with "." the ".pzl" directory is known as a hidden file and will only be listed if you use the appropriate settings.


On Linux Python will already be installed but please make sure you have Python-Tk on the system. We are currently using Mint and Tk is not installed by default. We therefore install it using the Adept Package Manager from a terminal window:
(eg type "sudo aptitude get python-tk").
Others might use the Synaptic Package Manager (in the System/Administration menu). Other Linux distributions will have identical or very similar methods.

Python Imaging Library

The jigsaw program needs the Python Imaging Library. If jigsaw fails to start it will be because the imaging library is not set up on your machine. It can be installed by typing the following command into a terminal window:
sudo apt-get install python-pil.imagetk

Linux Install

Download the programs into your downloads directory (usually "Downloads"). Open a terminal.

Pzl_installer Message

Pzl_installer Message

A screen dump from a pzl_installer run on Linux and showing the Success message. The user name has been obscured to protect the innocent. The contents of the pzl.desktop files may help those wishing to create launchers for individual games.

For python3 version 32_1 In the terminal window:

cd Downloads
cd pzl3_download

Click OK on the Success message, close the terminal and you are done.

For python2.7 version 28_0. In the terminal window:

cd Downloads
cd pzl_download

Click OK on the Success message, close the terminal and you are done.

Raspberry Pi

The following is for those using the Raspberry Pi OS (formerly known as Raspbian). All of the pzl games work on the standard Raspbian installation except jigsaw which requires an additional Python library.

Install the aditional Python library by opening a terminal window and, for Python2.7 typing:

sudo apt-get install python-imaging-tk

Or for Python3:

sudo apt-get install python3-pil.imagetk

You will be asked for your password, which by default, is "raspberry" (without the quotation marks). The library will be installed.

Now follow the Linux Install instructions.


Please note that though we have no reason to doubt that the programs will run fine on any Windows systems, the programs have only been tested on Microsoft systems up to Windows 7. When Windows 10 was launched and it became a pain to prevent Microsoft installing it we effectively disconnected our dual booted Windows test machine from the internet by disabling its internet adapter and have no plans to reconnect it.

This section describes how to unzip the download, use the installer and set up a shortcut on the desktop. In these instructions your username is "me" and it is assumed that your home folder is "\Users\me". On older Windows systems your home folder might be
"\Documents and Settings\me"
Obviously during the installation you must substitute your own details.

After installation the programs will be in directory
and named sudoku, kakuro,... and icons are in directory
and named sudoku_icon, kakuro_icon,..., you get the pattern; the one exception being that pzl_icon should be used for pzl_launcher.


As stated in the Install section you need to install Python 2.7.x before you can run the programs. So please obtain and install the latest version of Python from

Windows Install

1. Using the link above download the programs into your downloads directory (if using Firefox the default is

2. Using the File Browser navigate to
and double click on the file "pzl_m_n". The file browser should now show "pzl_download".

3. Double click on "pzl_download" and a longer list of files should appear.

4. Click on "Extract all files". This brings up a window entitled "Extract Compressed (Zipped) Folders".

5. Check the box "Show extracted files when complete".

6. Click on the "Extract" button. A new browser window appears containing "pzl_download".

7. Double click on "pzl_download". All the files for the package will appear (but now they have been unzipped).

8. Double click on "pzl_installer". A window containing notification that the files have been installed will appear.

9. Click on its "OK" button and installation is complete.

Windows launcher

It is convenient to have a desktop shortcut for launching the programs. The following steps will create a shortcut for the pzl_launcher. After installation the files are in folder "\Users\me\.pzl".

1. Navigate to "\Users\me\.pzl\PROGRAMS".

2. Right click on pzl_launcher and select "Create shortcut" and it will be created.

3. Drag the shortcut to the desktop.

4. Right click on the shortcut and select "Properties".

5. Under the "Shortcut" tab select "Change Icon...". This brings up the "Change Icon" window.

6. Select "Browse". A new "Change Icon" window appears. Use it to select the icon named "pzl_icon". This window now disappears leaving the original "Change Icon" window but which should now contain the selected icon.

7. Click "OK" and you are back to the "pzl_launcher - Shortcut Properties" window.

8. Click "Apply", then "OK", and you are done.

Double clicking on "pzl_launcher - Shortcut" should now bring up the pzl_launcher window. Click on its puzzle icon to reveal its menu of installed pzl games. Select a game.

Mac OS X

We don't have access to a Mac but in April 2011 through user Barrie Stott we discovered that all the programs work well on Mac OS X. First, he found that the versions of Python and Tk which come pre-installed make a horrible mess of the programs. But being more intrepid than the average user he installed more up to date versions using MacPorts, and then the programs worked well.

The steps involved are as follows:

1. Install MacPorts.

Quoting from this page: "The easiest way to install MacPorts on a Mac OS X system is by downloading the dmg for Snow Leopard, Leopard or Tiger and running the system's Installer by double-clicking on the pkg contained therein, following the on-screen instructions until completion." Once this is installed it is straightforward to install any package from Macports. Python and Tk(inter) each require only a single line to be typed.

2. Install py26-tkinter using

sudo port install py26-tkinter

3. Install python 2.6.6 using

sudo port install python26

4. run from a terminal using

/opt/local/bin/python2.6 &

No doubt there are simple ways of setting up point and click launching on Mac OS X just as we've described for Windows and Linux. If someone lets us know we'll add the information here.