Xfce Forum

Sub domains
 

You are not logged in.

#26 2020-03-17 20:16:26

Sharky
Member
Registered: 2014-08-16
Posts: 48

Re: [SOLVED] xfce4-notifyd stopped working with an error message

Killing them causes them to immediately respawn whereas with Terminate they stay dead. Another thing I've learned from this!

systemctl --user start xfce4-notifyd.service
Failed to start xfce4-notifyd.service: Unit xfce4-notifyd.service failed to load properly: File exists.
See user logs and 'systemctl --user status xfce4-notifyd.service' for details.
systemctl --user status xfce4-notifyd.service
● xfce4-notifyd.service - XFCE notifications service
   Loaded: error (Reason: Unit xfce4-notifyd.service failed to load properly: File exists.)
   Active: inactive (dead)

Mar 17 11:18:04 Poseidon systemd[1576]: xfce4-notifyd.service: Two services allocated for the same bus name org.freedesktop.

Spawns pager & 'systemctl --user status xfce4-notifyd.service' in Task Manager. Closing that terminal kills both.

notify-send test test

nothing happens.

fgrep -ri notif /usr/share/dbus-1/services/*
/usr/share/dbus-1/services/org.knopwob.dunst.service:Name=org.freedesktop.Notifications
/usr/share/dbus-1/services/org.xfce.xfce4-notifyd.Notifications.service:Name=org.freedesktop.Notifications
/usr/share/dbus-1/services/org.xfce.xfce4-notifyd.Notifications.service:Exec=/usr/lib/x86_64-linux-gnu/xfce4/notifyd/xfce4-notifyd
/usr/share/dbus-1/services/org.xfce.xfce4-notifyd.Notifications.service:SystemdService=xfce4-notifyd.service

cheers for continuing help!! Just seen the xfce donate button so will do so.

Offline

#27 2020-03-17 21:09:44

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,948

Re: [SOLVED] xfce4-notifyd stopped working with an error message

/usr/share/dbus-1/services/org.knopwob.dunst.service:Name=org.freedesktop.Notifications

You have dunst installed. It's conflicting. Uninstall it and make sure that file doesn't exist anymore. Then reboot.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#28 2020-03-17 21:23:27

Sharky
Member
Registered: 2014-08-16
Posts: 48

Re: [SOLVED] xfce4-notifyd stopped working with an error message

Great spot, thanks. One more quick one - do you know a way that I could find either what installed or needed dunst as a dependency, and/or what is depending on it currently? Seems unlikely that I would have installed it myself without having been prompted by another program...

Thanks again for everything!

Offline

#29 2020-03-17 21:44:59

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,948

Re: [SOLVED] xfce4-notifyd stopped working with an error message

Try:

apt-cache showpkg dunst

...it should show you what it depends on and what depends on it.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#30 2020-03-17 21:50:21

Sharky
Member
Registered: 2014-08-16
Posts: 48

Re: [SOLVED] xfce4-notifyd stopped working with an error message

Groovy, as suspected, i3, a product so over my head it might as well have been designed by aliens.

Cheers again Toz for all your help!

Offline

#31 2021-01-02 22:30:25

frmald
Member
Registered: 2021-01-02
Posts: 22

Re: [SOLVED] xfce4-notifyd stopped working with an error message

So, thanks to this thread for helping me find the problem. Hopefully... I mean I haven't logged out and back in yet.

Conclusions: XFCE + dbus + systemd is so incredibly fragile that installing other window managers (like `dwm`, which in turn brings in `dunst`) breaks essential services. Also, Debian's configure script for dunst / xfce-notify / etc should make sure those packages are not enabled at the same time. And, as expected, any errors of the type that the whole window-esque dbus/systemd ecosystem so wisely chosen by "them youngsters" generates are only debuggable by dbus experts -- not newbies and certainly not old-timers (when  you see this kind of c**p on an OS that used to work just fine, you tend to rant, not put up with it and try to fix it -- which is what this paragraph is about I guess).

What a sorry mess...

In any case, shouldn't it be possible to mask or disable dunst instead of uninstalling it? Also, why doesn't systemd simply pick one randomly instead of breaking so... helpfully?

Offline

#32 2021-01-02 23:16:14

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 10,948

Re: [SOLVED] xfce4-notifyd stopped working with an error message

Some more info since this thread was first started.....

Have a read through https://gitlab.xfce.org/apps/xfce4-notifyd/-/issues/27. Building xfce4-notifyd with "--disable-dbus-start-daemon" makes it launch as a .desktop file on startup. In my tests, it then overrides the co-installed dunst service.

But as noted in the link above, it should be a distro decision on which method to use.

BTW, welcome to the forums.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

#33 2021-01-03 01:03:43

frmald
Member
Registered: 2021-01-02
Posts: 22

Re: [SOLVED] xfce4-notifyd stopped working with an error message

Thanks! Great info.

For now I have solved it via `systemctl --global disable dunst.service`.

Of course, getting `systemctl --global` to work is actually a delicate business.... You can't run it as a normal user, as it needs to write to `/etc`. You can't run it from `sudo`, as *for some reason* it needs to connect to a user DBUS session (even though this is `systemctl --global`, not `--user`) and sudo doesn't preserve the user's $DBUS_SESSION_BUS_ADDRESS (or create a session for root). You can't even run it via `sudo -E`, or `sudo -E bash`, because presumably it needs some other unknown environment thingies.

In my experience (Ubuntu Focal here), the only way to get `systemctl --global` to work is to switch to a virtual console (ctrl+alt+f1), log in as root (yeah, you need to enable that via passwd beforehand), then type the command.

Easier way: `systemctl --user mask dunst.service` for each user.

[EDIT]

Actually, `sudo -E systemctl --global`, or calling via `sudo -E bash` seems to work.

Last edited by frmald (2021-01-03 01:28:52)

Offline

Board footer

Powered by FluxBB