View Single Post
Old 07-26-2022, 01:10 PM   #5
DiapDealer
Grand Sorcerer
DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.DiapDealer ought to be getting tired of karma fortunes by now.
 
DiapDealer's Avatar
 
Posts: 28,614
Karma: 204624552
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
It becomes more and more difficult to determine (let alone specify) which pieces of PyQt5 are necessary for a plugin's success. Especially when more and more distros have chosen to break Qt's python bindings down into component pieces much like the Qt modules themselves.

When we bundle python with our Sigil Windows and MacOS packages, the python binding pieces we include for use with plugins are:

Code:
PYQT_MODULES = ['%s.pyd' % x for x in (
    'Qt', 'QtCore', 'QtGui', 'QtNetwork', 'QtPrintSupport', 
    'QtWebEngine', 'QtWebEngineCore', 'QtWebEngineWidgets',
    'QtWebChannel', 'QtSvg', 'QtWidgets'
    )]
So users of Linux should probably make sure the corresponding pyqt packages for their distros are present if they make use of Sigil plugins. I'll try to make sure these are mentioned in Sigil's documentation somewhere. The Qt5Svg module is definitely a runtime dependency of Sigil on Linux, but package maintainers consider Sigil plugins to be optional. So they don't include any of the PyQt bindings that come with Sigil Win/Mac by default as dependencies. It sucks. But it is what it is.

When we release an official Sigil based on Qt6 (users can already build this for themselves), the PySide6 packages needed to be fully ready for all Sigil plugins will be:

Code:
PYSIDE6_MODULES = [
    'QtCore', 'QtGui', 'QtNetwork', 'QtOpenGlWidgets','QtPrintSupport',
    'QtUiTools','QtWebEngine', 'QtWebEngineCore', 'QtWebEngineWidgets',
    'QtWebChannel', 'QtSvg', 'QtWidgets', 'Shiboken'
    ]

Last edited by DiapDealer; 07-26-2022 at 01:12 PM.
DiapDealer is online now   Reply With Quote