Hi all. Here's a little script that will run a specified screensaver as a script on your desktop. If you call it again with the name of a different screensaver, the first one will be killed and the second one started. If you call it again with the name of the same screensaver, the original one will be called.
dss plamsa 0.3 #run plasma on desktop at 0.3 opacity
dss atlantis #runs atlantis on desktop
dss juggler3d #kills atlantis, runs juggler on desktop
dss juggler3d #kill juggler
You can assign the script to hotkeys, panel items, etc etc.
Note I think this only works with xgl- I haven't got it going under standard gnome etc.
First up, you'll need xwinwrap:
Then paste the following into a file and make it executable. I call mine dss for Desktop Screen Saver, and I keep it in /usr/bin
sudo apt-get install xwinwrap
# Desktop screen saver flip flopper
# This script runs a screensaver on your desktop,
# and drops the name of the screensaver in a marker file.
# When run a second time, it will kill the screensaver,
# and optionaly start another, if the name of a different screensaver
# is passed as an arg.
# Requires xwinwrap to be installed.
# dir to write marker file to
#Niceness to run screen saver at. The lower this value, the higher
#priority the screensaver will be. The higher the value, the jerkier
#the screensaver will be, and the less it will intefere with your
#directory where your screensavers live
if [ -z "$1" ]
echo "Usage: dss <screensaver> <opacity>"
echo " where <screensaver exists in $SSDIR, and opacity (optional) is between 0.0 and 1.0"
if [ -z $2 ]
if [ -e $DIR.flipflopmarker ]
#get the name of the currently running desktop screensaver
#kill it, remove the marker file
killall `cat $DIR.flipflopmarker`
if [ "$SCREENSAVER" != "$OLDSCREENSAVER" ]
#start the screensaver, write the name of it to a file
nice -n $NICENESS xwinwrap -ni -o $OPACITY -argb -fs -s -st -sp -b -nf -- $SSDIR$1 -root -window-id WID &
echo $SCREENSAVER > $DIR.flipflopmarker