FS#74792 - [inkscape] extensions do not work - missing python-cssselect dep

Attached to Project: Arch Linux
Opened by Oliver (xxarch) - Thursday, 19 May 2022, 06:28 GMT
Last edited by Christian Hesse (eworm) - Tuesday, 30 August 2022, 19:54 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Christian Hesse (eworm)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 10
Private No

Details

Description:

Inkscape extensions do not work due to a missing python module. Please add the dependency of python-cssselect for inkscape 1.2.

Additional info:
* inkscape 1.2-2

Steps to reproduce:
Open inkscape and execute any extension modules.
This task depends upon

Closed by  Christian Hesse (eworm)
Tuesday, 30 August 2022, 19:54 GMT
Reason for closing:  Fixed
Additional comments about closing:  inkscape 1.2.1-3
Comment by Christian Hesse (eworm) - Thursday, 19 May 2022, 09:13 GMT
Technically this is correct... The inkscape package has an optional dependency on python-lxml, that has on optional dependency on python-cssselect.
Comment by Oliver (xxarch) - Thursday, 19 May 2022, 16:13 GMT
Okay, you're right: Strictly spoken, inkscape can work without python-cssselect. However, almost every extension requires python-cssselect (at least every extension I tried). Because this affects not only some exotic third-party-extensions but also the majority of the default-extensions, I would suggest to mark python-cssselect as a required dependency. Otherwise, many users will come to the conclusion that the package inkscape 1.2 is broken on Arch, because it is not obvious to track down two levels of optional dependencies.
Comment by Martin Owens (doctormo) - Friday, 20 May 2022, 03:00 GMT
Extensions shipped with Inkscape have a set of python requirements which should be considered non-optional:

https://gitlab.com/inkscape/extensions/-/jobs/2481704849/artifacts/browse/public/

Without these you will loose jpeg/tiff/webp export, most python extensions which look at svg styles, and most other shipped extensions that aren't super basic.

There are a few other modules which are used by second order functions, such as python-requests, python-appdirs, python-cachecontrol[filecache], gtk-gir, which are used by the extension manager and clipart importer functions.
Comment by Jan Winkler (jcwinkler) - Wednesday, 08 June 2022, 08:28 GMT
As an Inkscape extension author I highly recommend to provide the dependencies mentioned by @doctormo in the package. Or at least provide an Inkscape extension subsystem package containing the required dependencies.

For Inkscape users, especially in science, extensions are a crucial part of the application. They should run out of the box as they do on all other os's.
Comment by Nikos Platis (nplatis) - Sunday, 12 June 2022, 15:13 GMT
I would expect all functionality of the package shipped with Arch to work out of the box. So, please consider having python extensions needed for this marked as required dependencies.

The situation with python-cssselect is especially problematic since nobody could imagine that they would need to install an optional dependency of an optional dependency in order to have basic functionality work.

At the very least, you could mention python-cssselect as a (direct) optional dependency.
Comment by miKaぴょん (mikapyon) - Friday, 17 June 2022, 18:11 GMT
Required dependency should not be necessary IMHO, I used Inkscape extensively for quite some time without even noticing.
Having it listed as optional dependency would be very helpful though. The only way to find out what is happening is by reading the python stack trace.
Ideally Inkscape would provide a pretty information message instead of just dumping python errors into a text field.

Edit:
Wait so with this "fix" we are now forced to install the 34 MB python-numpy package?
Comment by Matthias Mailänder (Mailaender) - Saturday, 23 July 2022, 21:50 GMT
  • Field changed: Percent Complete (100% → 0%)
This is still an issue with 1.2.1-1
Comment by Toolybird (Toolybird) - Saturday, 23 July 2022, 21:55 GMT
Dupe  FS#74985   FS#75436 

FWIW, Both Fedora [1] and Debian [2] have tweaked their python-cssselect deps recently. An optdep might be warranted.

[1] https://src.fedoraproject.org/rpms/inkscape/c/39c6c1b8
[2] https://salsa.debian.org/multimedia-team/inkscape/-/commit/890aed02
Comment by Manuel Barrio Linares (kIERO) - Tuesday, 30 August 2022, 19:30 GMT
1. Open inkscape
2. Click on Extensions
3. Click on "Manage Extensions..."

Boom.
*python-cssselect* needs to be added as dependency of *inkscape*

Loading...