Installation#

This page includes instructions for installation on various platforms as well as a manual fallback option:

Arch Linux#

The latest stable release and the git development version is available in the AUR.

Fedora#

The stable release is available in the Fedora repositories. It can be installed using the standard GUI software installers (Gnome Software/Discover/Dnfdragora) and also using dnf:

$ sudo dnf install vimiv-qt

Using pip#

You can retrieve the latest stable release using:

$ pip install --user vimiv

and the latest development version with:

$ pip install --user git+https://github.com/karlch/vimiv-qt/

Note

This will not install a version of Qt or PyQt. Please install a valid combination as described in dependencies, e.g., using:

$ pip install --user PyQt6

Warning

This does not install data files such as the icons or the vimiv.desktop file globally. Thus, e.g., file managers may not find the vimiv program as expected. To get an idea on how to install these, you can take a look at the Makefile located in misc/Makefile and read the section on system-wide installation.

Manual Install#

First of all get the code by cloning the git repository and switch into the repository folder:

$ git clone https://github.com/karlch/vimiv-qt/
$ cd vimiv-qt

or by downloading one of the snapshots on the releases page.

Note

To compile the C extension, the python header files for python module development are required. In some distributions, e.g. Ubuntu, these are not included in the default python installation but another package (python-dev for Ubuntu) must be installed.

System-Wide Installation#

Vimiv provides an example Makefile in the misc directory for convenience. To install copy the Makefile into the repository directory, cp misc/Makefile ., tweak it to your liking and run (as root if installing system-wide):

$ make install

The list of available options can be displayed with:

$ make options

These options are defined at the top of the Makefile and can be changed to fit your needs. To uninstall vimiv the standard:

$ make uninstall

should work.

Note

You need to have the dependencies installed system-wide for this to work.

Note

You may need to run gtk-update-icon-cache /usr/share/icons/hicolor (replace the path if installing the icons somewhere else) after the install to get the vimiv icon in your application launcher. It has been reported that the command was needed for wofi.

Using Tox#

In the repostory folder run tox to set up the virtual environment:

$ tox -e mkvenv

This installs all needed Python dependencies and vimiv in a .venv subfolder. You can now launch vimiv by running:

$ .venv/bin/vimiv

You can create a wrapper script to start vimiv somewhere in your $PATH, e.g. /usr/bin/vimiv or ~/bin/vimiv:

#!/bin/sh
~/path/to/vimiv/.venv/bin/vimiv

Warning

This does not install data files such as the icons or the vimiv.desktop file globally. Thus, e.g., file managers may not find the vimiv program as expected. To get an idea on how to install these, you can take a look at the Makefile located in misc/Makefile and read the section on system-wide installation.

Running directly in the repository#

In the repository folder build the c-extension for manipulate mode:

$ python setup.py build_ext --inplace

You can now launch vimiv by running:

$ python -m vimiv

Note

You need to have the dependencies installed system-wide for this to work.

Warning

This does not install data files such as the icons or the vimiv.desktop file globally. Thus, e.g., file managers may not find the vimiv program as expected. To get an idea on how to install these, you can take a look at the Makefile located in misc/Makefile and read the section on system-wide installation.

Dependencies#

  • Python 3.8 or newer with development extension

  • Qt either 6.2.0 or newer, or 5.15.0 or newer

    • QtCore / qtbase

    • QtSvg (optional for svg support)

  • PyQt either 6.2.0 or newer, (Qt 6) or 5.15.0 or newer (Qt 5)

  • setuptools (for installation)

  • pyexiv2 (optional for metadata support)

  • piexif (optional alternative for metadata support)