Megasync is apparently missing a runtime dependency on dev-qt/qtquickcontrols and crashes without it. Reproducible: Always Steps to Reproduce: 1. Start with a brand new system without any traces of Qt 2. Install megasync from GURU: `USE="X dbus egl jpeg libinput png udev" ACCEPT_KEYWORDS=~amd64 ACCEPT_LICENSE="MEGA" emerge -v megasync` 3. Start an X server 4. Run `megasync` Actual Results: A window with a crash dump or simply a segfault. Also, the `/.local/share/data/Mega\ Limited/MEGAsync/logs/MEGAsync.log` logfile shows the following: ``` ERR qrc:/onboard/OnboardingDialog.qml:18 Type OnboardingFlow unavailable qrc:/onboard/OnboardingFlow.qml:3 module "QtQuick.Controls" is not installed ``` or the following: ``` ERR qrc:/onboard/OnboardingDialog.qml:18 Type OnboardingFlow unavailable qrc:/onboard/OnboardingFlow.qml:44 Type MainFlow unavailable qrc:/onboard/syncs_types/MainFlow.qml:193 Type SyncsFlow unavailable qrc:/onboard/syncs_types/syncs/SyncsFlow.qml:94 Type FullSyncPage unavailable qrc:/onboard/syncs_types/syncs/FullSyncPage.qml:8 Type FullSyncPageForm unavailable qrc:/onboard/syncs_types/syncs/FullSyncPageForm.ui.qml:45 Type ChooseSyncFolder unavailable qrc:/onboard/syncs_types/syncs/ChooseSyncFolder.qml:4 module "QtQuick.Dialogs" is not installed ``` Expected Results: The app starts normally. `emerge -v dev-qt/qtquickcontrols` resolves the issue. (`USE=widgets` is not necessary) Also, just to be clear, installing dev-qt/qtquickcontrols2 alone with or without USE=widgets does NOT help.
Apparently, dev-qt/qtquickcontrols{,2} is only needed for the initial setup, so I didn't notice. Thanks for reporting this!
$ eshowkw megasync No such package "megasync"
(In reply to Takuya Wakazono from comment #1) > Apparently, dev-qt/qtquickcontrols{,2} is only needed for the initial setup, > so I didn't notice. Right. Just to double-check, a Debian control file from upstream [1] confirms that both qtquickcontrols and qtquickcontrols2 are needed: (the "dialogs" are seemingly a part of qtquickcontrols package in Gentoo as far as I can tell) > Depends: ${shlibs:Depends}, libc-ares2, apt-transport-https, gpg, > qml-module-qtquick-dialogs, > qml-module-qtquick-controls, > qml-module-qtquick-controls2 [1] https://github.com/meganz/MEGAsync/blob/dd096449683097af1f09b201641650cad59a9cb0/build/MEGAsync/MEGAsync/debian.control#L29 > Thanks for reporting this! No problem. Actually, thank YOU for maintaining the great ebuild!
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=b1ad3296f03fb552fac2897ca142f8af52032326 commit b1ad3296f03fb552fac2897ca142f8af52032326 Author: Takuya Wakazono <pastalian46@gmail.com> AuthorDate: 2024-07-20 08:02:12 +0000 Commit: Takuya Wakazono <pastalian46@gmail.com> CommitDate: 2024-07-20 08:10:18 +0000 net-misc/megasync: fix runtime dependency dev-qt/qtquickcontrols{,2} is required as a runtime dependency. If this is not present in an environment that has not done initial setup, megasync will crash. This does not occur in environment that have already done initial setup. Closes: https://bugs.gentoo.org/936323 Signed-off-by: Takuya Wakazono <pastalian46@gmail.com> .../{megasync-5.3.0.0.ebuild => megasync-5.3.0.0-r1.ebuild} | 6 +++++- net-misc/megasync/megasync-9999.ebuild | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-)