You are not logged in.

#1 2020-11-06 17:28:52

NorkNork
Member
Registered: 2020-09-06
Posts: 3

Problems with DBUS and EOG under GNOME

I'm having issues getting dbus-launch to work correctly on my fresh Arch install with GNOME.

I found the issue because I tried running my wallpaper changer script which I have been running without issue on various GNOME systems for years. The script essentially just calls:

gsettings set org.gnome.desktop.background picture-uri <random-image>

on a timer. However, when I tried to run it on my new system, it crashed with the following error:

dconf-WARNING **: failed to commit changes to dconf: Error spawning command line 'dbus-launch --autolaunch=a991971893004f92aff0429e1450bdb0 --binary-syntax --close-stderr': Child process exited with code 1

I googled this error and found a couple of results. The closest hit was https://bbs.archlinux.org/viewtopic.php?id=217756 which I don't think is relevant as it concerns gksudo.

I also found several results such as https://bbs.archlinux.org/viewtopic.php?id=165485 which basically all boil down to deleting .cache/dconf/ or .config/dconf. I tried both multiple times, but nothing changed (except that my other GNOME settings were reset).

At this point, I mostly just wanted to find an alternative way to set my wallpaper automatically, so I tried some things out. However, I realized that there may be more wrong with my system:

When I try to set a wallpaper through eog, it crashes. When started from the terminal (which also prints the dbus warning), the message after crashing is:

free(): double free detected in tcache 2

which I find very concerning. However, this only happens with images on NTFS drives (I want to store my wallpapers either on an external HDD or on a shared partition, both of which I also want to access under Windows).

Setting wallpapers through eog works when they're on my primary (ext4) drive. However, setting them with gsettings works nowhere.

HOWEVER, when I reboot or log out and back in, the last applied settings are applied.
So for example, when I use gsettings to set an image on the NTFS as drive as my wallpaper, I get an error and it doesn't work, but when I log out and back in, the wallpaper has been set.

I tried a couple of other things that I thought might fix the problem:

- I replaced dbus with dbus-x11. This gets rid of the error messages but doesn't make it work.

- I tried running GNOME under Wayland instead of X (I have an NVIDIA card so GNOME runs on X by default). No change.

TL;DR

- Dconf (and possibly other things) are broken on my fresh install.
- gsettings has no effect when executed, but seems to apply settings after restarting the session.
- eog has weird crashes when dealing with images on NTFS partitions.
- None of the easily googleable solutions seem to work.

What's wrong with my system?

Offline

#2 2020-11-06 22:42:02

NorkNork
Member
Registered: 2020-09-06
Posts: 3

Re: Problems with DBUS and EOG under GNOME

After hours of debugging, I've found the culprit: I had my shell set up to automatically connect to the tmux server, which was running as a systemd service. Apparently, this setup made it so that DBUS communication no longer worked properly. Calling gsettings from outside of tmux works fine. I'm still not quite sure I understand how exactly this breaks things, but at least I know what not to do now.

Offline

Board footer

Powered by FluxBB