Subject: bug#45404: closed (Re: [PATCH] gnu: kiwix-desktop: Fix program start.)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 29 Dec 2020 20:30:02 +0000

Your bug report

#45404: kiwix-desktop does not start

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
45404: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=45404
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [PATCH] gnu: kiwix-desktop: Fix program start.
From: Leo Prikler <[email-masked]>
To: Michael Rohleder <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Tue, 29 Dec 2020 21:29:40 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Pushed, thanks!

Small hint, if you want to use pure environments, don't forget
to expose environment variables such as DISPLAY and XAUTHORITY.

Regards,
Leo 

Am Freitag, den 25.12.2020, 17:36 +0100 schrieb Michael Rohleder:
> Fixes <https://bugs.gnu.org/45404>;.
> 
> * gnu/packages/web.scm (kiwix-desktop)[arguments]: Add phase to wrap
> QTWEBENGINEPROCESS_PATH.
> ---
>  gnu/packages/web.scm | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
> index 8d7dfe2804..7486eb7f5b 100644
> --- a/gnu/packages/web.scm
> +++ b/gnu/packages/web.scm
> @@ -7981,7 +7981,17 @@ It contains the code shared by all Kiwix
> ports.")
>             (lambda* (#:key inputs #:allow-other-keys)
>               (substitute* "kiwix-desktop.pro"
>                 (("webenginewidgets" all) (string-append all "
> printsupport")))
> -             #t)))))
> +             #t))
> +         (add-after 'install 'wrap-qt-process-path
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let* ((out (assoc-ref outputs "out"))
> +                    (bin (string-append out "/bin/kiwix-desktop"))
> +                    (qt-process-path (string-append
> +                                      (assoc-ref inputs
> "qtwebengine")
> +                                      "/lib/qt5/libexec/QtWebEngineP
> rocess")))
> +               (wrap-program bin
> +                 `("QTWEBENGINEPROCESS_PATH" = (,qt-process-path)))
> +               #t))))))
>      (inputs
>       `(("curl" ,curl)
>         ("icu4c" ,icu4c)

Subject: kiwix-desktop does not start
From: Maxime Devos <[email-masked]>
To: [email-masked]
Date: Thu, 24 Dec 2020 13:33:24 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello Guix,

kiwix-desktop doesn't start. Depending on the environment, I get
different error messages:

Variant #A (pure environment, in GDM session)
$ guix time-machine --commit=20a687bbfbc72ffcd802b4bc59db344ad4291577
environment --ad-hoc --pure kiwix-desktop -- kiwix-desktop

> No protocol specified
> qt.qpa.xcb: could not connect to display :1
> qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even
> though it was found.
> This application failed to start because no Qt platform plugin could
be initialized. Reinstalling the application may fix this problem.
>
> Available platform plugins are: eglfs, linuxfb, minimal, minimalegl,
> offscreen, vnc, xcb.
>
> Aborted

Not sure what's going on here, but here's a GDB backtrace:

Breakpoint 1, 0x00007fffed1e5a90 in abort ()
   from /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-
2.31/lib/libc.so.6
(gdb) bt
#0  0x00007fffed1e5a90 in abort ()
   from /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-
2.31/lib/libc.so.6
#1  0x00007fffed78ba2f in QMessageLogger::fatal(char const*, ...) const
()
   from /gnu/store/lg0pz5wvpfd5xq3qhmarq3p4nqi64hdd-qtbase-
5.14.2/lib/libQt5Core.so.5
#2  0x00007fffee44c8f4 in
QGuiApplicationPrivate::createPlatformIntegration() ()
   from /gnu/store/lg0pz5wvpfd5xq3qhmarq3p4nqi64hdd-qtbase-
5.14.2/lib/libQt5Gui.so.5
#3  0x00007fffee44cdbd in
QGuiApplicationPrivate::createEventDispatcher() ()
   from /gnu/store/lg0pz5wvpfd5xq3qhmarq3p4nqi64hdd-qtbase-
5.14.2/lib/libQt5Gui.so.5
#4  0x00007fffed994905 in QCoreApplicationPrivate::init() ()
   from /gnu/store/lg0pz5wvpfd5xq3qhmarq3p4nqi64hdd-qtbase-
5.14.2/lib/libQt5Core.so.5
#5  0x00007fffee44e95c in QGuiApplicationPrivate::init() ()
   from /gnu/store/lg0pz5wvpfd5xq3qhmarq3p4nqi64hdd-qtbase-
5.14.2/lib/libQt5Gui.so.5
#6  0x00007fffeeb4832e in QApplicationPrivate::init() ()
   from /gnu/store/lg0pz5wvpfd5xq3qhmarq3p4nqi64hdd-qtbase-
5.14.2/lib/libQt5Widgets.so.5
#7  0x000000000045a84c in ?? ()
#8  0x00000000004333d6 in ?? ()
#9  0x0000000000422d30 in ?? ()
#10 0x00007fffed1d0a6d in __libc_start_main ()
   from /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-
2.31/lib/libc.so.6
#11 0x00000000004236ea in ?? ()

Variant #B (installed in user profile, in GDM session)

$ kiwix-desktop

> Could not find QtWebEngineProcess

Greetings,
Maxime