Open xcpky opened 1 month ago
and I find this error in gnome extension
Hello,
Ah, looks like an error occurred while disabling the extension. Gnome disables the extension on Screen Lock and enables on Unlock. I will look into it. If you logout and log back in, the error and issue should go away. Something like this was reported in another extension as a one-off so that's what I expect here too. But need to figure out the root cause. I will need a few inputs:
Thanks for reporting!
❯ SHELL_DEBUG=all journalctl /usr/bin/{gjs,gnome-shell} -fo cat
Failed to launch ibus-daemon: Failed to execute child process “ibus-daemon” (No such file or directory)
Window manager warning: Overwriting existing binding of keysym 7e with keysym 2f7259c9 (keycode 31).
Window manager warning: Overwriting existing binding of keysym 5d with keysym 7d (keycode 23).
Window manager warning: Overwriting existing binding of keysym 5b with keysym 7b (keycode 22).
GNOME Shell started at Mon Sep 30 2024 14:20:07 GMT+0800 (China Standard Time)
Registering session with GDM
Connection to xwayland lost
Xwayland terminated, exiting since it was mandatory
(../mutter/src/core/meta-context.c:585):meta_context_terminate: runtime check failed: (g_main_loop_is_running (priv->main_loop))
Gio.DBusError: GDBus.Error:org.freedesktop.DBus.Error.UnknownProperty: Unknown interface org.freedesktop.IBus or property Engines.
Stack trace:
_promisify/proto[asyncFunc]/</<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:453:45
@resource:///org/gnome/shell/ui/init.js:21:20
### Promise created here: ###
_initEngines@resource:///org/gnome/shell/misc/ibusManager.js:168:34
_onConnected@resource:///org/gnome/shell/misc/ibusManager.js:161:14
@resource:///org/gnome/shell/ui/init.js:21:20
g_signal_handler_disconnect: assertion 'handler_id > 0' failed
g_signal_handler_disconnect: assertion 'handler_id > 0' failed
g_signal_handler_disconnect: assertion 'handler_id > 0' failed
g_signal_handler_disconnect: assertion 'handler_id > 0' failed
g_signal_handler_disconnect: assertion 'handler_id > 0' failed
g_signal_handler_disconnect: assertion 'handler_id > 0' failed
Extension openbar@neuromorph: Error: Argument tag: value is out of range for uint32
Stack trace:
source_remove@resource:///org/gnome/gjs/modules/script/mainloop.js:79:17
clearTimeout@file:///home/ykpcx/.local/share/gnome-shell/extensions/switcher@landau.fi/util.js:15:44
disable@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/extension.js:1523:25
_callExtensionDisable@resource:///org/gnome/shell/ui/extensionSystem.js:215:32
_onEnabledExtensionsChanged@resource:///org/gnome/shell/ui/extensionSystem.js:637:24
async*_sessionUpdated@resource:///org/gnome/shell/ui/extensionSystem.js:824:20
ExtensionManager/<@resource:///org/gnome/shell/ui/extensionSystem.js:46:18
_callHandlers@resource:///org/gnome/gjs/modules/core/_signals.js:130:42
_emit@resource:///org/gnome/gjs/modules/core/_signals.js:119:10
_sync@resource:///org/gnome/shell/ui/sessionMode.js:205:14
pushMode@resource:///org/gnome/shell/ui/sessionMode.js:167:14
activate@resource:///org/gnome/shell/ui/screenShield.js:614:34
SetActive@resource:///org/gnome/shell/ui/shellDBus.js:528:32
_handleMethodCall@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:329:38
_wrapJSObject/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:408:34
@resource:///org/gnome/shell/ui/init.js:21:20
#PaperWM disabled
Source ID 6261 was not found when attempting to remove it
Window manager warning: Overwriting existing binding of keysym ff09 with keysym ff09 (keycode 17).
Window manager warning: Overwriting existing binding of keysym ff09 with keysym ff09 (keycode 17).
clutter_actor_insert_child_at_index: assertion 'child->priv->parent == NULL' failed
Window manager warning: Event has no timestamp! You may be using a broken program such as xse. Please ask the authors of that program to fix it.
clutter_actor_remove_child: assertion 'child->priv->parent != NULL' failed
clutter_actor_remove_child: assertion 'child->priv->parent != NULL' failed
#PaperWM enabled
JS ERROR: TypeError: appIndicator is undefined
#handleAppIndicatorItem@file:///home/ykpcx/.local/share/gnome-shell/extensions/top-bar-organizer@julian.gse.jsts.xyz/extensionModules/BoxOrderManager.js:51:27
addNewItemsToBoxOrder@file:///home/ykpcx/.local/share/gnome-shell/extensions/top-bar-organizer@julian.gse.jsts.xyz/extensionModules/BoxOrderManager.js:232:60
saveNewTopBarItems@file:///home/ykpcx/.local/share/gnome-shell/extensions/top-bar-organizer@julian.gse.jsts.xyz/extensionModules/BoxOrderManager.js:258:30
#handleNewItemsAndOrderTopBar@file:///home/ykpcx/.local/share/gnome-shell/extensions/top-bar-organizer@julian.gse.jsts.xyz/extension.js:164:31
handleNewItemsAndOrderTopBar@file:///home/ykpcx/.local/share/gnome-shell/extensions/top-bar-organizer@julian.gse.jsts.xyz/extension.js:69:47
#overwritePanelAddToPanelBox/Panel.Panel.prototype._addToPanelBox@file:///home/ykpcx/.local/share/gnome-shell/extensions/top-bar-organizer@julian.gse.jsts.xyz/extension.js:77:13
addToStatusArea@resource:///org/gnome/shell/ui/panel.js:948:14
addIconToPanel@file:///home/ykpcx/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/indicatorStatusIcon.js:50:16
onTrayIconAdded@file:///home/ykpcx/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com/trayIconsManager.js:98:29
@resource:///org/gnome/shell/ui/init.js:21:20
Error looking up permission: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for geolocation
Window manager warning: Overwriting existing binding of keysym 7e with keysym 2f7259c9 (keycode 31).
Window manager warning: Overwriting existing binding of keysym 7d with keysym 5d (keycode 23).
Window manager warning: Overwriting existing binding of keysym 7b with keysym 5b (keycode 22).
here is the log.
Are you able to reproduce the error or was it a one-off?
I can reproduce it every time.
just wait for screen locking or trigger it mannually by the following command
gdbus call --session --dest org.gnome.ScreenSaver --object-path /org/gnome/ScreenSaver --method org.gnome.ScreenSaver.SetActive true
Did logout and log back in fix the issue?
Yes.
Thank you for the log!
I wasn't still able to recreate it using the Screensaver command here on Ubuntu and Fedora but got a fair idea about what maybe causing the error.
I have added a fix to the main
branch here on GitHub. You can get the updated extension here - openbar@neuromorph
Replacing the extension.js
file should be enough for this issue.
EDIT: You will need to log out and log back in after updating.
Let me know if the fix works for you.
It works! And there is no error for openbar. However there are still some subtle issues. After I log back in from screen lock, the fcitx5 input icon becomes square. And it became normal shape immediately after I made the screenshot below Actually sometimes such issue happens in other scenarios, and after some kind of refresh it turns into the normal shape. I try lock the screen for another time, the weird shape doesn't come up but the tri/island alpha returns back to default value, which I set to 0.01 before.
[edit] another try, the square for fcitx5 comes up gain, and the reset of tri/island alpha doesn't happen, weird...
btw, I find xdg-screensaver lock
should be the most general command for triggering screen saver.
I have added a fix to this issue in GitHub main
branch. Mainly for the square button. When extensions get enabled by Gnome (at unlcok for example), OpenBar styles the buttons in the panel and applies triland styles based on if the button is first, middle or last etc. What happens is that some buttons may still be getting added to the panel during/after openbar styling and that makes them inconsistent. I have added a style refresh in 1 sec to fix it. There are also some event based style refreshes and that is why you see it already getting fixed when that happens, but now hopefully it will be quicker.
the weird shape doesn't come up but the tri/island alpha returns back to default value, which I set to 0.01 before.
I did not understand the alpha part. In case, it is still an issue, please elaborate on what exactly happens with it, maybe some screenshot.
You can get the updated extension here - openbar@neuromorph
Please install manually from there - (replacing extension.js
and stylesheets.js
should do)
You will need to log out and log back in after the change.
Let me know if it works. Thanks!
The update seems effective
I did not understand the alpha part. In case, it is still an issue, please elaborate on what exactly happens with it, maybe some screenshot.
The above screenshot illustrates "the tri/island alpha returns back to default value". To compare, see the normal screenshot below
And, this time when the "the tri/island alpha returns back to default value", it's actually a result of gnome session "crash". Here is what happens:
So, Here are two issues, one is the crash, another is the "tri/island alpha" settings being reset to the default value. And I believe the crash is caused by openbar because this is not the first time and the crash doesn't happen before I use it. Still, I believe we need to confirm it, maybe you could please help me how to debug it.
And, this time when the "the tri/island alpha returns back to default value", it's actually a result of gnome session "crash".
Oh crap, the crash. It looks like issue #63 . Such a crash issue has been reported for Trialnds (as mentioned above) and Candybar as well. Apparently it does not appear for other bar types e.g. 'Islands'. The main issue is from upstream Gnome/Mutter as I understand and is being tracked here. There is a MR but for some reason it is still open. The MR is by Ubuntu developer and might have been added to Ubuntu since I am not facing it at all on Ubuntu 24.04 now a days. Previously I was able to reproduce it but only intermittently.
Anyway, we will need to confirm the stack trace to make sure it is the same issue. To get the stack trace: Immediately after the crash, i.e. after Gnome has restarted,
journalctl -b0
or journalctl -b1
.coredumpctl list
to list the crashes and then coredumpctl info
on relevant one.In the crash log, I search for 'neuromorph', 'openbar', 'stylesheet' or the typical candidate in this issue 'st_theme_node_lookup_shadow' to find relevant part.
One thing I noticed is that the issue was not happening on Disabling the extension but happened on screen lock/logout which also leads to Disable being called by Gnome. The difference is that on lock/logout, the Panel is changed by Gnome and most widgets are removed except Quick Settings. This happens in parallel as OpenBar is also removing its styles/changes as required to be done on Disable and somehow a situation is created that triggers the underlying upstream bug.
One more thing you could try is to add 'unlcok-dialog' session to OpenBar so it can run on Lock screen. The trouble is that, even if it is marked to run on Lock screen, Gnome still disables it (potentially many times) and enables it again as part of their rebasing algorithm. Anyway, to do this, you will need to add an entry to the metadata.json
file. The line to add is :
"session-modes": ["user", "unlock-dialog"]
after adding comma to the last line showing version.
Lets see what all info we can gather, I will keep looking for the solution accordingly.
Thanks!
Update:
I have changed the way Trilands is implemented in an attempt to avoid the crash scenario. This might solve it.
You can get the updated extension here - openbar@neuromorph
Please install manually from there - (replacing extension.js
and stylesheets.js
should do)
Let me know if that works for you.
Finally it crashed, (I didn't install your latest commit), it is still caused by a screen unlock.
here's the log from journalctl -b0
and I believe these logs are related.
...skipping...
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 7 threads of 4 processes of 1 users.
Oct 10 17:05:41 ykpcx wireplumber[1918]: wp-internal-comp-loader: Loading profile 'main'
Oct 10 17:05:41 ykpcx lipstick[1915]: 💄 Setting dark colour scheme for bat (bat)
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Successfully made thread 1922 of process 1922 owned by '1000' high priority at nice level -11.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 8 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 8 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 8 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Successfully made thread 1930 of process 1922 owned by '1000' RT at priority 20.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 9 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 9 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 9 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 9 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 9 threads of 5 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Successfully made thread 1918 of process 1918 owned by '1000' high priority at nice level -11.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 10 threads of 6 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Successfully made thread 1939 of process 1918 owned by '1000' RT at priority 20.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 11 threads of 6 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Successfully made thread 1917 of process 1917 owned by '1000' high priority at nice level -11.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 12 threads of 7 processes of 2 users.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Successfully made thread 1929 of process 1917 owned by '1000' RT at priority 20.
Oct 10 17:05:41 ykpcx rtkit-daemon[1140]: Supervising 13 threads of 7 processes of 2 users.
Oct 10 17:05:41 ykpcx gnome-shell[1486]: clutter_actor_remove_child: assertion 'child->priv->parent != NULL' failed
Oct 10 17:05:41 ykpcx gnome-shell[1486]: clutter_actor_remove_child: assertion 'child->priv->parent != NULL' failed
Oct 10 17:05:41 ykpcx gnome-shell[1486]: Error looking up permission: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for geolocation
Oct 10 17:05:41 ykpcx gnome-shell[1486]: #PaperWM enabled
Oct 10 17:05:41 ykpcx systemd[1313]: Created slice Slice /app/dbus-:1.3-org.gnome.Settings.SearchProvider.
Oct 10 17:05:41 ykpcx systemd[1313]: Started dbus-:1.3-org.gnome.Settings.SearchProvider@0.service.
Oct 10 17:05:41 ykpcx gnome-shell[1486]: Failed to reload stylesheet: TypeError: obar.obarRunDir is undefined
writeStylesheet@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/stylesheets.js:3753:21
reloadStyle@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/stylesheets.js:3804:28
updatePanelStyle@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/extension.js:575:25
enable/<@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/extension.js:1381:18
createCheckedMethod/<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:730:46
triggerStyleReload@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/autothemes.js:1120:24
onModeChange@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/autothemes.js:1075:23
onModeChange@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/extension.js:990:20
enable@file:///home/ykpcx/.local/share/gnome-shell/extensions/openbar@neuromorph/extension.js:1446:22
_callExtensionEnable@resource:///org/gnome/shell/ui/extensionSystem.js:264:38
loadExtension@resource:///org/gnome/shell/ui/extensionSystem.js:476:32
async*_loadExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:784:24
async*_enableAllExtensions@resource:///org/gnome/shell/ui/extensionSystem.js:790:48
_sessionUpdated@resource:///org/gnome/shell/ui/extensionSystem.js:825:20
async*init@resource:///org/gnome/shell/ui/extensionSystem.js:74:14
_initializeUI@resource:///org/gnome/shell/ui/main.js:301:22
start@resource:///org/gnome/shell/ui/main.js:173:11
@resource:///org/gnome/shell/ui/init.js:12:47
@resource:///org/gnome/shell/ui/init.js:21:20
Oct 10 17:05:41 ykpcx kernel: warning: `gnome-shell' uses wireless extensions which will stop working for Wi-Fi 7 hardware; use nl80211
Oct 10 17:05:42 ykpcx gnome-shell[1486]: Window manager warning: Overwriting existing binding of keysym 7d with keysym 5d (keycode 23).
Oct 10 17:05:42 ykpcx gnome-shell[1486]: Window manager warning: Overwriting existing binding of keysym 7b with keysym 5b (keycode 22).
Oct 10 17:05:42 ykpcx gnome-shell[1486]: Window manager warning: Overwriting existing binding of keysym 2f7259c9 with keysym 7e (keycode 31).
Oct 10 17:05:42 ykpcx systemd[1313]: Started app-flatpak-org.remmina.Remmina-1697.scope.
Oct 10 17:05:42 ykpcx systemd[1313]: Starting Portal service...
Oct 10 17:05:42 ykpcx systemd[1313]: Starting Virtual filesystem metadata service...
Oct 10 17:05:42 ykpcx systemd[1313]: Started Virtual filesystem metadata service.
.....................
17:05 should be the time when I tried to unlock
and I'll try your latest git from now.
This log does not have any crash report. With journalctl -b
, we basically get bootlog with the number indicating current vs previous boots. So, need to look for correct one. Instead you can try coredumpctl list
to see if it lists a crash report and then coredumpctl info
to get details.
This log does have an error though wherein it failed to reload the stylesheet. It complains that the runtime directory where the stylesheet resides is undefined while it gets defined during extension 'enable'. I will have a look into it.
I'll try your latest git from now.
Yeh, try with that. Let me know if you face any error or crash. Especially, if you could reproduce it earlier then try to do it with this new version. Lets hope it works OK.
Thanks!
it crashes again with the latest git version, here is the log from coredumpctl info
gnome-shell-core-dump.txt
and in case you need it, here is all the enabled extensions:
I'll switch to island mode temporarily and hope I won't get crashed. Feel free to let me know if you need more logs or help.
it crashes again with the latest git version, here is the log from coredumpctl info
This is indeed the same crash from the upstream Gnome/Mutter issue mentioned earlier. I tried many tricks to avoid it since it seems to appear only for specific bar types (mainly Trilands and Candybar) but evidently it did not work. And since there are tons of different configs/setups that people use, I haven't been able to reliably reproduce it in VMs.
BTW, my main system is on Ubuntu. The MR I mentioned earlier for the upstream bug, was raised by an Ubuntu developer and they confirmed that they have already merged it in Ubuntu and possibly why I am not facing the crash at all on this system.
The other extensions you have should not ideally cause an issue but you could try by disabling all and only enabling OpenBar and then see if you can reproduce the crash.
Also another thing, as mentioned earlier, is to add 'unlcok-dialog' session to OpenBar. See if that helps to avoid the crash.
Let me know if any updates.
Hello, I am also experiencing this issue where using Open Bar with the trilands configuration causes a crash after logging in from a hybernation. I'm on Fedora 40 and Gnome 46. I have confirmed this by disabling all other extensions except for Open Bar. Using other bar styles prevents crashes. I haven't tried running with the link you provided, but I plan to. Just to confirm, I do this by copying/replacing the files in /~/.local/share/gnome-shell/extensions/openbar@neuromorph (or wherever it's installed)?
Hello,
I am also experiencing this issue where using Open Bar with the trilands configuration causes a crash after logging in from a hybernation.
That is unfortunate! There is an upstream bug mentioned in a comment above. There is also a MR linked there. It was raised by an Ubuntu developer and has been merged in Ubuntu but Gnome/Mutter for some reason have not added any fix. The reason could be that the default Gnome does not does not face this issue currently. From the linked issue and MR what I understand is that on lock/suspend/hibernate when Gnome disables the extensions, their stylesheets are unloaded and in some cases old references remain in the cache pointing to old/invalid memory locations resulting in a segfault. The MR tries to clean it up and seems to be working since I am not facing any crash on Ubuntu. It may be helpful if you people also comment on the upstream issue and MR asking about the fix being merged in Gnome. I am running out of options as to what could I do to get around it since nothing seems to be working.
I haven't tried running with the link you provided, but I plan to.
Yes, do try the version from GitHub to see if it helps. It also has some other minor fixes that will land in the next update.
Just to confirm, I do this by copying/replacing the files in /~/.local/share/gnome-shell/extensions/openbar@neuromorph (or wherever it's installed)?
Correct, just download the files from GitHub and replace your local install at that location. You will need to logout and log back in for the new files to take effect.
Thanks!
Edit: I just thought of something else I could do. Let me know how the current GitHub version works out and in couple days I will try to push the next (maybe last) possible attempt to get around it locally (until upstream fix gets added) :crossed_fingers:
@xcpky , @j0of
I have added another update to the same location in GitHub. This time I am trying a different way to avoid the crash for Trilands. Please try it out and let me know. It is only for Trilands, so keep Candybar off. The Candybar style classes will still be added to the stylesheet but will be empty. If issue persists, I might try to remove them altogether to isolate the test for trilands. There are also some minor things to iron out (mainly for Neon border) in this version but it can be done later if it helps at all.
Let's see if that helps.
Hi @neuromorph , apologies for the delayed response. I actually thought I sent a follow-up already, but it looks like I didn't 😅 I just downloaded the newest update, and the crashing is persisting on my end. However, I believe the previous iteration seemed to have fixed it, and I just forgot to hit the Comment button the first time haha
Yeh, I was looking forward to hear back from you guys. Oh, the latest one didn't work :face_exhaling: I was hoping it would as similar logic could have been applied to Candybar as well. Also I had some thought behind it. Basically, I moved the Trilands styling from stylesheet to js in attempt to avoid stylesheet unload issue.
The previous version went other way round, moving mostly from js to stylesheet. If the previous version worked, that would be good as well at least for Trilands. The commit corresponding to it is - https://github.com/neuromorph/openbar/commit/c366570366e4aae0400a14cec98b35532d399893
If I get some confirmation on if it does solve the issue for Trilands then I will push the next update with it. I am also trying to see if I can recreate the crash using a Fedora in VM.
Thanks for getting back. You can try to revert to previous version from the commit and see if that helps.
Just confirmed that the previous commit works by replacing the new files with the ones from c366570 😺 @neuromorph
Unfortunately, after applying c366570 and enabling triland for a few days, gnome-shell just crashed again.
Describe the bug weird triland shape after signing in from screen lock
To Reproduce
Relevant Specs:
Screenshots