Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nagstamon 3.14 not starting since Plasma 6 #1015

Open
timodenissen opened this issue Mar 11, 2024 · 34 comments
Open

Nagstamon 3.14 not starting since Plasma 6 #1015

timodenissen opened this issue Mar 11, 2024 · 34 comments

Comments

@timodenissen
Copy link

Using Arch Linux with the most recent Plasma 6 update, Nagstamon 3.14 no longer starts.

Cleaning my configuration to make sure it's not a profile problem:

cd ~
mv .nagstamon{,_orig}

Starting Nagstamon from Konsole via nagstamon crashes:

QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QThread: Destroyed while thread is still running
zsh: IOT instruction (core dumped)  nagstamon

Running from bash results in:

QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QThread: Destroyed while thread is still running
Aborted (core dumped)

ps auxf | grep -i "nagstamon" shows no Nagstamon process is running.

Prior the Plasma 6 update (with Plasma 5.27) everything worked just fine.

@HenriWahl
Copy link
Owner

Hi @timodenissen, how bad. Actually Nagstamon supports Qt6, which Plasma 6 is based on too. So this is really strange. I will try to reproduce by setting up an Arch instance.

@HenriWahl
Copy link
Owner

Hi @timodenissen - do you know of an fast way to get an Arch Linux up and running? I did not expect to come out in a shell for installing. Don't get me wrong, I ❤️ shells, but looks more tenacious than assumed.

@HenriWahl
Copy link
Owner

@timodenissen another question: do you use Wayland or Xorg?

@HenriWahl
Copy link
Owner

@timodenissen how did you install Nagstamon?

@timodenissen
Copy link
Author

@HenriWahl The fastest way could be using archinstall.

I use the Plasma wayland session, with Plasma 5.27 this was not an issue.

I installed Nagstamon via the AUR package. A clone of the repository also results in the same errros.

@11qeq11
Copy link

11qeq11 commented Mar 15, 2024

+1 to the issue, after recent system upgrade Nagstamon won't load anymore. I also noticed that trying to run nagstamon via pdb-clone, I can get it to work but without any UI whatsover - I hear the sound of alerts, can see the process running, but UI appears for a fraction of a second and immediately crashes.

Not sure how helpful it will be for debugging, but will leave the outputs, in ~/.nagstamon/nagstamon.conf I enabled debug mode:

...
debug_mode = True
...
Output from pdb

$ ps auxf | grep -i "nagstamon"
alex     1308329  6.8  0.9 2679496 307964 pts/10 Sl+  18:51   0:01  |   |       \_ /usr/bin/python /usr/bin/pdb-clone /usr/bin/nagstamon
alex     1308997  0.0  0.0   6572  2560 pts/14   S+   18:51   0:00  |           \_ grep --color=auto -i nagstamon
alex     1308441  0.0  0.0 268530852 25836 ?     S    18:51   0:00  \_ /usr/lib/kf6/kioworker /usr/lib/qt6/plugins/kf6/kio/tags.so tags  local:/run/user/1000/nagstamonFUaGdH.1.kioworker.socket
$ pdb-clone /usr/bin/nagstamon
pdb-clone 1.10.1 (without the _bdb extension module).
> /usr/bin/nagstamon(21)<module>()
-> import sys
(Pdb) c
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
DEBUG: 2024-03-15 18:54:51.612610 Saving configuration to file /home/alex/.nagstamon/nagstamon.conf
DEBUG: 2024-03-15 18:54:51.865950 QU Created server.
DEBUG: Initializing SystemTrayIcon
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0cdc0> for state "OK"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0cca0> for state "INFORMATION"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0ce50> for state "UNKNOWN"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0cee0> for state "WARNING"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0cf70> for state "AVERAGE"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0d000> for state "HIGH"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0d090> for state "CRITICAL"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0d120> for state "DISASTER"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0d1b0> for state "UNREACHABLE"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0d240> for state "DOWN"
DEBUG: SystemTrayIcon created icon <Nagstamon.QUI.QIconWithFilename object at 0x7d2bf9b0d2d0> for state "ERROR"
DEBUG: SystemTrayIcon initial icon: <PyQt6.QtGui.QIcon object at 0x7d2bf9b0cb80>
DEBUG: 2024-03-15 18:54:52.315903 QU FetchURL: https://my.nagios.server.com/nagios/cgi-bin/status.cgi?hostgroup=all&style=hostdetail&hoststatustypes=12&hostprops=262144&limit=0 CGI Data: None
The program exited via sys.exit(). Exit status: 0
> /usr/bin/nagstamon(21)<module>()
-> import sys
(Pdb) DEBUG: 2024-03-15 18:54:52.370530 QU FetchURL: https://nagstamon.de/version/stable CGI Data: None
DEBUG: 2024-03-15 18:54:53.566737 QU FetchURL: https://my.nagios.server.com/nagios/cgi-bin/status.cgi?hostgroup=all&style=hostdetail&hoststatustypes=12&hostprops=524288&limit=0 CGI Data: None
DEBUG: 2024-03-15 18:54:54.490641 QU FetchURL: https://my.nagios.server.com/nagios/cgi-bin/status.cgi?host=all&servicestatustypes=253&serviceprops=262144&limit=0 CGI Data: None
DEBUG: 2024-03-15 18:54:55.755790 QU FetchURL: https://my.nagios.server.com/nagios/cgi-bin/status.cgi?host=all&servicestatustypes=253&serviceprops=524288&limit=0 CGI Data: None
Failed to open VDPAU backend libvdpau_va_gl.so: cannot open shared object file: No such file or directory
DEBUG: 2024-03-15 18:54:56.628821 QU Filter: REGEXP <redacted>
DEBUG: 2024-03-15 18:54:56.628842 QU Filter: ACKNOWLEDGED <redacted>
DEBUG: 2024-03-15 18:54:56.628895 QU Filter: ACKNOWLEDGED <redacted>
...

@HenriWahl
Copy link
Owner

HenriWahl commented Mar 18, 2024

@timodenissen thanks for the hint with archinstall. The downside is that I only receive a black screen after logging in into Plasma desktop inside a VM.

What is your desktop session manager? I choose the default sddm (or something like that) with Wayland.

Edit: Now I used X11 instead of Wayland and now I get a KDE desktop after logging in.

@timodenissen
Copy link
Author

I use SDDM with no special configuration. Please be aware that X11 is no longer supported by Plasma 6 and may falsify reproducing the error.

@HenriWahl
Copy link
Owner

Yes, I think checking it with Wayland is definitely more useful. I will try to get it running.

@HenriWahl
Copy link
Owner

HenriWahl commented Mar 22, 2024

At least got Wayland session of Plasma6 running in VM. Now the next questions as non-Arch-user: where did you install Nagstamon from?

Edit: Found it.

Edit 2: I can confirm the immediate crash.

@HenriWahl
Copy link
Owner

@timodenissen this are my findings:

  • Nagstamon crashes in Wayland and X11 - so the windows systems seems to be innocent
  • Nagstamon runs from source in a virtualenv environment with Qt6 installed by pip

I assume that the Qt6 version in Arch causes the trouble somehow, because the crash happens as soon GUI is involved.

Via journalctl I get this crash message:

Mär 22 21:49:45 archlinux systemd-coredump[1312]: [🡕] Process 1273 (nagstamon) of user 1000 dumped core.
                                                   
                                                   Stack trace of thread 1273:
                                                   #0  0x00007e14036ab32c n/a (libc.so.6 + 0x8d32c)
                                                   #1  0x00007e140365a6c8 raise (libc.so.6 + 0x3c6c8)
                                                   #2  0x00007e14036424b8 abort (libc.so.6 + 0x244b8)
                                                   #3  0x00007e1400c8a924 n/a (libQt6Core.so.6 + 0x8a924)
                                                   #4  0x00007e1400c8b135 _ZNK14QMessageLogger5fatalEPKcz (libQt6Core.so.6 + 0x8b135)
                                                   #5  0x00007e1400ca5f78 n/a (libQt6Core.so.6 + 0xa5f78)
                                                   #6  0x00007e14012a66ad n/a (QtCore.abi3.so + 0xa66ad)
                                                   #7  0x00007e1400d7c6fb _ZN14QObjectPrivate14deleteChildrenEv (libQt6Core.so.6 + 0x17c6fb)
                                                   #8  0x00007e13fbb2cd41 _ZN7QWidgetD2Ev (libQt6Widgets.so.6 + 0x12cd41)
                                                   #9  0x00007e13fb6ddd77 n/a (QtWidgets.abi3.so + 0x2ddd77)
                                                   #10 0x00007e1401398b97 n/a (QtCore.abi3.so + 0x198b97)
                                                   #11 0x00007e1400af4350 n/a (sip.cpython-311-x86_64-linux-gnu.so + 0x15350)
                                                   #12 0x00007e1401398a4f n/a (QtCore.abi3.so + 0x198a4f)
                                                   #13 0x00007e140395ff69 n/a (libpython3.11.so.1.0 + 0x15ff69)
                                                   #14 0x00007e1403a4c034 n/a (libpython3.11.so.1.0 + 0x24c034)
                                                   #15 0x00007e1403a3befe Py_FinalizeEx (libpython3.11.so.1.0 + 0x23befe)
                                                   #16 0x00007e1403a5621c Py_Exit (libpython3.11.so.1.0 + 0x25621c)
                                                   #17 0x00007e1403a4ef9b n/a (libpython3.11.so.1.0 + 0x24ef9b)
                                                   #18 0x00007e1403a4ed9c PyErr_PrintEx (libpython3.11.so.1.0 + 0x24ed9c)
                                                   #19 0x00007e14038b5bb4 n/a (libpython3.11.so.1.0 + 0xb5bb4)
                                                   #20 0x00007e1403a4d5f8 _PyRun_AnyFileObject (libpython3.11.so.1.0 + 0x24d5f8)
                                                   #21 0x00007e1403a48098 Py_RunMain (libpython3.11.so.1.0 + 0x248098)
                                                   #22 0x00007e1403a131eb Py_BytesMain (libpython3.11.so.1.0 + 0x2131eb)
                                                   #23 0x00007e1403643cd0 n/a (libc.so.6 + 0x25cd0)
                                                   #24 0x00007e1403643d8a __libc_start_main (libc.so.6 + 0x25d8a)
                                                   #25 0x0000587e926b8045 _start (python3.11 + 0x1045)
                                                   
                                                   Stack trace of thread 1294:
                                                   #0  0x00007e14037190bf __poll (libc.so.6 + 0xfb0bf)
                                                   #1  0x00007e13fe09a20b n/a (libxcb.so.1 + 0xd20b)
                                                   #2  0x00007e13fe09bf3d xcb_wait_for_event (libxcb.so.1 + 0xef3d)
                                                   #3  0x00007e13fa67bf4e n/a (libQt6XcbQpa.so.6 + 0x4bf4e)
                                                   #4  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #5  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #6  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1302:
                                                   #0  0x00007e14037190bf __poll (libc.so.6 + 0xfb0bf)
                                                   #1  0x00007e1401b1e2f6 n/a (libglib-2.0.so.0 + 0xb82f6)
                                                   #2  0x00007e1401abe162 g_main_context_iteration (libglib-2.0.so.0 + 0x58162)
                                                   #3  0x00007e1400f739c4 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x3739c4)
                                                   #4  0x00007e1400d43d6e _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x143d6e)
                                                   #5  0x00007e1400e2116f _ZN7QThread3runEv (libQt6Core.so.6 + 0x22116f)
                                                   #6  0x00007e14012ae039 n/a (QtCore.abi3.so + 0xae039)
                                                   #7  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #8  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #9  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1296:
                                                   #0  0x00007e14036a5ebe n/a (libc.so.6 + 0x87ebe)
                                                   #1  0x00007e14036a8a65 pthread_cond_timedwait (libc.so.6 + 0x8aa65)
                                                   #2  0x00007e1400ea3ba4 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2a3ba4)
                                                   #3  0x00007e1400ea64aa n/a (libQt6Core.so.6 + 0x2a64aa)
                                                   #4  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #5  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #6  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1293:
                                                   #0  0x00007e14037190bf __poll (libc.so.6 + 0xfb0bf)
                                                   #1  0x00007e1401b1e2f6 n/a (libglib-2.0.so.0 + 0xb82f6)
                                                   #2  0x00007e1401abe162 g_main_context_iteration (libglib-2.0.so.0 + 0x58162)
                                                   #3  0x00007e1400f739c4 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x3739c4)
                                                   #4  0x00007e1400d43d6e _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x143d6e)
                                                   #5  0x00007e1400e2106f _ZN7QThread4execEv (libQt6Core.so.6 + 0x22106f)
                                                   #6  0x00007e14007769df n/a (libQt6DBus.so.6 + 0x299df)
                                                   #7  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #8  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #9  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1295:
                                                   #0  0x00007e14036a5ebe n/a (libc.so.6 + 0x87ebe)
                                                   #1  0x00007e14036a8a65 pthread_cond_timedwait (libc.so.6 + 0x8aa65)
                                                   #2  0x00007e1400ea3ba4 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2a3ba4)
                                                   #3  0x00007e1400ea64aa n/a (libQt6Core.so.6 + 0x2a64aa)
                                                   #4  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #5  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #6  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1300:
                                                   #0  0x00007e1403719616 ppoll (libc.so.6 + 0xfb616)
                                                   #1  0x00007e1400e98f6b _Z12qt_safe_pollP6pollfdmPK8timespec (libQt6Core.so.6 + 0x298f6b)
                                                   #2  0x00007e13fd484758 n/a (libQt6Network.so.6 + 0xe7758)
                                                   #3  0x00007e13fd42f1b9 n/a (libQt6Network.so.6 + 0x921b9)
                                                   #4  0x00007e13fd42718e _ZN15QAbstractSocket16waitForReadyReadEi (libQt6Network.so.6 + 0x8a18e)
                                                   #5  0x00007e13f88c79da n/a (libKF6KIOCore.so.6 + 0x3c9da)
                                                   #6  0x00007e13f89a7a9d n/a (libKF6KIOCore.so.6 + 0x11ca9d)
                                                   #7  0x00007e13f8983632 n/a (libKF6KIOCore.so.6 + 0xf8632)
                                                   #8  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #9  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #10 0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1301:
                                                   #0  0x00007e14036a5ebe n/a (libc.so.6 + 0x87ebe)
                                                   #1  0x00007e14036a8a65 pthread_cond_timedwait (libc.so.6 + 0x8aa65)
                                                   #2  0x00007e1400ea3ba4 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2a3ba4)
                                                   #3  0x00007e1400ea64aa n/a (libQt6Core.so.6 + 0x2a64aa)
                                                   #4  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #5  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #6  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1304:
                                                   #0  0x00007e14037190bf __poll (libc.so.6 + 0xfb0bf)
                                                   #1  0x00007e13fd37b9b7 n/a (libpulse.so.0 + 0x339b7)
                                                   #2  0x00007e13fd36545c pa_mainloop_poll (libpulse.so.0 + 0x1d45c)
                                                   #3  0x00007e13fd36f61c pa_mainloop_iterate (libpulse.so.0 + 0x2761c)
                                                   #4  0x00007e13fd36f6d1 pa_mainloop_run (libpulse.so.0 + 0x276d1)
                                                   #5  0x00007e13fd37fbf2 n/a (libpulse.so.0 + 0x37bf2)
                                                   #6  0x00007e13fd2c92b7 n/a (libpulsecommon-17.0.so + 0x5c2b7)
                                                   #7  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #8  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1303:
                                                   #0  0x00007e14037190bf __poll (libc.so.6 + 0xfb0bf)
                                                   #1  0x00007e1401b1e2f6 n/a (libglib-2.0.so.0 + 0xb82f6)
                                                   #2  0x00007e1401abe162 g_main_context_iteration (libglib-2.0.so.0 + 0x58162)
                                                   #3  0x00007e1400f739c4 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt6Core.so.6 + 0x3739c4)
                                                   #4  0x00007e1400d43d6e _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt6Core.so.6 + 0x143d6e)
                                                   #5  0x00007e1400e2116f _ZN7QThread3runEv (libQt6Core.so.6 + 0x22116f)
                                                   #6  0x00007e14012ae039 n/a (QtCore.abi3.so + 0xae039)
                                                   #7  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #8  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #9  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   
                                                   Stack trace of thread 1297:
                                                   #0  0x00007e14036a5ebe n/a (libc.so.6 + 0x87ebe)
                                                   #1  0x00007e14036a8a65 pthread_cond_timedwait (libc.so.6 + 0x8aa65)
                                                   #2  0x00007e1400ea3ba4 _ZN14QWaitCondition4waitEP6QMutex14QDeadlineTimer (libQt6Core.so.6 + 0x2a3ba4)
                                                   #3  0x00007e1400ea64aa n/a (libQt6Core.so.6 + 0x2a64aa)
                                                   #4  0x00007e1400ea0bd3 n/a (libQt6Core.so.6 + 0x2a0bd3)
                                                   #5  0x00007e14036a955a n/a (libc.so.6 + 0x8b55a)
                                                   #6  0x00007e1403726a3c n/a (libc.so.6 + 0x108a3c)
                                                   ELF object binary architecture: AMD x86-64

@HenriWahl
Copy link
Owner

@timodenissen the mention of libpulse inspired me to try to disable sound.
I started from source in virtualenv environment where it does not crash and disabled sound.
Back with normal nagstamon start it does at least not crash now at the beginning. So I am almost convinced something with ArchLinux Qt6 + sound (libpulse?) is wrong, Maybe some package is missing and should also be listed as dependency?

@HenriWahl
Copy link
Owner

@timodenissen well, I installed the not yet installed package pulseaudio-qt and now there is no crash. Can you reproduce this?

@bouzouste
Copy link

@HenriWahl , @timodenissen I am sorry for stepping in. I personally use Endeavour OS (arch based) which also seems to have an issue with nagstamon after updating to Plasma 6. I also have the PulseAudio-qt package installed and I still see core dumps. However, in my case, nagstamon somehow seems to be working if it is not set to display a floating status bar but rather shows an icon in systray

@timodenissen
Copy link
Author

@HenriWahl Sorry for the late reply, I was on vacation.

That's interesting, my sound server is pipewire:

pactl info | grep "Server Name"
Server Name: PulseAudio (on PipeWire 1.0.4)

I could try switching back to PulseAudio and see if that would solve the issue, but that has to wait until tonight.

@bouzouste Thanks for the hint :) Unfortunately the crash also occurs with a complete new and empty Nagstamon profile =/

@bouzouste
Copy link

@timodenissen I confirm that the app crashes even when there is no configuration. However, If you already have a conf file, you could try changing the following two lines:

statusbar_floating = False
icon_in_systray = True

so that the floating status bar is disabled, and it (probably) won't crash.

If on the other hand, you don't have any configuration available, then you could try using an older version of nagstamon (3.8.0 or older) which seems to be working without issues (versions 3.8.1+ to 3.14+ seem to not like plasma 6)

@timodenissen
Copy link
Author

@bouzouste Thanks, now Nagstamon's not crashing but shows me a flashing tray icon (expected) but unfortunately I need the window =/ I wait for @HenriWahl to check and add a fix (not that much of a coder myself) or wait for the flatpak to update to latest stable (currently 3.6.0, which somehow can't work with our Prometheus Alert Manager).

In the meantime I check the Nagios and Prometheus Alert Manager with their respective web interfaces.

@HenriWahl
Copy link
Owner

@timodenissen strange thing that the window isn't working. Well, maybe you could test the 3.14 flatpak release currently being in development at flathub/de.ifw_dresden.nagstamon#8

@HenriWahl
Copy link
Owner

https://flathub.org/apps/de.nagstamon.nagstamon is finally out.

@gaestur
Copy link

gaestur commented Apr 29, 2024

Fedora 40, Plasma 6. Neither 3.14 from flathub (de.nagstamon.nagstamon), nor 3.14 (or 3.15 from the "latest" repo) RPMs work.
Here's an output (it is +/- similar in all cases)
$ flatpak run de.nagstamon.nagstamon
Qt: Session management error: Could not open network socket
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
qt.multimedia.ffmpeg.libsymbolsresolver: Couldn't load VAAPI library
QThread: Destroyed while thread is still running

This is after manually permitting flatpak access to system and session buses. Without it (by default) it additionally gives multiple errors like this:
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected" "Not connected to D-Bus server"

@timodenissen
Copy link
Author

Even after updating to Python 3.12, Nagstamon 3.14 won't show the GUI, neither does using the flatpak de.ifw_dresden.nagstamon.

@HenriWahl
Copy link
Owner

@timodenissen please try the new flatpak de.nagstamon.nagstamon

@HenriWahl
Copy link
Owner

@bbhtt do you think the permissions should be increased?

@richarson
Copy link

@HenriWahl same behaviour for me with the latest flatpak as with running from the tar.gz, the UI flashes and immediately closes.

$ flatpak run de.nagstamon.nagstamon
Qt: Session management error: Could not open network socket
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
kf.solid.backends.udisks2: Failed enumerating UDisks2 objects: "org.freedesktop.DBus.Error.Disconnected"
 "Not connected to D-Bus server"
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
qt.multimedia.ffmpeg.libsymbolsresolver: Couldn't load VAAPI library
=2

@bbhtt
Copy link

bbhtt commented May 3, 2024

@bbhtt do you think the permissions should be increased?

It does not need system or session bus. You need to figure out which bus name it tries to connect to by running it with flatpak run --log-session-bus <appid> and dbus-monitor etc.

@timodenissen
Copy link
Author

I did a quick test with the latest main branch:

cd /tmp
git clone https://github.com/HenriWahl/Nagstamon.git
cd Nagstamon
python ./setup.py build
python ./build/scripts-3.12/nagstamon.py

results in

QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout

Same error - the status window doesn't open.

When stopping Nagstamon.py from the systray via the context menu quits the process, using Ctrl+C results in:

Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/Nagstamon/QUI/__init__.py", line 2553, in reset
    @Slot()

KeyboardInterrupt
zsh: IOT instruction (core dumped)  python ./build/scripts-3.12/nagstamon.py

Running the latest flatpak de.nagstamon.nagstamon still doesn't work.

@HenriWahl
Copy link
Owner

At least I can confirm that the flatpak does not run on a fresh Fedora 40 Plasma install.

I tried to run it from source on Fedora 40 Plasma and there it runs with Python 3.12.3 and Qt 6.7.0. Qt6 is missing some multimedia backend:

grafik

Maybe this leads to a solution, I will check later.

@timodenissen
Copy link
Author

With some recent QT updates, I now get these new messages:

qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairRequested(QString)
qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairDone(Solid::ErrorType, QVariant, QString)
qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairRequested(QString)
qt.core.qobject.connect: QObject::connect: No such signal Solid::Backends::Fstab::FstabStorageAccess::repairDone(Solid::ErrorType, QVariant, QString)

@HenriWahl
Copy link
Owner

Does it run? And in which context did you get this updates? On your Linux system or in virtualenv?

@timodenissen
Copy link
Author

Does it run? And in which context did you get this updates? On your Linux system or in virtualenv?

Regular updates on my productive laptop with Arch Linux. The flatpak still doesn't work and still won't show a GUI as well.

The following QT packages are installed:

python-pyqt5 5.15.10-2
python-pyqt5-sip 12.13.0-2
python-pyqt6 6.7.0-2
python-pyqt6-sip 13.6.0-2
python-qtpy 2.4.1-3
qt5-base 5.15.13+kde+r145-1
qt5-charts 5.15.13-1
qt5-declarative 5.15.13+kde+r30-1
qt5-feedback 0.0.0.20150918-4
qt5-graphicaleffects 5.15.13-1
qt5-imageformats 5.15.13+kde+r7-1
qt5-location 5.15.13+kde+r6-1
qt5-multimedia 5.15.13+kde+r2-1
qt5-networkauth 5.15.13-1
qt5-quickcontrols 5.15.13-1
qt5-quickcontrols2 5.15.13+kde+r5-1
qt5-script 5.15.16-4
qt5-sensors 5.15.13-1
qt5-speech 5.15.13+kde+r1-1
qt5-svg 5.15.13+kde+r6-1
qt5-tools 5.15.13+kde+r4-1
qt5-translations 5.15.13-1
qt5-wayland 5.15.13+kde+r60-1
qt5-webchannel 5.15.13+kde+r3-1
qt5-webengine 5.15.16-6
qt5-websockets 5.15.13+kde+r2-1
qt5-webview 5.15.13-1
qt5-x11extras 5.15.13-1
qt5-xmlpatterns 5.15.13-1
qt6-5compat 6.7.0-1
qt6-base 6.7.0-6
qt6-charts 6.7.0-1
qt6-declarative 6.7.0-1
qt6-httpserver 6.7.0-1
qt6-imageformats 6.7.0-1
qt6-location 6.7.0-1
qt6-multimedia 6.7.0-1
qt6-multimedia-ffmpeg 6.7.0-1
qt6-networkauth 6.7.0-1
qt6-positioning 6.7.0-2
qt6-quick3d 6.7.0-1
qt6-quicktimeline 6.7.0-1
qt6-scxml 6.7.0-1
qt6-sensors 6.7.0-1
qt6-shadertools 6.7.0-1
qt6-speech 6.7.0-1
qt6-svg 6.7.0-1
qt6-tools 6.7.0-2
qt6-translations 6.7.0-1
qt6-virtualkeyboard 6.7.0-1
qt6-wayland 6.7.0-1
qt6-webchannel 6.7.0-1
qt6-webengine 6.7.0-1
qt6-websockets 6.7.0-1
qt6-webview 6.7.0-1
qtkeychain-qt5 0.14.3-1
qtkeychain-qt6 0.14.3-1

@timodenissen
Copy link
Author

Okay now this is strange... I have no new Arch updates installed since yesterday and wanted to dive deepter into debugging. I installed Nagstamon via flatpak in an Ubuntu 24.04 VM and it worked, went back to Arch and... now it's working.

After cloning this repository to /tmp and starting nagstamon.py from the just very checked out repository I was presented with the "Create new configuration" dialog window. My configuration is gone but at least I can work with Nagstamon again.

Running Nagstamon via the AUR package works as intended again.

For me this issue is resolved.

@richarson
Copy link

I still can't run nagstamon, either from flatpak or from git, under X11 or Wayland.

Under Wayland from git I get additional errors, maybe due to Fedora's python version (3.12.3)?:

$ ./nagstamon.py
/home/richis/bin/Nagstamon/Nagstamon/thirdparty/zabbix_api.py:293: SyntaxWarning: invalid escape sequence '\s'
  if re.search(".*already\sexists.*", jobj["error"]["data"], re.I):  # already exists
/home/richis/bin/Nagstamon/Nagstamon/Servers/Livestatus.py:71: SyntaxWarning: invalid escape sequence '\d'
  m = re.match('.*?://([^:/]+?)(?::(\d+))?(?:/|$)', self.monitor_url)
/home/richis/bin/Nagstamon/Nagstamon/Servers/Monitos3.py:90: SyntaxWarning: invalid escape sequence '\d'
  m = re.match('.*?://([^:/]+?)(?::(\d+))?(?:/|$)', self.monitor_url)
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
QLayout: Attempting to add QLayout "" to StatusWindow "", which already has a layout
qt.multimedia.ffmpeg.libsymbolsresolver: Couldn't load VAAPI library
=2

@richarson
Copy link

OK, those additional errors are fixed/silenced with this Arch fix:

sed -i Nagstamon/QUI/qt.py -e "s/QT_VERSION_STR.split('.')/QT_VERSION_STR.split('.')[0:3]/"

Still, nagstamon is not working for me :(

@HenriWahl
Copy link
Owner

Okay now this is strange... I have no new Arch updates installed since yesterday and wanted to dive deepter into debugging. I installed Nagstamon via flatpak in an Ubuntu 24.04 VM and it worked, went back to Arch and... now it's working.

After cloning this repository to /tmp and starting nagstamon.py from the just very checked out repository I was presented with the "Create new configuration" dialog window. My configuration is gone but at least I can work with Nagstamon again.

Running Nagstamon via the AUR package works as intended again.

For me this issue is resolved.

Really strange, nice to hear it is solved for you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants