FS#42307 - [python-matplotlib] should depend on libxkbcommon-x11

Attached to Project: Community Packages
Opened by Phil Ruffwind (Rufflewind) - Wednesday, 08 October 2014, 21:47 GMT
Last edited by Felix Yan (felixonmars) - Sunday, 12 October 2014, 04:09 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Felix Yan (felixonmars)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

I think python-matplotlib should depend on libxkbcommon-x11. Trying to do
plot anything will cause the interpreter to crash with a Qt error.

Additional info:

* package version: 1.4.0-2

Steps to reproduce:

1. Install python-matplotlib without libxkbcommon-x11.
2. Run the following program in python:

import matplotlib.pyplot
matplotlib.pyplot.plot([1], [1])

3. Python will immediately crash saying xcb is not found:

This application failed to start because it could not find or load the
Qt platform plugin "xcb".

Available platform plugins are: eglfs, kms, linuxfb, minimal,
minimalegl, offscreen, xcb.

Reinstalling the application may fix this problem.

4. Install libxkbcommon-x11. Now the program above will work.
This task depends upon

Closed by  Felix Yan (felixonmars)
Sunday, 12 October 2014, 04:09 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in 1.4.0-3. Thanks!
Comment by Felix Yan (felixonmars) - Thursday, 09 October 2014, 04:18 GMT
It's the default backend "Qt5Agg" that brought in the (optional) dependency. So if you are plotting to a pdf using matplotlib.use("pdf"), no error would happen. And libxkbcommon-x11 has already been an optional dependency of qt5-base.

Given that it's the default backend, I could add libxkbcommon-x11 to the depends before we have a better way to deal with headless installations.

Loading...