Installing DisplayCal via pip on Ubuntu 22.04 based distros (KDE Neon).

Baulking at the amount of huge updates flatpak applications bring (3.3gb last night of libraries, for 2 installed flatpaks, displaycal and luminance hdr), I’m looking to see about getting Displaycal installed natively.

From what I understand, Displaycal has now been ported to Python 3, and should be installable using pip https://pypi.org/project/DisplayCAL/3.9.10/

pip install DisplayCAL==3.9.10

However it fails to do so on my machine!

brian@Giger:~$ pip install DisplayCAL
Defaulting to user installation because normal site-packages is not writeable
Collecting DisplayCAL
Using cached DisplayCAL-3.9.10.tar.gz (10.7 MB)
Installing build dependencies … done
Getting requirements to build wheel … done
Installing backend dependencies … done
Preparing metadata (pyproject.toml) … done
Collecting certifi
Using cached certifi-2022.12.7-py3-none-any.whl (155 kB)
Collecting numpy
Using cached numpy-1.24.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.3 MB)
Requirement already satisfied: Pillow in ./.local/lib/python3.10/site-packages (from DisplayCAL) (9.4.0)
Collecting build
Using cached build-0.10.0-py3-none-any.whl (17 kB)
Collecting zeroconf
Using cached zeroconf-0.47.3-cp310-cp310-manylinux_2_31_x86_64.whl (2.4 MB)
Collecting Send2Trash
Using cached Send2Trash-1.8.0-py3-none-any.whl (18 kB)
Requirement already satisfied: distro in ./.local/lib/python3.10/site-packages (from DisplayCAL) (1.8.0)
Collecting wxPython
Using cached wxPython-4.2.0.tar.gz (71.0 MB)
Preparing metadata (setup.py) … error
error: subprocess-exited-with-error

× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [12 lines of output]
Traceback (most recent call last):
File “”, line 2, in
File “”, line 34, in
File “/tmp/pip-install-_4bhemp2/wxpython_714a25dfdd4f4f7fa2945a4432f0e490/setup.py”, line 27, in
from buildtools.config import Config, msg, opj, runcmd, canGetSOName, getSOName
File “/tmp/pip-install-_4bhemp2/wxpython_714a25dfdd4f4f7fa2945a4432f0e490/buildtools/config.py”, line 30, in
from attrdict import AttrDict
File “/home/brian/.local/lib/python3.10/site-packages/attrdict/init.py”, line 5, in
from attrdict.mapping import AttrMap
File “/home/brian/.local/lib/python3.10/site-packages/attrdict/mapping.py”, line 4, in
from collections import Mapping
ImportError: cannot import name ‘Mapping’ from ‘collections’ (/usr/lib/python3.10/collections/init.py)
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
brian@Giger:~$

Any suggestions? I’ve had a look on the pixls.us forum, but not really found any information about getting Displaycal Python 3 verson installed natively

Morning, @Brian_Innes,

So, are you determined to use 3.9.10, or …?
I have DisplayCAL running on KDE Neon — but version 3.8.9.3.

Have fun!
Claes in Lund, Sweden

Try “collections.abc”.

I struggled to install DisplayCAL last week. I experienced so many problems and finally succeeded. I would like to help you but am not sure I can remember the solutions.

1 Like

A bit of scouring around, and I have found this website (in French!) which details installing Displaycal Python 3 version.

https://ignace72.eu/displaycal-en-python-3.html

Time to dust off my high school French from 1994! :wink:

I suspect I’ve perhaps got some development libraries for python missing or something.

As an update, I managed to get it installed on Kubuntu 22.04 by installing the dependencies mentioned on that website listed above

sudo apt-get install python3-pip python3-venv libgtk-3-dev libxxf86vm-dev libglib2.0-dev wxpython-tools git

And then installing darktable via pip.

pip install DisplayCAL==3.9.8

Log back out, and log back in, and DIsplayCal now launches.

Interestingly however, it looks like there is a Displaycal-py3 package available in *buntu 22.10 / 23.04 releases.

https://repology.org/project/displaycal-py3/versions