Xfce Another post about a broken XFCE4, perhaps?

On the FreeBSD 14.* branch, I've noticed an odd bug – I can't change the desktop background in XFCE4.
When I open the desktop settings, I get a series of warning pop-up dialogues stating: "Unable to load images from the null folder."
I'm using the Russian interface, and I'll try to keep the translation as close to the original as possible. As far as I recall, this issue didn’t occur in the 13.* branch!
I'm not exactly a super-programmer, but please tell me how I can help! We need to sort this situation out somehow!
 
Ports/packages have very little to do with the version of FreeBSD. All versions use the same ports tree, thus have the same applications available to them (with some notable exceptions, but this isn't one of them).
 
No problem here with xfce4-desktop-4.20.1, no warning pop-up dialogues, desktop background changes without an incident.
 
Hi, I had no problem here on my 2 XFCE setups.
When I have problems with my XFCE session, I do this successfully :
  1. Logout (important ! It will not work if you're logged into your session)
  2. Run from another tty : rm -r ~/.cache/sessions (I generally do a mv for backup "in case of" but it's useless)
  3. Login again or reboot.
I also used to use pkg upgrade -f libexo, but I don't know if it's relevant.

I hope it can be helpful to you :)
 
I've deleted the cache and configurations - it didn't help. It looks like this:

333.png
 
This is when I try to change the background settings. I have FreeBSD installed as a guest operating system under VMWare.
 
Stupid question but, does the source directory ("xfce" dir) exists ? What are the permissions/owner on it ?
I think it does work fine, but something makes the current directory path broken, thus leading to your error.

For me, the default wallpapers path leads to :
Code:
/usr/local/share/backgrounds/xfce/
(owner root/wheel, drwxr-xr-x ; pictures are root/wheel, -rw-r--r--)
If I'm not wrong, it's called here :
Code:
/home/youruser/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
(properties called last-image)

It might also be a problem with the language (?), if it's not UTF-8 it would break the directory path...?
These are just clues...

You might have better luck here, same problem on GhostBSD :
 
Perceval, here I have compiled the answers to your assumptions, what I have:

Bash:
[root@freebsd-pc /home/majestio] # ls -la /usr/local/share/backgrounds
total 18
drwxr-xr-x    3 root wheel   3 Dec  4 14:55 .
drwxr-xr-x  101 root wheel 101 Dec  4 14:55 ..
drwxr-xr-x    2 root wheel  13 Dec  4 14:55 xfce
[root@freebsd-pc /home/majestio] # ls /usr/local/share/backgrounds/xfce/
xfce-blue.jpg           xfce-flower.svg         xfce-light.svg          xfce-shapes.svg         xfce-teal.svg           xfce-x.svg
xfce-cp-dark.svg        xfce-leaves.svg         xfce-mouserace.svg      xfce-stripes.svg        xfce-verticals.svg
[root@freebsd-pc /home/majestio] # cat /home/majestio/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
<?xml version="1.1" encoding="UTF-8"?>

<channel name="xfce4-desktop" version="1.0">
  <property name="last-settings-migration-version" type="uint" value="1"/>
  <property name="last" type="empty">
    <property name="window-width" type="int" value="827"/>
    <property name="window-height" type="int" value="547"/>
  </property>
  <property name="desktop-icons" type="empty">
    <property name="file-icons" type="empty">
      <property name="show-home" type="bool" value="false"/>
      <property name="show-filesystem" type="bool" value="false"/>
      <property name="show-trash" type="bool" value="false"/>
    </property>
  </property>
</channel>
[root@freebsd-pc /home/majestio] # locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_ALL=
[root@freebsd-pc /home/majestio] #
exit
[majestio@freebsd-pc ~] $ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_ALL=
[majestio@freebsd-pc ~] $ uname -a
FreeBSD freebsd-pc 15.0-RELEASE FreeBSD 15.0-RELEASE releng/15.0-n280995-7aedc8de6446 GENERIC amd64

If I'm not mistaken, everything still worked fine in xfce4 version 4.18. And 4.20 problems are only *BSD specific. I have not encountered this in Linux distributions.
 
Hello,
try to exclude permissions problem with running xfce under root
I have no problems with 4.20, also my config a little bit different with your one (due to last-image block)
 
Ok, thanks. No ideia then, I'm using xfce also on an ufs root and haven't got the issue you are reporting.
If you are using lightdm check the .xsession error log on your home folder it may have some information (though i doubt it).
 
Fahrenheit, thank you so much for getting involved!

I’m genuinely pleased that this thread has sparked at least some interest. The thing is, among my friends and acquaintances, the vast majority are firmly camped under Windows, with a smaller contingent on Linux, while I – with my long-standing (and, dare I say, deep affection for) FreeBSD – am invariably dismissed as some sort of dinosaur. Yet I’ve been on quite a journey with FreeBSD, going all the way back to version 5.0.

Yes, I fully appreciate that, at its core, FreeBSD remains very much a server-oriented system. All the same, wanting a properly functioning XFCE4 desktop hardly strikes me as an outrageous demand. In any case, my patience is still more than sufficient to see me through, even if XFCE4 continues to throw the occasional wobbly. Truth be told, I could sort the specific issue that’s bothering me right now with the blunt-force approach of simply swapping in the wallpaper I want by replacing the file manually.

The real problem, however, is how on earth one is supposed to wrestle with one’s own blooming perfectionism – that’s the proper trouble and the absolute ambush!
 
I have a completely clean install as a guest system under VMWare.
Perhaps following problem reports may provide a possible solution (web search result of "xfce unable to load images from folder null" pattern).

This here runs xfce in a unspecified virtual machine. To get monitor name for monitor setting in xfce4-desktop.xml, run xrandr.



Running xfce-4.20 in a VirtualBox VM, shows this in ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml. Note "monitorVGA-0"
XML:
<?xml version="1.1" encoding="UTF-8"?>

<channel name="xfce4-desktop" version="1.0">
  <property name="last-settings-migration-version" type="uint" value="1"/>
  <property name="backdrop" type="empty">
    <property name="screen0" type="empty">
      <property name="monitorVGA-0" type="empty">
        <property name="workspace0" type="empty">
          <property name="last-image" type="string" value="/usr/local/share/backgrounds/xfce/xfce-x.svg"/>
        </property>
      </property>
    </property>
  </property>
  <property name="last" type="empty">
    <property name="window-width" type="int" value="916"/>
    <property name="window-height" type="int" value="589"/>
  </property>
</channel>
 
Right, just so we’re all on the same page… Whenever I manage to get something properly configured, installed, or otherwise working smoothly, I tend to jot down the “successful” steps in my own blog. Well, the streak of good fortune rather ran out with FreeBSD 13.x. Here are the links to my blog (apologies, it’s entirely in Russian—I don’t speak English myself and am chatting with you through an online translator). That said, I don’t imagine it’ll be much trouble for you to run the pages through Google Translate or similar; most of the content is technical terminology anyway:
  1. My general FreeBSD section
  2. This is me getting to grips with FreeBSD 13.0
  3. And here I decided to put together a minimal server configuration with an extremely lightweight GUI - probably just for the sake of having Conky running
 
Perhaps following problem reports may provide a possible solution (web search result of "xfce unable to load images from folder null" pattern).

This here runs xfce in a unspecified virtual machine. To get monitor name for monitor setting in xfce4-desktop.xml, run xrandr.



Running xfce-4.20 in a VirtualBox VM, shows this in ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml. Note "monitorVGA-0"
XML:
<?xml version="1.1" encoding="UTF-8"?>

<channel name="xfce4-desktop" version="1.0">
  <property name="last-settings-migration-version" type="uint" value="1"/>
  <property name="backdrop" type="empty">
    <property name="screen0" type="empty">
      <property name="monitorVGA-0" type="empty">
        <property name="workspace0" type="empty">
          <property name="last-image" type="string" value="/usr/local/share/backgrounds/xfce/xfce-x.svg"/>
        </property>
      </property>
    </property>
  </property>
  <property name="last" type="empty">
    <property name="window-width" type="int" value="916"/>
    <property name="window-height" type="int" value="589"/>
  </property>
</channel>
Thanks, I'll check it out today!
 
I had the same problem on my acer aspire laptop with intel n3540 processor. I can't change the wallpaper as long as I use the scfb video driver. After installing and using the old xf86-video-intel driver changing wallpapers worked again. Using the scfb-driver I got the same error messages as you did. I use xfce on bare metal and not in a vm. The modesetting driver doesn't work at all ... and I saw several posts in this forum about this issue with intel n3540 processors.
 
Code:
[majestio@freebsd-pc ~]$ xfconf-query -c xfce4-desktop -l | grep monitor
/backdrop/screen0/monitor0/workspace0/image-style
/backdrop/screen0/monitor0/workspace0/last-image
The appropriate settings are on file "~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml" : screen0, monitor0, workspace0
 
Did you enable d-bus?
Code:
[majestio@freebsd-pc ~] $ cat /etc/rc.conf
hostname="freebsd-pc"
font8x16="ter-u16.fnt"
keymap="ru.win"
ifconfig_em0="DHCP"
ifconfig_em0_ipv6="inet6 accept_rtadv"
sshd_enable="YES"
ntpd_enable="YES"
ntpd_sync_on_start="YES"
moused_nondefault_enable="NO"
dumpdev="NO"
zfs_enable="YES"

dbus_enable="YES"
hald_enable="YES"
vmware_guest_vmblock_enable="YES"
vmware_guest_vmhgfs_enable="YES"
vmware_guest_vmmemctl_enable="YES"
vmware_guest_vmxnet_enable="YES"
vmware_guestd_enable="YES"
 
Back
Top