Page MenuHomeSolus

puddletag breaks when python-sip configured with --sip-module PyQt5.sip
Closed, ResolvedPublic

Description

puddletag fails to start with error:

File "/usr/bin/puddletag", line 317, in <module>
from PyQt4.QtGui import QApplication, QPixmap, QSplashScreen, QIcon
ImportError: No module named sip

The configuration option '--sip-module PyQt5.sip' in python-sip seems to be the problem. Removing the option allows puddletag to start.

Revisions and Commits

Event Timeline

I believe this is fixed now. Anyone else still having issues?

Puddletag still fails to start on both of my machines without having modified the python-sip configuration.

I'm also having issues with this. Installed puddletag today and I get:

Traceback (most recent call last):
  File "/usr/bin/puddletag", line 317, in <module>
    from PyQt4.QtGui import QApplication, QPixmap, QSplashScreen, QIcon
ImportError: No module named sip

There's a suggested fix, and repackaged version here https://www.reddit.com/r/SolusProject/comments/aw7nh9/puddletag_fails_to_open_with_importerror_no/ which I have yet to try out, which may be of interest.

JoshStrobl triaged this task as Normal priority.
JoshStrobl added subscribers: kyrios123, JoshStrobl.

I will be removing bitmessage and puddletag from the unstable repository tomorrow, and from stable on Friday. puddletag hasn't seen a release since 2016 and does not appear to be actively moving to Qt5 or Python3, despite their dedicated branch for it (which sees sporadic activity). BitMessage also does not have regular releases and isn't making headway towards Python3 support.

Realistically, Qt4 and Python 2 support is going the way of the dodo. Like many other operating systems, we've had a concerted effort to deprecate python 2 (we've been doing it for a couple years now, I'm sure @kyrios123 can attest to all the cleanup he's done). Very few of Solus' own applications will even be written in python by the end of the year, let alone by next year's Python 2 EOL.

I will be working to merge our python sip packages and dropping the qt4 support.

Should puddletag see a stable release for Qt5 and Python 3, I am open to allowing it back into the repo.

JoshStrobl changed the task status from Open to In Progress.Apr 18 2019, 7:55 AM

Action Plan:

  • As mentioned previously, I'll be merging in our python2 and python3 sip packages. Both of these will target Qt5. This is being done to ease maintenance and make it easier in the future to nuke python2 support. Unfortunately, at this moment in time, python-sip package itself is required for python-qt5. All applications which are still in using python-qt5 by the end of the year will be deprecated. Some of those applications, such as git-cola, do actually support python3, so effort should be put in to move them entirely to python3. I'm going to be creating a countdown to its deprecation once I get this task sorted.
  • python-qt4 and python3-qt4 will be deprecated. As a result, bitmessage and puddletag will also be deprecated.
JoshStrobl added a subscriber: DataDrake.

The above items have been deprecated from the unstable repository. I will be creating a countdown for python2 as a whole once I've sat down with @DataDrake and determined a date for it. I prefer for it to not be the 11th hour of December 31th, and no later than it.

Re-opening. Further action necessary to resolve various Qt5 apps can be addressed here. (@kyrios123)

It seems that a simple rebuild of python-qscintilla solved the issue at least for qgis (don't have time to make more tests today)

@kyrios123 If you want to push the rebuild directly to the build server I can get it cherry-picked onto stable.