-! Any program which can draw on the root window will work as a screensaver.
-! The following resource enumerates them.
-!
-! Programs are separated by newlines (specified in resource files with \n).
-! Lines may be continued with a lone \ at the end of the line.
-!
-! Each line is an `sh' command.
-!
-! But, if the first word on the line is the name of a visual followed by a
-! colon, then that visual will be used for the program, if it is available.
-! If no such visual is available, then the program will be skipped. In
-! this way, you can specify that you want certain programs to run only
-! on color screens, and others only on mono screens, by making use of the
-! magic visual names "color" and "mono". Likewise, if some hacks prefer
-! colormaps, but others prefer 24-bit windows, that also can be arranged
-! (in this case, by using "PseudoColor:" versus "TrueColor:".)
-!
-! All programs must be launched in such a way that they draw on the root
-! window; they should not be spawned in the background with "&". If shell
-! metacharacters are used, they must be understandable to `sh', not `csh'
-! (the $SHELL variable is not consulted, for unfortunate but good reasons.)
-!
-! Be sure to check out Demo Mode: run the command `xscreensaver-command -demo'
-! and it will cause the running XScreenSaver program to pop up a dialog box
-! that lets you try out the following programs interactively. See the man
-! pages for details.
-!
-*programs: qix -root -solid -delay 0 -segments 100 \n\
- attraction -root -mode balls \n\
- attraction -root -mode lines -points 3 -segments 200 \n\
- attraction -root -mode splines -segments 300 \n\
- attraction -root -mode lines -radius 300 \
- -orbit -vmult 0.5 \n\
- pyro -root \n\
- helix -root \n\
- pedal -root \n\
- rorschach -root -offset 7 \n\
- hopalong -root \n\
- greynetic -root \n\
- xroger -root \n\
- imsmap -root \n\
- slidescreen -root \n\
- decayscreen -root \n\
- jigsaw -root \n\
- blitspin -root -grab \n\
- slip -root \n\
- hypercube -root \n\
- halo -root \n\
- maze -root \n\
- noseguy -root \n\
- flame -root \n\
- lmorph -root \n\
- deco -root \n\
- moire -root \n\
- moire2 -root \n\
- lightning -root \n\
- strange -root \n\
- spiral -root \n\
- laser -root \n\
- grav -root \n\
- grav -root -trail -decay \n\
- drift -root \n\
- ifs -root \n\
- julia -root \n\
- penrose -root \n\
- sierpinski -root \n\
- braid -root \n\
- galaxy -root \n\
- bouboule -root \n\
- swirl -root \n\
- flag -root \n\
- sphere -root \n\
- forest -root \n\
- lisa -root \n\
- lissie -root \n\
- goop -root \n\
- starfish -root \n\
- starfish -root -blob \n\
- munch -root \n\
- fadeplot -root \n\
- coral -root \n\
- mountain -root \n\
- triangle -root \n\
- worm -root \n\
- rotor -root \n\
- ant -root \n\
- vines -root \n\
- kaleidescope -root \n\
- xjack -root \n\
- cynosure -root \n\
- flow -root \n\
- epicycle -root \n\
- interference -root \n\
- truchet -root -randomize \n\
- bsod -root \n\
- crystal -root \n\
- discrete -root \n\
- kumppa -root \n\
- \
- mono: rocks -root \n\
- color: rocks -root -fg darksalmon \n\
- \
- mono: qix -root -linear -count 5 -size 200 -spread 30 \
- -segments 75 -solid -xor \n\
- \
- color: attraction -root -mode polygons \n\
- color: attraction -root -mode filled-splines -segments 0 \n\
- color: attraction -root -glow -points 10 \n\
- color: bubbles -root \n\
- \
- color: rd-bomb -root \n\
- color: rd-bomb -root -speed 1 -size 0.1 \n\
- \
- PseudoColor: qix -root -count 4 -solid -transparent \n\
- PseudoColor: qix -root -count 5 -solid -transparent -linear \
- -segments 250 -size 100 \n\
-@GL_KLUDGE_1@
-@GL_KLUDGE_2@ gears -root \n\
-@GL_KLUDGE_2@ superquadrics -root \n\
-@GL_KLUDGE_2@ morph3d -root \n\
-@GL_KLUDGE_2@ cage -root \n\
-@GL_KLUDGE_2@ moebius -root \n\
-@GL_KLUDGE_2@ stairs -root \n\
-@GL_KLUDGE_2@ pipes -root \n\
-@GL_KLUDGE_2@ sproingies -root \n\
-@GL_KLUDGE_2@ rubik -root \n\
-@GL_KLUDGE_2@ atlantis -root \n\
-@GL_KLUDGE_2@ lament -root \n\
-@GL_KLUDGE_2@ bubble3d -root \n
-
-
-! A few of the hacks require OpenGL, and will only be built if you have it.
-! If your vendor doesn't provide real OpenGL, you might want to consider
-! building MesaGL, which is a free implementation -- GL is way cool.
-!
-! Note that those hacks (gears, superquadratics, morph3d, cage, moebius,
-! stairs, pipes, sproingies, and rubik) tend to work best on a visual *half*
-! as deep as the depth of the screen, since that way, they can do
-! double-buffering -- try it and see, but you will probably find that you
-! should specify the deepest visual that is half as deep as the screen.
-!
-! For example, on a screen that supports both 24-bit TrueColor and 12-bit
-! PseudoColor, the 12-bit visual will probably work best (this is true of
-! base-model SGI Indys: the 0x29 visual is the one you want.) Oddly, on SGI
-! O2s, (machines that have serious hardware support for GL) the 12-bit
-! PseudoColor visual looks awful (you get a black and white, flickery image.)
-! On these machines, the visual you want turns out to be 0x31 -- this is but
-! one of the eight 15-bit TrueColor visuals (yes, 8, and yes, 15) that O2s
-! provide. This is the only visual that works properly -- as far as xdpyinfo
-! is concerned, all of the 15-bit TrueColor visuals are identical, but some
-! flicker like mad, and some have deeply weird artifacts (hidden surfaces
-! show through!) I suppose these other visuals must be tied to some arcane
-! hardware feature... Your mileage, therefore, may vary dramatically.
-!
-! Some other programs that you might want to track down (these work as
-! XScreenSaver helpers, but are not distributed with it):
-!
-! xdaliclock -root -builtin2 \n\
-! xswarm -r 2>&- \n\
-! xwave -root \n\
-! xbouncebits ... \n\
-! ico -r -faces -sleep 1 -obj ico \n\
-! xsplinefun \n\
-! xmountains -b -M \n\
-! color: xfishtank -c black -d -r 2 \n\
-!
-! xtacy is ok, but it only works on the default visual. We can satisfy
-! that constraint like so:
-!
-! default: xtacy -root -delay 100 -funky -number 3 \n\
-! default: xtacy -root -delay 100 -gravity \n\
-! default: xtacy -root -delay 100 -mixer \n\
-! default: xtacy -root -delay 100 -taffy -pal 4 \n\
-!
-! To display a randomized slideshow of images, you can do something like this:
-!
-! default-n: xv -root -rmode 5 image-1.gif -quit
-! default-n: xv -root -rmode 5 image-2.gif -quit
-! default-n: xv -root -rmode 5 image-3.gif -quit
-! ...and so on...
-!
-! Note that we've used "default-n" as the visual name, rather than just
-! "default": this means "default visual, no install", that is, it's like
-! specifying the command-line arguments "-visual default -no-install".
-! This is necessary because, when XV is running in "-root" mode, it always
-! assumes that the default visual and colormap are being used, rather than
-! examining the window it is drawing on to see what visual and colormap it
-! has. If we didn't force the default visual to be used, xv would get an
-! X error. If we didn't force the default colormap to be installed, the
-! colors would be all wrong. "default-i" may also be used as a visual name
-! (meaning, "-visual default -install") but you probably won't ever need
-! to use that.
-!
-! XEarth is nice, too:
-!
-! default-n: xearth -nostars -wait 0 -timewarp 400 -pos sunrel/38/-30
-!
-!
-! Some of the GL demos that SGI ships work with XScreenSaver; most don't.
-! XScreenSaver includes a program (not built or installed by default)
-! called "xscreensaver-sgigl". To use the SGI demos with XScreenSaver,
-! build that program, and use it to launch the SGI demos. For example,
-! on Irix 6.2, you can do this:
-!
-! xscreensaver-sgigl /usr/demos/bin/ep -S
-! xscreensaver-sgigl /usr/demos/bin/bongo
-!
-! On Irix 6.3, things have moved, so you need to do it like this:
-!
-! xscreensaver-sgigl /usr/sbin/ep -S
-!
-! You can also use the "ant" demo, but first you need to wrap a shell script
-! around it that cds to its home directory, so that it can find its files;
-! and also pass it the -S argument, to prevent it from forking.
-!
-!
-! Also, since these actually end up mapping their own windows instead of
-! drawing on the XScreenSaver-provided root, when they are being run from
-! demo-mode, you can't pop up the demo-mode dialog just by clicking the
-! mouse: you must first type ESC to make the SGI programs exit. This sucks.
-! Things should work properly when they are being run by xscreensaver in
-! non-demo-mode, however.
-!
-! Basically, the SGI demo writers went out of their way to make my life hell.
+! This is the list of installed screen saver modes. See "man xscreensaver"
+! for the syntax used here.
+!
+! If you want to disable a screensaver, DO NOT remove it from this list:
+! instead, mark it as inactive by placing a "-" at the beginning of the line.
+!
+! You can use the `xscreensaver-demo' program to edit the current list of
+! screen savers interactively.
+!
+*programs: \
+ "Qix (solid)" qix -root -solid -segments 100 \n\
+ "Qix (transparent)" qix -root -count 4 -solid -transparent \n\
+ "Qix (linear)" qix -root -count 5 -solid -transparent \
+ -linear -segments 250 -size 100 \n\
+- "Qix (xor)" qix -root -linear -count 5 -size 200 \
+ -spread 30 -segments 75 -solid -xor \n\
+ \
+ "Attraction (balls)" attraction -root -mode balls \n\
+ "Attraction (lines)" attraction -root -mode lines -points 3 \
+ -segments 200 \n\
+- "Attraction (poly)" attraction -root -mode polygons \n\
+ "Attraction (splines)" attraction -root -mode splines -segments \
+ 300 \n\
+ "Attraction (orbital)" attraction -root -mode lines -radius 300 \
+ -orbit -vmult 0.5 \n\
+ \
+ pyro -root \n\
+ rocks -root \n\
+ helix -root \n\
+ pedal -root \n\
+ rorschach -root -offset 7 \n\
+ hopalong -root \n\
+ greynetic -root \n\
+ imsmap -root \n\
+ slidescreen -root \n\
+ decayscreen -root \n\
+ jigsaw -root \n\
+ blitspin -root -grab \n\
+ slip -root \n\
+ distort -root \n\
+ spotlight -root \n\
+ "Ripples (oily)" ripples -root -oily -light 2 \n\
+ "Ripples (stir)" ripples -root -oily -light 2 -stir \n\
+ "Ripples (desktop)" ripples -root -water -light 6 \n\
+ hypercube -root \n\
+- hyperball -root \n\
+ halo -root \n\
+ maze -root \n\
+ noseguy -root \n\
+ flame -root \n\
+- lmorph -root \n\
+ deco -root \n\
+ moire -root \n\
+ moire2 -root \n\
+ lightning -root \n\
+ strange -root \n\
+- spiral -root \n\
+ laser -root \n\
+ grav -root \n\
+ "Grav (trails)" grav -root -trail -decay \n\
+ drift -root \n\
+ ifs -root \n\
+ julia -root \n\
+ penrose -root \n\
+- sierpinski -root \n\
+ braid -root \n\
+ galaxy -root \n\
+ bouboule -root \n\
+ swirl -root \n\
+ flag -root \n\
+ sphere -root \n\
+ forest -root \n\
+- lisa -root \n\
+- lissie -root \n\
+ goop -root -max-velocity 0.5 -elasticity \
+ 0.9 \n\
+ starfish -root \n\
+ "Starfish (blob)" starfish -root -blob \n\
+ munch -root \n\
+ mismunch -root \n\
+ fadeplot -root \n\
+ coral -root -delay 0 \n\
+ mountain -root \n\
+ triangle -root -delay 1 \n\
+- worm -root \n\
+- rotor -root \n\
+- ant -root \n\
+- demon -root \n\
+- loop -root \n\
+- vines -root \n\
+ kaleidescope -root \n\
+ xjack -root \n\
+ xlyap -root -randomize \n\
+ cynosure -root \n\
+ flow -root \n\
+ epicycle -root \n\
+ interference -root \n\
+ truchet -root -randomize \n\
+ bsod -root \n\
+ crystal -root \n\
+ discrete -root \n\
+ kumppa -root \n\
+ rd-bomb -root \n\
+ "RD-Bomb (mobile)" rd-bomb -root -speed 1 -size 0.1 \n\
+ sonar -root \n\
+ t3d -root \n\
+ penetrate -root \n\
+ deluxe -root \n\
+ compass -root \n\
+ squiral -root \n\
+ xflame -root \n\
+ wander -root \n\
+ "Wander (spots)" wander -root -advance 0 -size 10 -circles \
+ -length 10000 -reset 100000 \n\
+- critical -root \n\
+ phosphor -root \n\
+ xmatrix -root \n\
+ petri -root -size 2 -count 20 \n\
+ "Petri 2" petri -root -minlifespeed 0.02 \
+ -maxlifespeed 0.03 -minlifespan 1 \
+ -maxlifespan 1 -instantdeathchan 0 \
+ -minorchan 0 -anychan 0.3 \n\
+ shadebobs -root \n\
+ ccurve -root \n\
+ blaster -root \n\
+ bumps -root \n\
+ xteevee -root \n\
+ xanalogtv -root \n\
+ xspirograph -root \n\
+ nerverot -root \n\
+- "NerveRot (dense)" nerverot -root -count 1000 \n\
+- "NerveRot (thick)" nerverot -root -count 100 -line-width 4 \
+ -max-nerve-radius 0.8 -nervousness 0.5 -db \n\
+ xrayswarm -root \n\
+- "Zoom (Fatbits)" zoom -root \n\
+ "Zoom (Lenses)" zoom -root -lenses \n\
+ rotzoomer -root \n\
+- "RotZoomer (mobile)" rotzoomer -root -move \n\
+- "RotZoomer (sweep)" rotzoomer -root -sweep \n\
+ whirlwindwarp -root \n\
+ "WhirlyGig" whirlygig -root \n\
+ "SpeedMine" speedmine -root \n\
+ "SpeedWorm" speedmine -root -worm \n\
+ vermiculate -root \n\
+ twang -root \n\
+ apollonian -root \n\
+ euler2d -root \n\
+ "Euler2d (dense)" euler2d -root -count 4000 -eulertail 400 \
+ -ncolors 230 \n\
+- juggle -root \n\
+ polyominoes -root \n\
+- thornbird -root \n\
+ fluidballs -root \n\
+ anemone -root \n\
+ halftone -root \n\
+ metaballs -root \n\
+ eruption -root \n\
+ popsquares -root \n\
+ barcode -root \n\
+ piecewise -root \n\
+ cloudlife -root \n\
+ "FontGlide" fontglide -root -page \n\
+ "FontGlide (scroller)" fontglide -root -scroll \n\
+ apple2 -root \n\
+ bubbles -root \n\
+ pong -root \n\
+ wormhole -root \n\
+ pacman -root \n\
+ fuzzyflakes -root \n\
+ anemotaxis -root \n\
+ memscroller -root \n\
+ substrate -root \n\
+ intermomentary -root \n\
+ fireworkx -root \n\
+- default-n: webcollage -root \n\
+- default-n: "WebCollage (whacked)" \
+ webcollage -root -filter \
+ 'vidwhacker -stdin -stdout' \n\
+- default-n: vidwhacker -root \n\
+ \
+@GL_KLUDGE@ GL: gears -root \n\
+@GL_KLUDGE@ GL: "Gears (planetary)" gears -root -planetary \n\
+@GL_KLUDGE@ GL: superquadrics -root \n\
+@GL_KLUDGE@ GL: morph3d -root \n\
+@GL_KLUDGE@ GL: cage -root \n\
+@GL_KLUDGE@ GL: moebius -root \n\
+@GL_KLUDGE@ GL: stairs -root \n\
+@GL_KLUDGE@ GL: pipes -root \n\
+@GL_KLUDGE@ GL: sproingies -root \n\
+@GL_KLUDGE@ GL: rubik -root \n\
+@GL_KLUDGE@ GL: atlantis -root -gradient \n\
+@GL_KLUDGE@ GL: lament -root \n\
+@GL_KLUDGE@ GL: bubble3d -root \n\
+@GL_KLUDGE@ GL: glplanet -root \n\
+@GL_KLUDGE@ GL: flurry -root -preset random \n\
+@GL_KLUDGE@ GL: pulsar -root \n\
+- GL: "Pulsar (textures)" \
+ pulsar -root -texture -mipmap \
+ -texture_quality -light -fog \n\
+@GLE_KLUDGE@GL: extrusion -root \n\
+@GL_KLUDGE@ GL: sierpinski3d -root \n\
+@GL_KLUDGE@ GL: menger -root \n\
+@GL_KLUDGE@ GL: "GFlux" gflux -root \n\
+@GL_KLUDGE@ GL: "GFlux (grab)" gflux -root -mode grab \n\
+@GL_KLUDGE@ GL: stonerview -root \n\
+@GL_KLUDGE@ GL: starwars -root \n\
+@GL_KLUDGE@ GL: gltext -root \n\
+@GL_KLUDGE@ GL: "GLText (clock)" gltext -text "%A%n%d %b %Y%n%r" -root \n\
+@GL_KLUDGE@ GL: "Molecule" molecule -root \n\
+@GL_KLUDGE@ GL: "Molecule (lumpy)" molecule -root -no-bonds -no-labels \n\
+@GL_KLUDGE@ GL: dangerball -root \n\
+@GL_KLUDGE@ GL: circuit -root \n\
+@GL_KLUDGE@ GL: engine -root \n\
+@GL_KLUDGE@ GL: flipscreen3d -root \n\
+@GL_KLUDGE@ GL: glsnake -root \n\
+@GL_KLUDGE@ GL: boxed -root \n\
+- GL: "GLForestFire" glforestfire -root \n\
+- GL: "GLForestFire (rain)" glforestfire -root -count 0 \n\
+- GL: sballs -root \n\
+@GL_KLUDGE@ GL: cubenetic -root \n\
+@GL_KLUDGE@ GL: spheremonics -root \n\
+@GL_KLUDGE@ GL: lavalite -root \n\
+@GL_KLUDGE@ GL: queens -root \n\
+@GL_KLUDGE@ GL: endgame -root \n\
+- GL: glblur -root \n\
+@GL_KLUDGE@ GL: atunnel -root \n\
+@GL_KLUDGE@ GL: flyingtoasters -root \n\
+@GL_KLUDGE@ GL: bouncingcow -root \n\
+@GL_KLUDGE@ GL: jigglypuff -root -random \n\
+@GL_KLUDGE@ GL: klein -root -random \n\
+@GL_KLUDGE@ GL: "HyperTorus (striped)" hypertorus -root \n\
+@GL_KLUDGE@ GL: "HyperTorus (solid)" hypertorus -root -solid -transparent \n\
+@GL_KLUDGE@ GL: glmatrix -root \n\
+@GL_KLUDGE@ GL: cubestorm -root \n\
+@GL_KLUDGE@ GL: glknots -root \n\
+@GL_KLUDGE@ GL: blocktube -root \n\
+@GL_KLUDGE@ GL: flipflop -root \n\
+@GL_KLUDGE@ GL: antspotlight -root \n\
+- GL: glslideshow -root \n\
+@GL_KLUDGE@ GL: polytopes -root \n\
+@GL_KLUDGE@ GL: gleidescope -root \n\
+- GL: mirrorblob -root \n\
+@GL_KLUDGE@ GL: "MirrorBlob (color only)" \
+ mirrorblob -root -colour -no-texture \n\
+@GL_KLUDGE@ GL: blinkbox -root \n\
+@GL_KLUDGE@ GL: noof -root \n\
+@GL_KLUDGE@ GL: polyhedra -root \n\
+- GL: antinspect -root \n\
+@GL_KLUDGE@ GL: providence -root \n\
+@GL_KLUDGE@ GL: "Pinion (large gears)" pinion -root \n\
+@GL_KLUDGE@ GL: "Pinion (small gears)" pinion -root -size 0.2 \n\
+@GL_KLUDGE@ GL: pinion -root \n\
+ \
+- xdaliclock -root -builtin3 -cycle \n\
+- default-n: xearth -nofork -nostars -ncolors 50 \
+ -night 3 -wait 0 -timewarp 400.0 -pos \
+ sunrel/38/-30 \n\
+- xplanet -vroot -wait 1 -timewarp 90000 \
+ -label -origin moon \n\
+- xmountains -b -M -Z 0 -r 1 \n\
+- "XMountains (top)" xmountains -b -M -Z 0 -r 1 -m \n\
+- xaos -root -autopilot -nogui -delay 10000 \
+ -maxframerate 30 \
+ -incoloring -1 -outcoloring -1 \n\
+- xfishtank -d -s \n\
+- xsnow \n\
+- goban -root \n\
+- electricsheep \n\
+- cosmos -root \n\
+- GL: sphereEversion --root \n\
+- GL: fireflies -root \n