Guillaume Le Vaillant skribis: > Guillaume Le Vaillant skribis: > >> In version 5.12.6 of the 'qtdeclarative' package, the >> 'lib/qt5/qml/QtQuick/XmlListModel' directory is missing (qtdeclarative >> 5.11.3 had it). >> >> It causes run time issues; for example the 'monero-gui' >> package builds fine but it fails to run: >> >> --8<---------------cut here---------------start------------->8--- >> 2019-12-31 12:50:42.076 W app startd (log: /home/guillaume/.bitmonero/monero-wallet-gui.log) >> 2019-12-31 12:50:42.077 W Qt:5.12.6 GUI:- | screen: 1920x1080 - dpi: 96.1263 - ratio:0.997092 >> 2019-12-31 12:50:42.179 W QQmlApplicationEngine failed to load component >> 2019-12-31 12:50:42.179 W qrc:/main.qml:1693 Type WizardLang unavailable >> 2019-12-31 12:50:42.179 W qrc:/wizard/WizardLang.qml:32 module "QtQuick.XmlListModel" is not installed >> 2019-12-31 12:50:42.179 E Error: no root objects >> --8<---------------cut here---------------end--------------->8--- > > I was able to build the QML for 'XmlListModel' by making 'qtdeclarative' > a dependency of 'qtxmlpatterns' instead of the opposite (and the QML is in > the 'qtxmlpatterns' package). > > Rebuilding the required Qt packages and 'monero-gui' and running it > worked fine. However I'm not too familiar with the Qt packages, so does > someone think this approach could cause problems in some of them? > > > Here's the patch I used: > > --8<---------------cut here---------------start------------->8--- > From 2f0befe2e183d65a731e616b7b55808d27d8af8e Mon Sep 17 00:00:00 2001 > From: Guillaume Le Vaillant > Date: Sun, 5 Jan 2020 19:27:17 +0100 > Subject: [PATCH] gnu: qtxmlpatterns: Build QML plugin for XmlListModel. > > * gnu/packages/qt.scm (qtdeclarative)[native-inputs]: Remove qtxmlpatterns. > (qtxmlpatterns)[native-inputs]: Add qtdeclarative. > --- > gnu/packages/qt.scm | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm > index 795b5e9d2b..daa35c77cb 100644 > --- a/gnu/packages/qt.scm > +++ b/gnu/packages/qt.scm > @@ -723,6 +723,7 @@ from within Qt 5."))) > "1l44476ibb8rv4rf80vbjdc3712lmrl1xcxswa513ip66k47p5vn")))) > (arguments > (substitute-keyword-arguments (package-arguments qtsvg) > + ((#:tests? _ #f) #f) ; TODO: Enable the tests > ((#:phases phases) > `(modify-phases ,phases > (add-after 'unpack 'disable-network-tests > @@ -730,7 +731,8 @@ from within Qt 5."))) > (("qxmlquery") "# qxmlquery") > (("xmlpatterns ") "# xmlpatterns")) > #t)))))) > - (native-inputs `(("perl" ,perl))) > + (native-inputs `(("perl" ,perl) > + ("qtdeclarative" ,qtdeclarative))) > (inputs `(("qtbase" ,qtbase))) > (synopsis "Qt XML patterns module") > (description "The QtXmlPatterns module is a XQuery and XPath engine for > @@ -758,8 +760,7 @@ xmlpatternsvalidator."))) > ("pkg-config" ,pkg-config) > ("python" ,python) > ("python-wrapper" ,python-wrapper) > - ("qtsvg" ,qtsvg) > - ("qtxmlpatterns" ,qtxmlpatterns))) > + ("qtsvg" ,qtsvg))) > (inputs > `(("mesa" ,mesa) > ("qtbase" ,qtbase))) I built some other packages depending on 'qtdeclarative' and/or 'qtxmlpatterns' and I haven't seen any failure, so I pushed the patch as 3e10b2418dc0952c16053ccced4baba405facb6b.