QT Issue after latest update

I updated the system this morning without any issue. But when I tried to run timedoctor desktop,
it is not running properly. When I ran it interactively from command line, I noticed the following-

ERROR sfproc.webview - The render process was terminated "satusCode = 159

I have seen that among the known issues for this update, there is this item-
QTile minimizes windows
[floating_layout rules in a dict was deprecated a while ago]

Any help would be much appreciated.

How and from where did you installed it?
Moved to #support:3rd-party-applications

1 Like

Downloaded it from their official site. It is for Ubuntu 18.04

please get in touch with the developer of said package.
The only reference I could find was a web application.

Is there a way to downgrade QT library?

Almost everything in KDE Plasma depends on the qt5-base - downgrading it could lead to more trouble than you want, and even a broken system.
If you depend on that software, better use a distribution they suport, or make use of a Virtual Machine for it, with a point release distribution like Ubuntu …

1 Like

I and more 3 guys in my work had the same problem.

How the VM with the timedoctor will track the primary OS? The timedoctor take screenshots, track the mouse, keyboard, and the apps usage rate.

You can ask the developers of timedoctor. Or ask them to provide a package for latest Qt5 release that will be suitable for a rolling release as Manjaro is, or at least an appimage …

1 Like

Hi.

I experienced the same issue. I updated Manjaro late last week too. Update went fine except that TimeDoctor isn’t working. It runs the app but certain parts of the app loading so it’s not usable.
I’m not allowed to upload an image

I even downgraded all of the packages that were changed by using below commands. This is just a sample that I saw from another site. I’m seeing an error whenever I paste links so I’m just pasting the sample commands here that I got from another site. I didn’t noticed any issue with Manjaro after I did it but still TimeDoctor is not working. It was working fine before I updated Manjaro.

$ grep -a upgraded /var/log/pacman.log| grep 2020-11-30 > /tmp/lastupdates.txt
$ awk ‘{print $4}’ /tmp/lastupdates.txt > /tmp/lines1;awk ‘{print $5}’ /tmp/lastupdates.txt | sed ‘s/(/-/g’ > /tmp/lines2
$ paste /tmp/lines1 /tmp/lines2 > /tmp/lines
$ tr -d “[:blank:]” < /tmp/lines > /tmp/packages
$ cd /var/cache/pacman/pkg/
$ for i in $(cat /tmp/packages); do sudo pacman --noconfirm -U “$i”*; done

I tried opening TimeDoctor from the terminal and below is what I saw. Note that I replaced the username in the path:

./timedoctor2
The install alias is empty, assume install mode as cloud
[Main] INFO root - -=< INITIALIZINGG 3.6.40 >=-
[Main] WARN default - Handling Qt messages is enabled
[Main] INFO default - ** The QTWEBENGINE_CHROMIUM_FLAGS is used with value: “–disable-logging --disable-gpu --disable-in-process-stack-traces --disable-web-security”
[Main] WARN default - The install alias is empty, assume install mode as cloud
[Main] WARN default - Qt: Session management error: None of the authentication protocols specified are supported
[Main] WARN default - QApplication: invalid style override ‘kvantum’ passed, ignoring it.
Available styles: Windows
[Main] INFO default - Blur GPU settings from flag
[Main] INFO default - Blur on GPU is enabled
[Main] INFO default - “timedoctor2” version “3.6.40”
[Main] INFO default - Sentry Init: “/home/username/.local/share/TD/timedoctor2” “3.6.40”
[Main] INFO default - The another instance is running, just wake up this instance…
[Main] INFO default - Application is finished with status 0
[Main] INFO root - -=< DEINITIALIZE 3.6.40 >=-

I found a “Time Doctor Crashes” folder and it contains dump/log. I did notice a lot of QT-related. However, I couldn’t find "ERROR sfproc.webview - The render process was terminated “satusCode = 159” error that the OP mentioned.

I don’t mean to hijack this post. I just noticed that we have similar issue and it’s around the same date.

Coming from CentOS Stream 9
The only current way to start this application is by disabling QT sandbox in a terminal then start TD in the same session

export QTWEBENGINE_DISABLE_SANDBOX=1

then

timedoctor2

or you can create your own script like this

#!/bin/bash
#the above line works for bash, in case of zsh you need to use “#!/usr/bin/zsh” or wherever your shell is located.
export QTWEBENGINE_DISABLE_SANDBOX=1
$HOME/timedoctor2/timedoctor2

After that, you will need to chmod +x on the script file or use your GUI to mark it as executable.

The application will show the normal UI, but I can’t vouch for any further usability (for example all my Screencasts in the dashboard appear as solid black) (this is the first time I have tried to install it on CentOS, so I don’t know if the black screens are a known limitation or not, although it captures the screen fine on Ubuntu 20.04).
I created a support ticket and will wait for their response (although I am not keeping my hopes up because they can be idiots sometimes).

1 Like

And the support team replied:

Hope this email finds you well. Currently, we only support Ubuntu LTS versions. A possible reason why the apps keep crashing. Hope this helps. Let us know if you have other questions.

Useless, but at least this time swift.

AMAZING, this works fine for me. And the screenshots are working too.
Thanks a lot for this way

1 Like

In my experience, it usually works best to track down the bundled version of Qt in the third-party application and delete all the bundled libQt* libraries, forcing the application to use the system-installed copy instead. (This goes for any distribution with reasonably recent Qt, which is likely to be more recent than the bundled one: Manjaro, Arch, Fedora, Gentoo, …) In particular, recent versions of QtWebEngine have received fixes for the sandbox that make it work with recent versions of glibc, so the QTWEBENGINE_DISABLE_SANDBOX workaround might be obsolete if you delete the old bundled version (and the bundled version is also likely ancient and full of security vulnerabilities).

I have tried to delete all libQt* files found in “~/timedoctor2/lib” and ran timedoctor2 but it complained about the missing libraries, then I tried to copy them from “/usr/lib64/” then TD started complaining about missing libs that I couldn’t find inside “/usr/lib64/”. and when I copied them from the original TD bundled lib I got the following error:


timedoctor2: ~/timedoctor2/lib/libQt5Core.so.5: version `Qt_5_PRIVATE_API' not found (required by ~/timedoctor2/lib/libQt5WebChannel.so.5)
timedoctor2: ~/timedoctor2/lib/libQt5Gui.so.5: version `Qt_5_PRIVATE_API' not found (required by ~/timedoctor2/lib/libQt5WebEngineCore.so.5)

Again I am on CentOS Stream 9 so your mileage may vary.

So you are using a mix of system and bundled Qt now, which is not going to work. You probably need to install the missing packages (e.g., qt5-qtwebengine from EPEL) instead of copying back some bundled libraries. Or switch back to bundled only (i.e., copy back all bundled libraries) and use that QTWEBENGINE_DISABLE_SANDBOX workaround that worked for you (at the expense of security).

Also note that you are on a Manjaro forum, so you will not find many people familiar with CentOS here (other than me).

While CentOS is not exactly known for shipping the latest&greatest Qt (unlike Fedora), the fact that Qt 5 is already in LTS-only phase and the fact that you are running the stream leading to a not-yet-released RHEL version (EL9) means that the system version is reasonably current (Qt 5.15.2 / QtWebEngine 5.15.8), so it should be OK to use all system libraries, but you need to install the missing packages.

OK, I will try it later.

Installing the missing packages proved to be not a simple task for example timedoctor is asking for “libQt5Solutions_SingleApplication-head.so.1” which as I understand is no longer supported on CentOS (I manged to find the package online but it had a list of dependencies that I needed to download and so on.

Well, does that depend on private Qt APIs? If not, then you can just use the bundled version of that library together with the system Qt. The issue comes up when you mix system and bundled Qt libraries that use each other’s private APIs.