
One of the reasons I like to use Linux is the ability to set up a lot of eye candy. Some *nix folks are die hard CLI enthusiasts who insist on a full screen emacs session as the be-all end-all use of the operating system. Me? I stare at this machine for countless hours during the day and I prefer to see something prettier than plain text.
When I first became a serious Linux user I cast long and hard for an elegant way to manipulate my wallpaper. After a few weeks of looking, I stumbled on a little plug-in for GkrellM which does exactly what I want in a highly configurable way. This guide is being written on an Ubuntu machine, so I’m going to use Debianish terms here, but GkrellM works under a large number of distributions.
The first piece that we’ll need to put in place is GkrellM itself. This is a system monitor application that I find really useful. I use it to monitor both CPUs on my X60s, to monitor temperature, network activity, grab screen shots and monitoring who’s on my local servers at a glance. Let’s get it.
sudo apt-get install gkrellm
You might also be interested to know that a search for gkrellm under Synaptic will turn up a number of interesting and/or useful plug-ins.
So you’ve got GkrellM installed, let’s launch it. Go to Applications -> System Tools -> GkrellM.
To configure GkrellM click on it and hit the F1 key. Muck about with this a bit and set it up how you like it, because it’s going to be on your screen if you want to run the background changer plugin.
Speaking of that, let’s grab GKrellMBgChg. You can get this somewhat awkwardly named bit of heaven here.
Once you download the package, you’ll have to compile it. Don’t worry if you’ve never done this before, it’s not as hard as it sounds and will add just a smidge to your geek cred afterwards.
I’ll assume you’ve downloaded GkrellMBgChg to your desktop. We’ll create a directory in your home directory, uncompress GkrellMBgChg and compile it there. So open up a terminal and type:
mkdir ageek
You don’t have to call it ageek, but if you’re going to cut and paste from this guide, you’ll do it my way and I’m proud of making more geeks, so ageek it is.
cd ageek
cp ~/Desktop/gkrellmbgchg-version.tar.gz.
tar xvfz gkrellmbgchg-version.tar.gz
Now we’ll grab a few utilities you’ll need to compile this sucker.
sudo apt-get install binutils make
Okay, if you haven’t compiled anything form source, grab onto your keyboards and hold on.
sudo make install
Yeah. That’s it. Now you’ve got the GkrellMBgChg installed in the appropriate place. Tough, huh? If you run into problems, you can check out the GkrellMBgChg homepage, but if you’re using Ubuntu 6.06 (Dapper) then I doubt you’ll have issues.
So now that you’ve got this thing installed and ready to go, let’s add it into GkrellM.
Click one on the GkrellM application on your desktop and gently smash the F1 key.
Now you’re in the GkrellM configuration window. On your left, you’ll see a listing of Monitors that you can use. Click on plug-ins and then check off “Background Changerâ€.
Now expand your plugins seciton by clicking on it, and select Background Changer. (See the image).

Here’s where you can configure this plug-in to do things like change your background every 697 seconds. First, you’ll need to tell it what commands to use, and where to find your artwork. This isnt’ as hard as it sounds.
When you’re looking at the configuration screen, the only thing you’ll want to modify at this time is the option called Background Change Command. It’s the second option from the top. (See pic). Enter the following:
gconftool-2 –type=string –set /desktop/gnome/background/picture_filename

This is for Gnome users only. You can read through the info tab for how to configure other desktops.
You’ll also want to check off the first box, which says “Auto Update Image Listâ€.
Now the picture_filename bit that this references is a text file containing where to find all of these wonderful images. This file is called images.idb and is located in your home folder. Mine is about 2500 lines long. You can create this by hand but come on, you’re a budding Linux guru, so let’s use a little script to do it for you.
You’re still in the ageek directory we created earlier, right? Let’s get out of there and into our home directory and make this script.
cd
gedit wall.sh
Now that you’ve got a gedit session open, but and paste the following into it.
find /media/sda5/wp/*.jpg | sort > images.idb
find /media/sda5/wp/*.png | sort >> images.idb
cat images.idb | wc -l
Now all of my media is located on a fat32 partition that Linux shares with Windows. You’ll want to change the bit that says ‘/media/sda5/wp’ to the location of your artwork.
chmod 755 wall.sh
Now to run it, open up a terminal and type
./wall.sh
This will create the images.idb file for you and also dump out the total number of files you have.
Any time you add new images to your folder, you’ll have to run the wall.sh script again to update the images.idb file. If you’ve checked off that top box then GkrellM will look to see if a new verison of the images.idb file exists, and use that.
Now the last thing we’ll want to do is set GkrellM to launch when you start your computer up. This is of course optional, but if you don’t do it you’ll have to remember to start GkrellM up to get your wallpaper to change.
Go to Preferences -> Sessions and click on the Startup Programs tab. Click the Add button and type gkrellm.
geek out.















August 22nd, 2006 at 10:53 pm
It doesn’t work! The tarball gives off hundreds of errors and won’t make. I hate reading something that sounds so cool that doesn’t work. And I’m running Dapper Drake, too.
Better luck on your next article. This one gets a thumbs down.
August 23rd, 2006 at 5:44 am
Sorry to hear that this won’t make for you. It worked for me out of the box (as you can see from the screen shots).
Do you have gcc installed? Try that, if it works I’ll edit the howto.
geek out
August 23rd, 2006 at 3:43 pm
Thanks for the reply. I do have gcc installed and make, etc. I tried to look in the Makefile but I can’t find what else I need.
August 23rd, 2006 at 5:49 pm
Feel free to send me the complete error list you’re getting (email’s on the upper left there, where it says “Mail Arsgeek”) and I’ll take a look.
geek out.
August 24th, 2006 at 12:12 pm
I’ll try — it basically errors out as soon as I run make. It’s a long list. I will do that, tho’ and send it along. Thanks for looking it over.
October 23rd, 2006 at 11:58 am
I had similar problems. I found I had to install the gtk+2.0 development libraries, and possible the glib development libraries as well. I installed Ubuntu off the live CD, and these did not go in by default (course, neither did gcc, make, or bin-utils)