! a screen saver and locker for the X window system
! by Jamie Zawinski
!
-! version 4.10
-! 20-May-2003
+! version 4.19
+! 16-Dec-2004
!
! See "man xscreensaver" for more info. The latest version is always
! available at http://www.jwz.org/xscreensaver/
*xidleExtension: True
*procInterrupts: True
+! Set this to True if you are experiencing longstanding XFree86 bug #421
+! (xscreensaver not covering the whole screen)
+GetViewPortIsFullOfLies: False
+
! This is what the "Demo" button on the splash screen runs (/bin/sh syntax.)
*demoCommand: xscreensaver-demo
! Turning on "installColormap" on 8-bit systems interacts erratically with
-! twm and tvtwm, but seems to work fine with mwm and olwm. Try it and see.
-! If your screen turns some color other than black, the window manager is
-! buggy, and you need to set this resource to False (or get a WM that works.)
+! certain jurassic window managers. If your screen turns some color other
+! than black, the window manager is buggy, and you need to set this resource
+! to false. Or switch WMs. Or join the 21st century and get a 24-bit
+! graphics card.
!
*installColormap: True
-! 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.
-!
-! If the first (non-blank) character on the line is "-", then that means
-! that this command is disabled: it's still in the list, but it won't ever
-! be used. (This is just to make it easy to disable and then re-enable
-! them later.)
-!
-! 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:".)
+! This is the list of installed screen saver modes. See "man xscreensaver"
+! for the syntax used here.
!
-! Some of the screenhacks are written using OpenGL. OpenGL programs are
-! a bit different than normal X programs, in that they prefer visuals that
-! are *half* as deep as the screen. You can tell xscreensaver to select a
-! good visual for a GL program by using the magic visual name "GL".
+! 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.
!
-! 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 `xscreensaver-demo' program to
-! edit the current list of programs interactively, try out the various modes,
-! and change other parameters. See the man page for details.
+! 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\
-- mono: "Qix (xor)" qix -root -linear -count 5 -size 200 \
+- "Qix (xor)" qix -root -linear -count 5 -size 200 \
-spread 30 -segments 75 -solid -xor \n\
\
"Attraction (balls)" attraction -root -mode balls \n\
"Ripples (stir)" ripples -root -oily -light 2 -stir \n\
"Ripples (desktop)" ripples -root -water -light 6 \n\
hypercube -root \n\
- hyperball -root \n\
+- hyperball -root \n\
halo -root \n\
maze -root \n\
noseguy -root \n\
flame -root \n\
- lmorph -root \n\
+- lmorph -root \n\
deco -root \n\
moire -root \n\
moire2 -root \n\
lightning -root \n\
strange -root \n\
- spiral -root \n\
+- spiral -root \n\
laser -root \n\
grav -root \n\
"Grav (trails)" grav -root -trail -decay \n\
ifs -root \n\
julia -root \n\
penrose -root \n\
- sierpinski -root \n\
+- sierpinski -root \n\
braid -root \n\
galaxy -root \n\
bouboule -root \n\
flag -root \n\
sphere -root \n\
forest -root \n\
- lisa -root \n\
- lissie -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\
+- 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\
wander -root \n\
"Wander (spots)" wander -root -advance 0 -size 10 -circles \
-length 10000 -reset 100000 \n\
- critical -root \n\
+- critical -root \n\
phosphor -root \n\
xmatrix -root \n\
petri -root -size 2 -count 20 \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\
barcode -root \n\
piecewise -root \n\
cloudlife -root \n\
- color: bubbles -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 \
@GL_KLUDGE@ GL: pipes -root \n\
@GL_KLUDGE@ GL: sproingies -root \n\
@GL_KLUDGE@ GL: rubik -root \n\
-@GL_KLUDGE@ GL: atlantis -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: flipscreen3d -root \n\
@GL_KLUDGE@ GL: glsnake -root \n\
@GL_KLUDGE@ GL: boxed -root \n\
-@GL_KLUDGE@ GL: glforestfire -root \n\
-- GL: glforestfire -root -rain \n\
-@GL_KLUDGE@ GL: sballs -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: 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\
-- xplanetbg -xscreensaver -moonside \
- -markerfile earth -wait 1 -timewarp 400 \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 \
- goban -root \n\
- electricsheep \n\
- cosmos -root \n\
-- GL: sphereEversion --root \n
-
-
-! To display a randomized slideshow of images, you can do something like this:
-!
-! default-n: "Slideshow" xv -root -rmode 5 -random -viewonly \
-! -wloop -wait 30 $HOME/bitmaps/*.jpg \n\
-!
-! Recipes for using other slideshow programs can be found in the
-! XScreenSaver FAQ: http://www.jwz.org/xscreensaver/faq.html
-!
-! 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 or XLI arerunning in "-root" mode, they
-! always assume 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, we 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.
-!
-!
-! 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
-!
-! (But note that, on non-SGIs, the bundled "stonerview" hack is a decent
-! clone of "ep". Yay!)
-!
-! 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. What a mess!
-! Basically, the SGI demo writers went out of their way to make my life hell.
+- GL: sphereEversion --root \n\
+- GL: fireflies -root \n
*passwd.thermometer.width: 8
*splash.heading.label: XScreenSaver %s
-*splash.body.label: Copyright © 1991-2002 by
+*splash.body.label: Copyright © 1991-2004 by
*splash.body2.label: Jamie Zawinski <jwz@jwz.org>
*splash.demo.label: Settings
*splash.help.label: Help
*hacks.shadebobs.name: ShadeBobs
*hacks.ccurve.name: C Curve
*hacks.xteevee.name: XTeeVee
+*hacks.xanalogtv.name: XAnalogTV
*hacks.xspirograph.name: XSpiroGraph
*hacks.nerverot.name: NerveRot
*hacks.webcollage.name: WebCollage
*hacks.vidwhacker.name: VidWhacker
*hacks.morph3d.name: Morph3D
*hacks.bubble3d.name: Bubble3D
-*hacks.glplanet.name: GLPlanet
*hacks.sierpinski3d.name: Sierpinski3D
*hacks.gflux.name: GFlux
*hacks.xrayswarm.name: XRaySwarm
*hacks.rotzoomer.name: RotZoomer
*hacks.stonerview.name: StonerView
*hacks.starwars.name: StarWars
-*hacks.glblur.name: GLBlur
-*hacks.gltext.name: GLText
*hacks.dangerball.name: DangerBall
*hacks.whirlygig.name: WhirlyGig
*hacks.speedmine.name: SpeedMine
-*hacks.glsnake.name: GLSnake
*hacks.glforestfire.name: GLForestFire
*hacks.sballs.name: SBalls
*hacks.xdaliclock.name: XDaliClock
*hacks.xplanetbg.name: XPlanet
+*hacks.xplanet.name: XPlanet
*hacks.xaos.name: XaoS
*hacks.xfishtank.name: XFishTank
*hacks.electricsheep.name: ElectricSheep
*hacks.flyingtoasters.name: FlyingToasters
*hacks.bouncingcow.name: BouncingCow
*hacks.jigglypuff.name: JigglyPuff
-*hacks.glslideshow.name: GLSlideshow
+*hacks.hypertorus.name: HyperTorus
+*hacks.cubestorm.name: CubeStorm
+*hacks.blocktube.name: BlockTube
+*hacks.flipflop.name: FlipFlop
+*hacks.antspotlight.name: AntSpotlight
+*hacks.fontglide.name: FontGlide
+*hacks.mirrorblob.name: MirrorBlob
+*hacks.blinkbox.name: BlinkBox
+*hacks.fuzzyflakes.name: FuzzyFlakes
+*hacks.memscroller.name: MemScroller
! obsolete, but still used by xscreensaver-demo-Xm.
*hacks.documentation.isInstalled: True