[solved] Issues with xfce4-notifyd

Hi,

Today I tried to change system notification popups from default top right to bottom right through xfce4-notifyd-config dialog box. I changed “Default position:” to bottom right from drop down and then clicked on “Show Preview” to preview it. It still would show up notifications on top right. I found it strange so I decided to dig further by searching it on this forum.

I found Notifications Config Not Sticky which mentioned to see if dunst was installed which was present on my system and suggested to remove it, hence I removed it through pacman since I never used it or don’t recall any programs using it for notifications since I always used xfce4-notifyd. After which I rebooted the system, but now notification popups still show up on top right position. So, I tried to reinstall xfce4-notifyd through pacman hoping that everything will get reset to functional condition through package reinstall and again rebooted but now notifications won’t show up at all.

When I opened xfce4-notifyd-config again, it showed a warning at top:
2022-01-19_18-21-45

So I searched on internet by this exact phrase and found few posts on xfce forums. They all mentioned to check for xfce4-notifyd.service systemctl service but there was no such service was on my archlabs system.

$ systemctl --user status xfce-notifyd
Unit xfce-notifyd.service could not be found.

I’m not sure how a reinstall of a package made the issue worse than it already was. I couldn’t find the said systemctl service in either of these paths:

/usr/lib/systemd/system/
/usr/lib/systemd/user/
/etc/systemd/system/

although there is a xfce4-notifyd executable binary in /usr/lib/xfce4/notifyd/xfce4-notifyd

when I tried to manually run it, it printed the following traceback:

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.877: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GObject-WARNING **: 18:14:49.877: invalid (NULL) pointer instance

(xfce4-notifyd:956): GLib-GObject-CRITICAL **: 18:14:49.877: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.877: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.877: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.877: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.877: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.877: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.877: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.877: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.877: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.878: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.878: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.878: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.878: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed

(xfce4-notifyd:956): GLib-CRITICAL **: 18:14:49.879: g_propagate_error: assertion 'src != NULL' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_proxy_call_sync_internal: assertion 'G_IS_DBUS_PROXY (proxy)' failed
Another notification daemon is running, exiting

(xfce4-notifyd:956): GLib-GIO-CRITICAL **: 18:14:49.879: g_dbus_interface_skeleton_has_connection: assertion 'G_IS_DBUS_CONNECTION (connection)' failed

(xfce4-notifyd:956): xfconf-CRITICAL **: 18:14:49.879: xfconf_init() must be called before attempting to use libxfconf!

(xfce4-notifyd:956): GLib-GObject-WARNING **: 18:14:49.879: invalid (NULL) pointer instance

(xfce4-notifyd:956): GLib-GObject-CRITICAL **: 18:14:49.879: g_signal_handler_disconnect: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

I couldn’t find any article on arch wiki for xfce4-notifyd so I decided to come here to ask for help to see if anyone has faced this issue and find a solution for this. Any help would be greatly appreciated.

my archlabs DE/WM is openbox. Here is neofetch:

eon@arch 
-------- 
OS: Arch Linux x86_64 
Host: RedmiBook 15 
Kernel: 5.16.1-arch1-1 
Uptime: 32 mins 
Packages: 834 (pacman) 
Shell: zsh 5.8 
Resolution: 1920x1080 
WM: Openbox 
WM Theme: ArchLabs-Dark 
Theme: Adwaita-dark [GTK2/3] 
Icons: ArchLabs-Dark [GTK2/3] 
Terminal: terminator 
CPU: 11th Gen Intel i3-1115G4 (4) @ 4.100GHz 
GPU: Intel Device 9a78 
Memory: 1209MiB / 7734MiB

Please let me know if you need any more info from my side in case I missed it in my above post. Thanks for reading. ^^

xfce4-notifyd is not started as a service. You can launch it automatically via xdg or your .xprofile or other startup scripts.

Check to see if this file presents in your system. You need it to init the dbus session for your usr id.

~ » cat /etc/X11/xinit/xinitrc.d/50-systemd-user.sh                                                      ~
#!/bin/sh
#  SPDX-License-Identifier: LGPL-2.1-or-later
#
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

systemctl --user import-environment DISPLAY XAUTHORITY

if command -v dbus-update-activation-environment >/dev/null 2>&1; then
    dbus-update-activation-environment DISPLAY XAUTHORITY
fi

Hi chroot, thank you for the response!

xfce4-notifyd is not started as a service. You can launch it automatically via xdg or your .xprofile or other startup scripts.

That explains most of my issue. Also, the /etc/X11/xinit/xinitrc.d/50-systemd-user.sh also exists on my system, however when I try to run it manually, it throws:

Failed to connect to bus: No medium found
dbus-update-activation-environment: error: unable to connect to D-Bus: Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead

or perhaps was it not meant to be ran manually?

You need it to init the dbus session for your usr id.

Can you please elaborate what do you mean by this? Sorry for any inconvenience!

It’s because dunst is taking over the notifications.

You can uninstall dunst to get xfce4-notifyd working instead.

???

I literally said I have uninstalled it, in case you missed it.

Sorry for late reply. You use xinit or a login mgr?

You can read Arch systemd wikipage for more info. systemd/User - ArchWiki

Hi,

I use lightdm login manager.

The arch wiki page you have linked, asks to init the dbus session as systemd --user service, where as you have previously mentioned that xfce4-notifyd is not started as service. Now I am more confused than before. :cry:

dbus is meant to be started as a service. xfce4-notifyd is not. You can verify it by,

$pacman -Ql xfce4-notifyd | grep service

Post your /etc/lightdm/Xsession & /etc/X11/xinit/xinitrc.d/, including permissions.

That worked, thank you a lot. I put the xfce4-notifyd in my ~/.xprofile and now it auto starts at login, shows all notifications perfectly. I’ll close this issue. :+1:

Props to @chroot . Glad that you fixed your issue @Eon