There are three ways to install Photini. On Windows you can use an all-in-one installer. On some Linux distributions you might be able to use your package manager. On other platforms you need to install several dependencies before installing Photini.

All-in-one installer (Windows)

The Windows installer creates a standalone Python installation with all the dependencies needed to run Photini. The standalone Python interpreter is only used to run Photini, and should not conflict with any other Python version installed on your computer.

You can download the latest Windows installer from the GitHub releases page. Don’t worry if there are newer releases of Photini itself - the installer will download and install the latest release of Photini when it is run. The installer is suitable for 32 bit and 64 bit Windows, and should work on any version since Windows XP.

The installer should finish by running the Photini program. If this works then you have successfully installed Photini and can ignore the rest of these instructions.

Upgrading all-in-one installation

The Windows installer adds an “upgrade Photini” command to the start menu. This needs to be run as administrator. Click on the “Start” icon, then select “All Programs”, then “Photini”, then right-click on “upgrade Photini” and choose “Run as administrator” from the context menu.

Alternatively, you can use the “Programs and Features” control panel item to uninstall Photini before running the installer again to install the latest version.

Verifying the Windows installer

The Windows installer is digitally signed using a “self-signed Certificate Authority”. If you add my certificate to your computer you will get fewer security warnings when you install Photini. You can download the certificate file jim_easterbrook_CA.cer from the GitHub releases page and install it by running cmd.exe and issuing the following command:

certutil -user -addstore Root jim_easterbrook_CA.cer

If you want to check the validity of the certificate file, you can do so using GnuPG. The file jim_easterbrook_CA.cer.asc contains a digital signature that can be checked with my public keys 959AF9B6 or 4748AD59.

If the above means nothing to you, don’t worry about it. The security warnings when you install Photini can safely be ignored.

Package manager (some Linux distributions)


These Linux packages are maintained by other people and may not install the latest version of Photini. You may also need to install missing dependencies, as described below.

Ubuntu and derived systems

Dariusz Duma ( has added Photini to his PPA (personal package archive). See the instructions at

OpenSUSE and Fedora

Togan Muftuoglu ( has created a python-photini package. See for more information.

Piecemeal installation

Photini is not as simple to install as I would like, mainly because of the libraries required to access photographs’ metadata. The installation process is different for Windows, Linux and MacOS, and there are variations with different versions of those operating systems. If you run into problems, please let me know (email and once we’ve worked out what needs to be done I’ll be able to improve these instructions.

Essential dependencies

These are all required for Photini to be usable.


Photini should work with all versions of Python from 2.6 onwards.

Python may already be installed on your computer. To find out, open a terminal window (Windows users run cmd.exe) and try running python by typing this command:

python -V

If Python is installed this should show you the version number.

Linux users should use their system’s package manager to install Python. Windows and MacOS users can download an installer from Windows users should install the 32 bit version of Python, even on a 64 bit machine. This is because some of the required libraries are not available in 64 bit builds.


The PyQt application framework provides the graphical user interface elements used by Photini. Version 4 or 5 is required.

You can check if PyQt is already installed with one of these commands:

python -c "import PyQt5"


python -c "import PyQt4"

If PyQt is installed then one of these will run without generating any error message.

Linux users should use their package manager to install python-qt4 or python-qt5. Windows users can download a binary installer from (make sure you choose the installer for your version of Python).


six is a small module that makes it easier to write Python code that works with versions 2 & 3. The best way to install it is with pip. Linux users should use their package manager to install python-pip. Windows and MacOS users can use the installer from All users should then upgrade pip.

Once pip is installed, installing six is easy:

sudo pip install six

Note that sudo is not required on Windows, or if you have root privileges. In this case you just run pip install six.


appdirs is a small Python module that makes cross-platform programming easier. It is also easily installed with pip:

sudo pip install appdirs

gexiv2 (preferred)

The latest Python bindings to Exiv2 use the “introspection bindings” to gexiv2, which is a GObject wrapper around Exiv2.

Linux users should use their package manager to install these bindings, but note that the package name is not obvious. The core gexiv2 wrapper is probably called libgexiv2 or similar, but on my OpenSUSE system the introspection bindings are called typelib-1_0-GExiv2-0_4 whereas on Ubuntu systems they are called gir1.2-gexiv2-0.4.

Windows users should download and run the latest “pygi-aio” (PyGI all-in-one) installer from You should install the “Base packages” and “GExiv2” libraries, but nothing else is needed.

Linux users have a choice of library to provide Python bindings to gexiv2. PyGObject can be used, but pgi may be more reliable. Linux users can use their package manager to install python-gobject or pip can be used to install pgi:

sudo pip install pgi

pyexiv2 (if gexiv2 cannot be installed)

pyexiv2 is an older Python binding to Exiv2. If you are unable to install gexiv2 then it can be used instead. Windows users can download a binary installer from (once again, make sure you choose the installer for your version of Python). Linux users can use their package manager to install python-pyexiv2.

Optional dependencies

Some of Photini’s features are optional - if you don’t install these libraries Photini will work but the relevant feature will not be available.


Photini’s Flickr uploader requires python-flickrapi. This is easily installed with pip:

sudo pip install flickrapi

requests and requests-oauthlib

The Google Picasa uploader requires requests and requests-oauthlib. These are also installed with pip:

sudo pip install requests requests-oauthlib


The Flickr and Picasa uploaders both use python-keyring to store your authorisation credentials. This is easily installed with pip:

sudo pip install keyring


Photini can import pictures from many types of digital camera using libgphoto2. This is often already installed on Linux systems, but you still need its python-gphoto2 Python bindings, version 0.10 or greater:

sudo pip install gphoto2

Installation of python-gphoto2 will require the “development headers” versions of Python and libgphoto2. You should be able to install these with your system package manager.

Installing Photini

The easiest way to install the latest release of Photini is with the pip command:

sudo pip install photini

You can also use pip to install the optional dependencies when you install Photini:

sudo pip install photini[flickr,picasa,importer]

If you prefer to install the development version you can use git to clone the GitHub repository or download it as a zip file and then unpack it. Either way, you then need to build and install Photini:

python build
sudo python install

Running Photini

If the installation has been successful you should be able to run Photini from the “Start” menu (Windows) or application launcher (Linux). If that fails, you may get more helpful error messages by opening a command window and running the Photini editor module directly:

python -m photini.editor

Documentación de Photini

If you would like to have a local copy of the Photini documentation, and have downloaded or cloned the source files, you can install Sphinx and use to “compile” the documentation:

sudo pip install sphinx
python build_sphinx

Open doc/html/index.html with a web browser to read the local documentation.