3

I have my wallpapers stored on Dropbox organized by dimensions and I would like to have them available to GNOME. However, I have found this is absurdely hard to do, as even complex searches on various engines render useless results.

I can not have them stored on the global path (/usr/share/backgrounds) as this computer has a lot of users and they shouldn't be able to choose my wallpapers. Also, I would like to keep them stored on different directories for every dimension. I don't mind updating 5 or 6 lines if I add another directory.

Where is the default path for users, if there is any, or how can I enable this and have my own wallpapers?

2
  • Which version of Gnome are you using?
    – Wilf
    Commented Jun 2, 2014 at 17:53
  • @Wilf 3.12.1, the latest
    – ranieri
    Commented Jun 3, 2014 at 18:08

2 Answers 2

3

Yes, I agree that this is suprisingly hard to do. What I have found out it that the right way to do this is to add an XML file to ~/.local/share/gnome-background-properties/. This XML should contain references to all your wallpapers. You can probably find an example file in /usr/share/gnome-background-properties.

I know this doesn't really answer your question, but it might get you started. I got most of this from here

2
  • Strangely enough, adding the xml file to ~/.local/share/gnome-background-properties/ did nothing.
    – ptkato
    Commented Dec 31, 2016 at 3:47
  • It worked for me on (Gnome 40). I copied /usr/share/gnome-background-properties/gnome-backgrounds.xml to ~/.local/share/gnome-background-properties/gnome-backgrounds.xml and changed name tags to not collide with existing wallpapers and they appeared in the Background settings. Commented Oct 7, 2021 at 9:07
1

I'd look to use an application to do this. Here are 2 ways that I've used on Fedora and CentOS in the past, but I would assume that both these approaches would work for Arch as well.

Wallpapoz

Is an applet that runs in your GNOME taskbar.

  • You can download the RPM from here for various Fedora/CentOS versions.
  • The main site for it is here.
  • The main github tree is here.

ss of wallpapoz

Shell script

Here's a bash script that will cycle through a list of images.

#!/bin/bash
#Default values
pictdir="$HOME/Pictures"
time=1h

#Wallpaper names
fnme=('wp1.jpg' 'wp2.jpg' 'wp3.jpg')

fin=${#fnme[@]}
let bck=$fin-1

#Exit if the script is already running, just in case
#Got this part of script somewhere in this forum
if pidof -x $(basename $0) > /dev/null; then
  for p in $(pidof -x $(basename $0)); do
    if [ $p -ne $$ ]; then
      echo "Script $0 is already running: exiting"
      exit
    fi
  done
fi

#This is where the desktop wallpaper changes
for (( i=0;i<$fin;i++ )); do
    sleep $time #wait for $time second(s)
    gconftool-2 --type string --set /desktop/gnome/background/picture_filename $pictdir/${fnme[${i}]}
    if [ $i -eq $bck ]; then
         let i=-1
    fi
done

It makes use of gconftool-2. I haven't tried this on CentOS 6.x yet so it might require some tweaking, but I have used it on Fedora and CentOS 5.x. The script is courtesy of this linuxquestions thread.

Wallch

Available here. Haven't tried it but it's purported to work on GNOME 2 & 3. There's a nice review of Wallch here.

ss wallch

Dropbox

With either of these approaches you can simply point them into your DropBox synced folder where the images are being kept. I use something similar using SparkleShare to sync my wallpaper images across my various systems.

2
  • It seems ridiculously dumb needing to use another application for something GNOME already does for me, it just is so badly documented.
    – ranieri
    Commented Jun 3, 2014 at 18:08
  • @ranisalt - agreed but sometimes it's about getting a task done and working, not that the solution is glamorous 8-).
    – slm
    Commented Jun 3, 2014 at 18:12

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .