[PATCH 0/2] gnu: Add monero.

  • Done
  • quality assurance status badge
Details
3 participants
  • Efraim Flashner
  • Ludovic Courtès
  • Theodoros Foradis
Owner
unassigned
Submitted by
Theodoros Foradis
Severity
normal
T
T
Theodoros Foradis wrote on 9 Sep 2017 18:35
(address . guix-patches@gnu.org)
87o9qjesvl.fsf@foradis.org
Hello Guix,

this patch set adds clients (cli and gui) for Monero, a private digital
currency.

As I mention in comments in source, monero package bundles easylogging++
and lmdb. The bundled easylogging++ is modified, and the changes will
not be upstreamed. The devs deem the lmdb driver too critical a consenus
component, to use the system's dynamically linked library (plus there's
not even the option in the build system to use it).

The other bundled dependencies we delete and not use.

As far as monero-core is concerned (the gui), I did not manage to get it
to build with the modular qt. Should this be added in the source as a
TODO item?

Theodoros Foradis(2):
gnu: Add monero-core.
gnu: Add monero.

gnu/packages/finance.scm | 183 ++++++++++++++++++++++++
1 file changed, 183 insertions(+)
--
Theodoros Foradis
T
T
Theodoros Foradis wrote on 9 Sep 2017 19:47
[PATCH 2/2] gnu: Add monero-core.
(address . 28401@debbugs.gnu.org)(name . Theodoros Foradis)(address . theodoros@foradis.org)
20170909174735.7562-2-theodoros@foradis.org
* gnu/packages/finance.scm (monero-core): New variable.
---
gnu/packages/finance.scm | 75 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 75 insertions(+)

Toggle diff (85 lines)
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 6f589a76c..938328c3d 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -400,3 +400,78 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
"Monero is a secure, private, untraceable currency. This package provides the
Monero command line client and daemon.")
(license license:bsd-3)))
+
+(define-public monero-core
+ (package
+ (name "monero-core")
+ (version "0.11.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/monero-project/monero-core/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hnrkgwb1sva67pcjym2gvb4zifp2s849dfbnjzbxk3yczpcyqzg"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("doxygen" ,doxygen)
+ ("graphviz" ,graphviz)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("boost" ,boost)
+ ("libunwind" ,libunwind)
+ ("openssl" ,openssl)
+ ("qt" ,qt)
+ ("unbound" ,unbound)))
+ (propagated-inputs
+ `(("monero" ,monero)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'check)
+ (add-before 'build 'fix-makefile-vars
+ (lambda _
+ (substitute* "src/zxcvbn-c/makefile"
+ (("\\?=") "="))
+ #t))
+ (add-after 'fix-makefile-vars 'fix-library-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "monero-wallet-gui.pro"
+ (("-L/usr/local/lib") "")
+ (("-L/usr/local/opt/openssl/lib")
+ (string-append "-L"
+ (assoc-ref inputs "openssl")
+ "/lib"))
+ (("-L/usr/local/opt/boost/lib")
+ (string-append "-L"
+ (assoc-ref inputs "boost")
+ "/lib")))
+ #t))
+ (add-after 'fix-library-paths 'fix-monerod-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/daemon/DaemonManager.cpp"
+ (("QApplication::applicationDirPath\\(\\) \\+ \"/monerod")
+ (string-append "\""(assoc-ref inputs "monero")
+ "/bin/monerod")))
+ #t))
+ (replace 'build
+ (lambda _
+ (zero? (system* "./build.sh"))))
+ (add-after 'build 'fix-install-path
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "build/Makefile"
+ (("/opt/monero-wallet-gui")
+ (assoc-ref outputs "out")))
+ #t))
+ (add-before 'install 'change-dir
+ (lambda _
+ (chdir "build"))))))
+ (home-page "https://getmonero.org/")
+ (synopsis "Monero GUI client")
+ (description
+ "Monero is a secure, private, untraceable currency. This package provides the
+Monero GUI client.")
+ (license license:bsd-3)))
--
2.13.4
T
T
Theodoros Foradis wrote on 9 Sep 2017 19:47
[PATCH 1/2] gnu: Add monero.
(address . 28401@debbugs.gnu.org)(name . Theodoros Foradis)(address . theodoros@foradis.org)
20170909174735.7562-1-theodoros@foradis.org
* gnu/packages/finance.scm (monero): New variable.
---
gnu/packages/finance.scm | 108 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 108 insertions(+)

Toggle diff (144 lines)
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 6d6844fa7..6f589a76c 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
+;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -29,11 +30,16 @@
#:use-module (guix build-system python)
#:use-module (gnu packages base)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages check)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages dns)
#:use-module (gnu packages emacs)
+ #:use-module (gnu packages graphviz)
#:use-module (gnu packages groff)
#:use-module (gnu packages libedit)
#:use-module (gnu packages libevent)
+ #:use-module (gnu packages libunwind)
#:use-module (gnu packages linux)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages pkg-config)
@@ -44,6 +50,8 @@
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
#:use-module (gnu packages upnp)
+ #:use-module (gnu packages web)
+ #:use-module (gnu packages xml)
#:use-module (gnu packages gnuzilla))
(define-public bitcoin-core
@@ -292,3 +300,103 @@ protocol. It supports Simple Payment Verification (SPV) and deterministic key
generation from a seed. Your secret keys are encrypted and are never sent to
other machines/servers. Electrum does not download the Bitcoin blockchain.")
(license license:expat)))
+
+(define-public monero
+ ;; This package bundles easylogging++ and lmdb.
+ ;; The bundled easylogging++ is modified, and the changes will not be upstreamed.
+ ;; The devs deem the lmdb driver too critical a consenus component, to use
+ ;; the system's dynamically linked library.
+ (package
+ (name "monero")
+ (version "0.11.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/monero-project/monero/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete bundled dependencies.
+ (for-each
+ delete-file-recursively
+ '("external/miniupnpc" "external/rapidjson"
+ "external/unbound"))
+ #t))
+ (sha256
+ (base32
+ "083w40a553c0r3i18020jcrv5s0b64vx3d8xrn9nwkb2237ighlk"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("doxygen" ,doxygen)
+ ("googletest" ,googletest)
+ ("graphviz" ,graphviz)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("bind" ,isc-bind)
+ ("boost" ,boost)
+ ("expat" ,expat)
+ ("libunwind" ,libunwind)
+ ("lmdb" ,lmdb)
+ ("miniupnpc" ,miniupnpc)
+ ("openssl" ,openssl)
+ ("rapidjson" ,rapidjson)
+ ("unbound" ,unbound)))
+ (arguments
+ `(#:out-of-source? #t
+ #:configure-flags '("-DBUILD_TESTS=ON"
+ "-DBUILD_GUI_DEPS=ON")
+ #:phases
+ (modify-phases %standard-phases
+ ;; tests/core_tests need a valid HOME
+ (add-before 'configure 'set-home
+ (lambda _
+ (setenv "HOME" (getcwd))
+ #t))
+ (add-after 'set-home 'fix-wallet-path-for-unit-tests
+ (lambda _
+ (substitute* "tests/unit_tests/serialization.cpp"
+ (("\\.\\./\\.\\./\\.\\./\\.\\./") "../../"))
+ #t))
+ (add-after 'fix-wallet-path-for-unit-tests 'change-log-path
+ (lambda _
+ (substitute* "contrib/epee/src/mlog.cpp"
+ (("epee::string_tools::get_current_module_folder\\(\\)")
+ "\".bitmonero\""))
+ (substitute* "contrib/epee/src/mlog.cpp"
+ (("return \\(") "return ((std::string(getenv(\"HOME\"))) / "))
+ #t))
+ (replace 'check
+ (lambda _
+ (zero?
+ (system* "make" "ARGS=-E 'unit_tests|libwallet_api_tests'"
+ "test"))))
+ ;; The excluded unit tests need network access
+ (add-after 'check 'unit-tests
+ (lambda _
+ (let ((excluded-unit-tests
+ (string-join
+ '("AddressFromURL.Success"
+ "AddressFromURL.Failure"
+ "DNSResolver.IPv4Success"
+ "DNSResolver.DNSSECSuccess"
+ "DNSResolver.DNSSECFailure"
+ "DNSResolver.GetTXTRecord")
+ ":")))
+ (zero?
+ (system* "tests/unit_tests/unit_tests"
+ (string-append "--gtest_filter=-"
+ excluded-unit-tests))))))
+ (add-after 'install 'install-blockchain-import-export
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "bin/monero-blockchain-import" bin)
+ (install-file "bin/monero-blockchain-export" bin)))))))
+ (home-page "https://getmonero.org/")
+ (synopsis "Monero command line client")
+ (description
+ "Monero is a secure, private, untraceable currency. This package provides the
+Monero command line client and daemon.")
+ (license license:bsd-3)))
--
2.13.4
L
L
Ludovic Courtès wrote on 11 Sep 2017 10:17
(name . Theodoros Foradis)(address . theodoros@foradis.org)(address . 28401@debbugs.gnu.org)
87377td4y5.fsf@gnu.org
Theodoros Foradis <theodoros@foradis.org> skribis:

Toggle quote (2 lines)
> * gnu/packages/finance.scm (monero): New variable.

I tweaked the synopsis to placate ‘guix lint’ and applied.

Thanks!

Ludo’.
L
L
Ludovic Courtès wrote on 11 Sep 2017 10:21
Re: [bug#28401] [PATCH 2/2] gnu: Add monero-core.
(name . Theodoros Foradis)(address . theodoros@foradis.org)(address . 28401-done@debbugs.gnu.org)
87y3plbq7a.fsf@gnu.org
Theodoros Foradis <theodoros@foradis.org> skribis:

Toggle quote (2 lines)
> * gnu/packages/finance.scm (monero-core): New variable.

Applied, thanks!

Ludo'.
Closed
L
L
Ludovic Courtès wrote on 11 Sep 2017 10:39
Re: [bug#28401] [PATCH 0/2] gnu: Add monero.
(name . Theodoros Foradis)(address . theodoros@foradis.org)
87fubtbpdn.fsf@gnu.org
Hi,

Theodoros Foradis <theodoros@foradis.org> skribis:

Toggle quote (13 lines)
> Hello Guix,
>
> this patch set adds clients (cli and gui) for Monero, a private digital
> currency.
>
> As I mention in comments in source, monero package bundles easylogging++
> and lmdb. The bundled easylogging++ is modified, and the changes will
> not be upstreamed. The devs deem the lmdb driver too critical a consenus
> component, to use the system's dynamically linked library (plus there's
> not even the option in the build system to use it).
>
> The other bundled dependencies we delete and not use.

OK. Oh well.

BTW, all tests pass (on x86_64), but the second test of “monero” takes
ages:

Toggle snippet (25 lines)
Test project /tmp/guix-build-monero-0.11.0.0.drv-0/build
Start 1: hash-target
1/11 Test #1: hash-target ...................... Passed 0.06 sec
Start 2: coretests
2/11 Test #2: coretests ........................ Passed 1830.78 sec
Start 3: cncrypto
3/11 Test #3: cncrypto ......................... Passed 8.22 sec
Start 4: difficulty
4/11 Test #4: difficulty ....................... Passed 0.02 sec
Start 5: hash-fast
5/11 Test #5: hash-fast ........................ Passed 0.01 sec
Start 6: hash-slow
6/11 Test #6: hash-slow ........................ Passed 0.07 sec
Start 7: hash-tree
7/11 Test #7: hash-tree ........................ Passed 0.00 sec
Start 8: hash-extra-blake
8/11 Test #8: hash-extra-blake ................. Passed 0.00 sec
Start 9: hash-extra-groestl
9/11 Test #9: hash-extra-groestl ............... Passed 0.01 sec
Start 10: hash-extra-jh
10/11 Test #10: hash-extra-jh .................... Passed 0.01 sec
Start 11: hash-extra-skein
11/11 Test #11: hash-extra-skein ................. Passed 0.00 sec

Toggle quote (4 lines)
> As far as monero-core is concerned (the gui), I did not manage to get it
> to build with the modular qt. Should this be added in the source as a
> TODO item?

Could you be more specific at what you tried and failed to achieve?
Perhaps Efraim (Cc’d) or someone else can provide guidance.

Thanks,
Ludo’.
T
T
Theodoros Foradis wrote on 11 Sep 2017 10:56
(name . Ludovic Courtès)(address . ludo@gnu.org)
87ingpehqk.fsf@foradis.org
Toggle quote (3 lines)
> BTW, all tests pass (on x86_64), but the second test of “monero” takes
> ages:

Maybe we should like to disable that specific test?

Toggle quote (7 lines)
>> As far as monero-core is concerned (the gui), I did not manage to get it
>> to build with the modular qt. Should this be added in the source as a
>> TODO item?
>
> Could you be more specific at what you tried and failed to achieve?
> Perhaps Efraim (Cc’d) or someone else can provide guidance.

The README file lists the following packages for other GNU/Linux
distros:
qtbase5-dev qt5-default qtdeclarative5-dev qml-module-qtquick-controls
qml-module-qtquick-xmllistmodel qttools5-dev-tools
qml-module-qtquick-dialogs

I tried using our:
qtbase
qtdeclarative
qtquickcontrol
qttools
qtgraphicaleffects,
with which the package won't build.

But I can't find the equivalent for the qml-module-... packages, except
for the qtquickcontrol one. Maybe I'm missing something?
--
Theodoros Foradis
L
L
Ludovic Courtès wrote on 11 Sep 2017 13:36
(name . Theodoros Foradis)(address . theodoros@foradis.org)
87r2vda2m4.fsf@gnu.org
Theodoros Foradis <theodoros@foradis.org> skribis:

Toggle quote (5 lines)
>> BTW, all tests pass (on x86_64), but the second test of “monero” takes
>> ages:
>
> Maybe we should like to disable that specific test?

It does pass on time on x86_64, and supposedly it’s useful, so I would
not disable it.

However, we should keep an eye on it and check whether it takes too
longer on ARM, for instance, and perhaps adjust ‘max-silent-time’
accordingly.

Toggle quote (21 lines)
>>> As far as monero-core is concerned (the gui), I did not manage to get it
>>> to build with the modular qt. Should this be added in the source as a
>>> TODO item?
>>
>> Could you be more specific at what you tried and failed to achieve?
>> Perhaps Efraim (Cc’d) or someone else can provide guidance.
>
> The README file lists the following packages for other GNU/Linux
> distros:
> qtbase5-dev qt5-default qtdeclarative5-dev qml-module-qtquick-controls
> qml-module-qtquick-xmllistmodel qttools5-dev-tools
> qml-module-qtquick-dialogs
>
> I tried using our:
> qtbase
> qtdeclarative
> qtquickcontrol
> qttools
> qtgraphicaleffects,
> with which the package won't build.

How does it fail?

Toggle quote (3 lines)
> But I can't find the equivalent for the qml-module-... packages, except
> for the qtquickcontrol one. Maybe I'm missing something?

Dunno, you’re the expert! :-)

Ludo’.
E
E
Efraim Flashner wrote on 11 Sep 2017 15:51
(address . 28401@debbugs.gnu.org)
2C35E6B4-CE1E-43EF-811B-1C2771687687@flashner.co.il
On September 11, 2017 2:36:35 PM GMT+03:00, ludo@gnu.org wrote:
Toggle quote (16 lines)
>Theodoros Foradis <theodoros@foradis.org> skribis:
>
>>> BTW, all tests pass (on x86_64), but the second test of “monero”
>takes
>>> ages:
>>
>> Maybe we should like to disable that specific test?
>
>It does pass on time on x86_64, and supposedly it’s useful, so I would
>not disable it.
>
>However, we should keep an eye on it and check whether it takes too
>longer on ARM, for instance, and perhaps adjust ‘max-silent-time’
>accordingly.
>

I have a particularly slow machine that can probably aproximate a 'long enough' time. I'll test it out on aarch64 once I apply Leo's patch for libunwind; the current version is actually unsupported on aarch64.

Toggle quote (34 lines)
>>>> As far as monero-core is concerned (the gui), I did not manage to
>get it
>>>> to build with the modular qt. Should this be added in the source as
>a
>>>> TODO item?
>>>
>>> Could you be more specific at what you tried and failed to achieve?
>>> Perhaps Efraim (Cc’d) or someone else can provide guidance.
>>
>> The README file lists the following packages for other GNU/Linux
>> distros:
>> qtbase5-dev qt5-default qtdeclarative5-dev
>qml-module-qtquick-controls
>> qml-module-qtquick-xmllistmodel qttools5-dev-tools
>> qml-module-qtquick-dialogs
>>
>> I tried using our:
>> qtbase
>> qtdeclarative
>> qtquickcontrol
>> qttools
>> qtgraphicaleffects,
>> with which the package won't build.
>
>How does it fail?
>
>> But I can't find the equivalent for the qml-module-... packages,
>except
>> for the qtquickcontrol one. Maybe I'm missing something?
>
>Dunno, you’re the expert! :-)
>
>Ludo’.

I sometimes have to search through to see which module provides which qt piece

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
T
T
Theodoros Foradis wrote on 11 Sep 2017 16:42
(name . Efraim Flashner)(address . efraim@flashner.co.il)
87h8w9e1q7.fsf@foradis.org
Toggle quote (37 lines)
>
>>>>> As far as monero-core is concerned (the gui), I did not manage to
>>get it
>>>>> to build with the modular qt. Should this be added in the source as
>>a
>>>>> TODO item?
>>>>
>>>> Could you be more specific at what you tried and failed to achieve?
>>>> Perhaps Efraim (Cc’d) or someone else can provide guidance.
>>>
>>> The README file lists the following packages for other GNU/Linux
>>> distros:
>>> qtbase5-dev qt5-default qtdeclarative5-dev
>>qml-module-qtquick-controls
>>> qml-module-qtquick-xmllistmodel qttools5-dev-tools
>>> qml-module-qtquick-dialogs
>>>
>>> I tried using our:
>>> qtbase
>>> qtdeclarative
>>> qtquickcontrol
>>> qttools
>>> qtgraphicaleffects,
>>> with which the package won't build.
>>
>>How does it fail?
>>
>>> But I can't find the equivalent for the qml-module-... packages,
>>except
>>> for the qtquickcontrol one. Maybe I'm missing something?
>>
>>Dunno, you’re the expert! :-)
>>
>>Ludo’.
>
> I sometimes have to search through to see which module provides which qt piece

There was an issue with the build system not finding lrelease from qt
which I was able to find and patch. So I got the package to build with
the forementioned modular qt packages.

There are runtime issues though (ie, the program monero-wallet-gui won't
run) with the following messages:
app startd
QQmlApplicationEngine failed to load component
qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
qrc:///main.qml:34 module "Qt.labs.settings" is not installed
qrc:///main.qml:31 module "QtQuick.Controls" is not installed
qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
qrc:///main.qml:29 module "QtQuick" is not installed
qrc:///main.qml:30 module "QtQuick.Window" is not installed
qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
qrc:///main.qml:34 module "Qt.labs.settings" is not installed
qrc:///main.qml:31 module "QtQuick.Controls" is not installed
qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
qrc:///main.qml:29 module "QtQuick" is not installed
qrc:///main.qml:30 module "QtQuick.Window" is not installed
qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
qrc:///main.qml:34 module "Qt.labs.settings" is not installed
qrc:///main.qml:31 module "QtQuick.Controls" is not installed
qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
qrc:///main.qml:29 module "QtQuick" is not installed
qrc:///main.qml:30 module "QtQuick.Window" is not installed
qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
qrc:///main.qml:34 module "Qt.labs.settings" is not installed
qrc:///main.qml:31 module "QtQuick.Controls" is not installed
qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
qrc:///main.qml:29 module "QtQuick" is not installed
qrc:///main.qml:30 module "QtQuick.Window" is not installed
qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
qrc:///main.qml:34 module "Qt.labs.settings" is not installed
qrc:///main.qml:31 module "QtQuick.Controls" is not installed
qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
qrc:///main.qml:29 module "QtQuick" is not installed
qrc:///main.qml:30 module "QtQuick.Window" is not installed
qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
qrc:///main.qml:34 module "Qt.labs.settings" is not installed
qrc:///main.qml:31 module "QtQuick.Controls" is not installed
qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
qrc:///main.qml:29 module "QtQuick" is not installed
qrc:///main.qml:30 module "QtQuick.Window" is not installed

For one, there seems to be an issue with the package's build system
because qml module "QtQuick.Dialogs" is included in our qtquickcontrol
package. On the other hand, I think we don't have the qml modules for
"Qt.labs" in any modular qt package. Is that correct?

--
Theodoros Foradis
E
E
Efraim Flashner wrote on 11 Sep 2017 16:44
(name . Theodoros Foradis)(address . theodoros@foradis.org)
0A1E22D1-B3A1-41DD-8B88-603BA548A3A9@flashner.co.il
On September 11, 2017 5:42:08 PM GMT+03:00, Theodoros Foradis <theodoros@foradis.org> wrote:
Toggle quote (86 lines)
>>
>>>>>> As far as monero-core is concerned (the gui), I did not manage to
>>>get it
>>>>>> to build with the modular qt. Should this be added in the source
>as
>>>a
>>>>>> TODO item?
>>>>>
>>>>> Could you be more specific at what you tried and failed to
>achieve?
>>>>> Perhaps Efraim (Cc’d) or someone else can provide guidance.
>>>>
>>>> The README file lists the following packages for other GNU/Linux
>>>> distros:
>>>> qtbase5-dev qt5-default qtdeclarative5-dev
>>>qml-module-qtquick-controls
>>>> qml-module-qtquick-xmllistmodel qttools5-dev-tools
>>>> qml-module-qtquick-dialogs
>>>>
>>>> I tried using our:
>>>> qtbase
>>>> qtdeclarative
>>>> qtquickcontrol
>>>> qttools
>>>> qtgraphicaleffects,
>>>> with which the package won't build.
>>>
>>>How does it fail?
>>>
>>>> But I can't find the equivalent for the qml-module-... packages,
>>>except
>>>> for the qtquickcontrol one. Maybe I'm missing something?
>>>
>>>Dunno, you’re the expert! :-)
>>>
>>>Ludo’.
>>
>> I sometimes have to search through to see which module provides which
>qt piece
>
>There was an issue with the build system not finding lrelease from qt
>which I was able to find and patch. So I got the package to build with
>the forementioned modular qt packages.
>
>There are runtime issues though (ie, the program monero-wallet-gui
>won't
>run) with the following messages:
>app startd
>QQmlApplicationEngine failed to load component
>qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
>qrc:///main.qml:34 module "Qt.labs.settings" is not installed
>qrc:///main.qml:31 module "QtQuick.Controls" is not installed
>qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
>qrc:///main.qml:29 module "QtQuick" is not installed
>qrc:///main.qml:30 module "QtQuick.Window" is not installed
>qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
>qrc:///main.qml:34 module "Qt.labs.settings" is not installed
>qrc:///main.qml:31 module "QtQuick.Controls" is not installed
>qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
>qrc:///main.qml:29 module "QtQuick" is not installed
>qrc:///main.qml:30 module "QtQuick.Window" is not installed
>qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
>qrc:///main.qml:34 module "Qt.labs.settings" is not installed
>qrc:///main.qml:31 module "QtQuick.Controls" is not installed
>qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
>qrc:///main.qml:29 module "QtQuick" is not installed
>qrc:///main.qml:30 module "QtQuick.Window" is not installed
>qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
>qrc:///main.qml:34 module "Qt.labs.settings" is not installed
>qrc:///main.qml:31 module "QtQuick.Controls" is not installed
>qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
>qrc:///main.qml:29 module "QtQuick" is not installed
>qrc:///main.qml:30 module "QtQuick.Window" is not installed
>qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
>qrc:///main.qml:34 module "Qt.labs.settings" is not installed
>qrc:///main.qml:31 module "QtQuick.Controls" is not installed
>qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
>qrc:///main.qml:29 module "QtQuick" is not installed
>qrc:///main.qml:30 module "QtQuick.Window" is not installed
>qrc:///main.qml:32 module "QtQuick.Controls.Styles" is not installed
>qrc:///main.qml:34 module "Qt.labs.settings" is not installed
>qrc:///main.qml:31 module "QtQuick.Controls" is not installed
>qrc:///main.qml:33 module "QtQuick.Dialogs" is not installed
>qrc:///main.qml:29 module "QtQuick" is not installed
>qrc:///main.qml:30 module "QtQuick.Window" is not installed

This sounds a lot like the errors I got when trying to run gcompris-qt built with modular qt. IIRC Hartmut and someone else are working on improving our modular qt which might improve this situation.

Toggle quote (6 lines)
>
>For one, there seems to be an issue with the package's build system
>because qml module "QtQuick.Dialogs" is included in our qtquickcontrol
>package. On the other hand, I think we don't have the qml modules for
>"Qt.labs" in any modular qt package. Is that correct?

I don't believe so.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
T
T
Theodoros Foradis wrote on 11 Sep 2017 18:14
(name . Efraim Flashner)(address . efraim@flashner.co.il)
87fubtdxfh.fsf@foradis.org
Toggle quote (4 lines)
>
> This sounds a lot like the errors I got when trying to run gcompris-qt built with modular qt. IIRC Hartmut and someone else are working on improving our modular qt which might improve this situation.
>

So, I guess we should add a TODO comment at the "qt" input to revisit
this when our modular qt is changed.

--
Theodoros Foradis
?