5

In XFCE 4.10 I can refresh my desktop background with xfdesktop --reload.

I would like to know how I can do the same for as many as possible other desktop environments (Unity, KDE, LXDE, Mate, Cinnamon, GNOME2, GNOME3,...).

3
  • GNOME 3: gsettings set org.gnome.desktop.background picture-uri file://${outputFile} Commented Feb 23, 2014 at 15:39
  • Perhaps this is not possible with all desktop environments. On the xplanetFX homepage, I read: "Seamless wallpaper change in GNOME, KDE < 4.3, XFCE and XFCE4, Fluxbox and feh wallpaper changer (KDE > 4.3 with workaround)". Commented Feb 23, 2014 at 20:13
  • It seems that Unity and KDE do not require any command at all. Both desktop environments refresh the wallpaper automatically upon change of the wallpaper file. Commented Feb 24, 2014 at 18:21

2 Answers 2

3

Here is a code example which detects the desktop the environment and reloads the dynamic wallpaper background explicitly when required by the detected desktop environment.

The code should work with GNOME 3, KDE 4, Unity and XFCE. Tested answers with solutions for other desktop environments are welcomed and will be up-voted.

if [ "$XDG_CURRENT_DESKTOP" = '' ] then DESKTOPENV=$(echo "$XDG_DATA_DIRS" | sed 's/.*\(xfce\|kde\|gnome\).*/\1/') else DESKTOPENV=$XDG_CURRENT_DESKTOP fi DESKTOPENV=${DESKTOPENV,,} # convert to lower case case $DESKTOPENV in 'gnome') { gsettings set org.gnome.desktop.background picture-uri file:///tmp/wallpaper.png' # GNOME 3 only };; 'kde') { : };; 'unity') { : };; 'xfce') { xfdesktop --reload };; esac 
2

You can set the content of the root window (i.e. the background) independently of the window manager or desktop environment. The traditional utility xsetroot only supports a solid color or a black-and-white image. Many image viewing programs can load a color image in popular bitmap formats to the root window, for example the xsetbg utility from Xloadimage or the display utility from ImageMagick or GraphicsMagick.

xsetbg /path/to/image.png display -window root /path/to/image.png gm display -window root /path/to/image.png 

This doesn't affect your desktop environment's notion of the wallpaper, so it may decide to display its own content in place of yours from time to time.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.