This package maintains indices for photo collections. The index is stored as a YAML file and contains metadata and tags describing the photos. The photos are accessed read only.
The package provides a command line tool to create and manipulate the index and a graphical image viewer.
Python:
- Python 3.6 or newer.
Required library packages:
- setuptools
- packaging
- PyYAML
- ExifRead >= 2.2.0
- PySide2
Optional library packages:
vignette >= 4.3.0
Needed to cache thumbnail images for the overview window. If vignette is not available, everything will still work, but displaying the overview window may be significantly slower.
vignette needs at least one thumbnail backend, for instance Pillow >= 6.0 or PyQt5, see the vignette documentation for details. If no suitable backend is found, vignette will be disabled in photoidx.
-
The version number is managed using this package. All source distributions add a static text file with the version number and fall back using that if setuptools_scm is not available. So this package is only needed to build out of the plain development source tree as cloned from GitHub.
pytest >= 3.0.0
Only needed to run the test suite.
-
Only needed to run the test suite. (Actually, you can run the test suite even without it, but dependencies between tests will be ignored then.)
-
Only needed to run the test suite.
Note that the GUI of photoidx requires PySide2, but the installation of PySide2 using pip seem to be thoroughly broken. That is why that dependency is deliberately omitted in the setup script of photoidx. You need to install PySide2 independently before installing photoidx. It is advisable to install PySide2 using the package manager of your operating system rather than from PyPI.
Furthermore, you may want to install vignette along with a thumbnail backend to enable cached thumbnails in the overview window. This also needs to be installed independently.
Release packages of photoidx are published in the Python Package Index (PyPI).
You can install photoidx from PyPI using pip:
$ pip install photoidx
Steps to manually build from the source distribution:
Download the sources, unpack, and change into the source directory.
Build:
$ python setup.py build
Test (optional):
$ python setup.py test
Install:
$ python setup.py install
The last step might require admin privileges in order to write into the site-packages directory of your Python installation.
Note that this still requires a release version of the source distribution. The development sources that you may clone from the source repository on GitHub is missing some files that are dynamically created during the release.
Copyright 2015–2023 Rolf Krahl
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this package except in compliance with the License.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.