Here's a script I use to set my wallpaper to a random one from interfacelift.com. Perhaps someone else might find this useful
I am using GNOME on Lucid, so that's the only setup I have tested.
This gets the top wallpaper from the Random Wallpaper page on InterfaceLift for a 1080p screen and stores it in wallpaper.jpg file in your home directory. You can change that first URL to whatever you need. -U "Mozilla/5.0" part is important to avoid browser filtering on their website. The touch part triggers the wallpaper update.
Put the script into a file and don't forget to give it execute permissions.
Run it once from your home directory
Now set your wallpaper to the wallpaper.jpg file in your home directory.
To make the wallpaper update every set amount of minutes add the following to your cron jobs list. To access it, enter the following in the terminal
Now add a line like the following
This will update your wallpaper every 15 minutes. To update every hour, the line should look like this:
Hope this helps.
Edit: added -q flags to wget to prevent a lot of useless stderror from getting sent to the system mail. This, however prevents error messages from getting logged as well.
I am using GNOME on Lucid, so that's the only setup I have tested.
Code:
#!/bin/bash wget -q -U "Mozilla/5.0" -O - http://interfacelift.com/wallpaper_beta/downloads/random/hdtv/ \\ | grep download.png \\ | sed 's/^\\s*<[^>]\\+download.*$/http:\\/\\/www.interfacelift.com\\1/' \\ | head -n 1 \\ | wget -q -U "Mozilla/5.0" -i - -O wallpaper.jpg.tmp mv wallpaper.jpg.tmp wallpaper.jpg touch wallpaper.jpg
Put the script into a file and don't forget to give it execute permissions.
Code:
chmod +x script.sh
Now set your wallpaper to the wallpaper.jpg file in your home directory.
To make the wallpaper update every set amount of minutes add the following to your cron jobs list. To access it, enter the following in the terminal
Code:
crontab -e
Code:
*/15 * * * * /path/to/script
Code:
* */1 * * * /path/to/script
Edit: added -q flags to wget to prevent a lot of useless stderror from getting sent to the system mail. This, however prevents error messages from getting logged as well.








