! a screen saver and locker for the X window system
! by Jamie Zawinski
!
-! version 3.16
-! 23-Jun-99
+! version 5.39
+! 12-Apr-2018
!
! See "man xscreensaver" for more info. The latest version is always
-! available at http://www.jwz.org/xscreensaver/
+! available at https://www.jwz.org/xscreensaver/
! These resources, when placed in the system-wide app-defaults directory
! your home directory, the settings in that file take precedence.
-*timeout: 10
-*cycle: 10
-*lockTimeout: 0
-*passwdTimeout: 30
+! Don't hand this file to "xrdb" -- that isn't how app-defaults files work.
+! Though app-defaults files have (mostly) the same syntax as your ~/.Xdefaults
+! file, they are used differently, and if you run this file through xrdb,
+! you will probably mess things up.
+
+#error Do not run app-defaults files through xrdb!
+#error That does not do what you might expect.
+#error Put this file in /usr/lib/X11/app-defaults/XScreenSaver instead.
+
+! /* (xrdb prevention kludge: whole file)
+
+*mode: random
+*timeout: 0:10:00
+*cycle: 0:10:00
+*lockTimeout: 0:00:00
+*passwdTimeout: 0:00:30
+*dpmsEnabled: False
+*dpmsQuickoffEnabled: False
+*dpmsStandby: 2:00:00
+*dpmsSuspend: 2:00:00
+*dpmsOff: 4:00:00
+*grabDesktopImages: True
+*grabVideoFrames: False
+*chooseRandomImages: @DEFAULT_IMAGES_P@
+! This can be a local directory name, or the URL of an RSS or Atom feed.
+*imageDirectory: @DEFAULT_IMAGE_DIRECTORY@
*nice: 10
+*memoryLimit: 0
*lock: False
-*lockVTs: True
*verbose: False
-*timestamp: False
+*timestamp: True
*fade: True
*unfade: False
-*fadeSeconds: 3
+*fadeSeconds: 0:00:03
*fadeTicks: 20
*splash: True
-*splashDuration: 5
+*splashDuration: 0:00:05
*visualID: default
-
*captureStderr: True
+*ignoreUninstalledPrograms: False
+*authWarningSlack: 20
+
+*textMode: file
+*textLiteral: XScreenSaver
+*textFile: @DEFAULT_TEXT_FILE@
+*textProgram: fortune
+*textURL: https://en.wikipedia.org/w/index.php?title=Special:NewPages&feed=rss
+
*overlayTextForeground: #FFFF00
*overlayTextBackground: #000000
*overlayStderr: True
! The default is to use these extensions if available (as noted.)
*sgiSaverExtension: True
-*mitSaverExtension: False
*xidleExtension: True
*procInterrupts: True
+! Turning this on makes pointerHysteresis not work.
+*xinputExtensionDev: False
+
+! 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
! This is what the "Prefs" button on the splash screen runs (/bin/sh syntax.)
*prefsCommand: xscreensaver-demo -prefs
-! This is the URL that the "Help" button on the splash screen loads.
-*helpURL: http://www.jwz.org/xscreensaver/man.html
-
-! This is how the "Help" button loads URLs (/bin/sh syntax.)
-! The "helpURL" will be substituted for up to two occurrences of "%s".
-*loadURL: netscape -remote 'openURL(%s)' || netscape '%s'
-
-
-! Turning on "installColormap" 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.)
-!
-*installColormap: True
-
+! This is the URL loaded by the "Help" button on the splash screen,
+! and by the "Documentation" menu item in xscreensaver-demo.
+*helpURL: https://www.jwz.org/xscreensaver/man.html
-! 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:".)
-!
-! 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".
-!
-! 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.
-!
-*programs: qix -root -solid -delay 0 -segments 100 \n\
- qix -root -count 4 -solid -transparent \n\
- qix -root -count 5 -solid -transparent -linear \
- -segments 250 -size 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\
- distort -root \n\
- spotlight -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\
- 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 -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 -root -advance 0 -size 10 -circles True \
- -length 10000 -reset 100000 \n\
- critical -root \n\
- phosphor -root \n\
- xmatrix -root \n\
- petri -root -size 1 -count 20 \n\
- petri -root -minlifespeed 0.02 -maxlifespeed 0.03 \
- -minlifespan 1 -maxlifespan 1 -instantdeathchan 0 \
- -minorchan 0 -anychan 0.3 \n\
- shadebobs -root \n\
- default-n: webcollage -root \n\
- - default-n: webcollage -root -filter 'vidwhacker -stdin -stdout' \n\
- - default-n: vidwhacker -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\
- \
-@GL_KLUDGE@ GL: gears -root \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 \n\
-@GL_KLUDGE@ GL: lament -root \n\
-@GL_KLUDGE@ GL: bubble3d -root \n\
-@GL_KLUDGE@ GL: glplanet -root \n\
-@GL_KLUDGE@ GL: pulsar -root \n\
- - GL: pulsar -root -texture -mipmap -texture_quality \
- -light -fog \n
-
-
-! 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\
+! loadURL -- how the "Help" buttons load the helpURL (/bin/sh syntax.)
+! manualCommand -- how the "Documentation" buttons display man pages.
!
-! xtacy is ok, but it only works on the default visual. We can satisfy
-! that constraint like so:
+! And there are so very many options to choose from!
!
-! 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:
+! Gnome 2.4, 2.6: (yelp can't display man pages, as of 2.6.3)
!
-! default-n: xv -root -rmode 5 -random -viewonly -wloop \
-! -wait 30 $HOME/bitmaps/*.jpg \n\
+@GNOME24@*loadURL: @WITH_BROWSER@ '%s'
+@GNOME24@*manualCommand: gnome-terminal --title '%s manual' \
+@GNOME24@ --command '/bin/sh -c "man %s; read foo"'
!
-! 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.
+! Gnome 2.2:
!
-! XEarth is nice, too:
+@GNOME22@*loadURL: gnome-url-show '%s'
+@GNOME22@*manualCommand: gnome-terminal --title '%s manual' \
+@GNOME22@ --command '/bin/sh -c "man %s; read foo"'
!
-! default-n: xearth -nostars -wait 0 -timewarp 400 -pos sunrel/38/-30
+! Gnome 1.4:
!
+! *loadURL: gnome-moz-remote --newwin '%s'
+! *manualCommand: gnome-help-browser 'man:%s'
!
-! 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.
+! non-Gnome systems:
!
+@NOGNOME@*loadURL: firefox '%s' || mozilla '%s' || netscape '%s'
+@NOGNOME@*manualCommand: xterm -sb -fg black -bg gray75 -T '%s manual' \
+@NOGNOME@ -e /bin/sh -c 'man "%s" ; read foo'
+
+
+! The format used for printing the date and time in the password dialog box
+! (see the strftime(3) manual page for details.)
+*dateFormat: %d-%b-%y (%a); %I:%M %p
+! To show the time only:
+! *dateFormat: %I:%M %p
+! For 24 hour time:
+! *dateFormat: %H:%M
+
+
+! This command is executed by the "New Login" button on the lock dialog.
+! (That button does not appear on the dialog if this program does not exist.)
+! For Gnome: probably "gdmflexiserver -ls". KDE, probably "kdmctl reserve".
+! Or maybe yet another wheel-reinvention, "lxdm -c USER_SWITCH".
+! Oh wait, this wheel just keeps getting better: "dm-tool switch-to-greeter".
!
-! 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.
+@NEW_LOGIN_COMMAND_P@*newLoginCommand: @NEW_LOGIN_COMMAND@
+
+
+! Turning on "installColormap" on 8-bit systems interacts erratically with
+! 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.
!
-! Basically, the SGI demo writers went out of their way to make my life hell.
+*installColormap: True
+
+
+! 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: \
+ maze -root \n\
+@GL_KLUDGE@ GL: superquadrics -root \n\
+ attraction -root \n\
+ blitspin -root \n\
+ greynetic -root \n\
+ helix -root \n\
+ hopalong -root \n\
+ imsmap -root \n\
+- noseguy -root \n\
+- pyro -root \n\
+ qix -root \n\
+- rocks -root \n\
+ rorschach -root \n\
+ decayscreen -root \n\
+ flame -root \n\
+ halo -root \n\
+ slidescreen -root \n\
+ pedal -root \n\
+ bouboule -root \n\
+- braid -root \n\
+ coral -root \n\
+ deco -root \n\
+ drift -root \n\
+- fadeplot -root \n\
+ galaxy -root \n\
+ goop -root \n\
+ grav -root \n\
+ ifs -root \n\
+@GL_KLUDGE@ GL: jigsaw -root \n\
+ julia -root \n\
+- kaleidescope -root \n\
+@GL_KLUDGE@ GL: moebius -root \n\
+ moire -root \n\
+@GL_KLUDGE@ GL: morph3d -root \n\
+ mountain -root \n\
+ munch -root \n\
+ penrose -root \n\
+@GL_KLUDGE@ GL: pipes -root \n\
+ rd-bomb -root \n\
+@GL_KLUDGE@ GL: rubik -root \n\
+- sierpinski -root \n\
+ slip -root \n\
+@GL_KLUDGE@ GL: sproingies -root \n\
+ starfish -root \n\
+ strange -root \n\
+ swirl -root \n\
+ triangle -root \n\
+ xjack -root \n\
+ xlyap -root \n\
+@GL_KLUDGE@ GL: atlantis -root \n\
+ bsod -root \n\
+@GL_KLUDGE@ GL: bubble3d -root \n\
+@GL_KLUDGE@ GL: cage -root \n\
+- crystal -root \n\
+ cynosure -root \n\
+ discrete -root \n\
+ distort -root \n\
+ epicycle -root \n\
+ flow -root \n\
+@GL_KLUDGE@ GL: glplanet -root \n\
+ interference -root \n\
+ kumppa -root \n\
+@GL_KLUDGE@ GL: lament -root \n\
+ moire2 -root \n\
+@GL_KLUDGE@ GL: sonar -root \n\
+@GL_KLUDGE@ GL: stairs -root \n\
+ truchet -root \n\
+- vidwhacker -root \n\
+ blaster -root \n\
+ bumps -root \n\
+ ccurve -root \n\
+ compass -root \n\
+ deluxe -root \n\
+- demon -root \n\
+@GLE_KLUDGE@ GL: extrusion -root \n\
+- loop -root \n\
+ penetrate -root \n\
+ petri -root \n\
+ phosphor -root \n\
+@GL_KLUDGE@ GL: pulsar -root \n\
+ ripples -root \n\
+ shadebobs -root \n\
+@GL_KLUDGE@ GL: sierpinski3d -root \n\
+ spotlight -root \n\
+ squiral -root \n\
+ wander -root \n\
+- webcollage -root \n\
+ xflame -root \n\
+ xmatrix -root \n\
+@GL_KLUDGE@ GL: gflux -root \n\
+- nerverot -root \n\
+ xrayswarm -root \n\
+ xspirograph -root \n\
+@GL_KLUDGE@ GL: circuit -root \n\
+@GL_KLUDGE@ GL: dangerball -root \n\
+- GL: dnalogo -root \n\
+@GL_KLUDGE@ GL: engine -root \n\
+@GL_KLUDGE@ GL: flipscreen3d -root \n\
+@GL_KLUDGE@ GL: gltext -root \n\
+@GL_KLUDGE@ GL: menger -root \n\
+@GL_KLUDGE@ GL: molecule -root \n\
+ rotzoomer -root \n\
+ speedmine -root \n\
+@GL_KLUDGE@ GL: starwars -root \n\
+@GL_KLUDGE@ GL: stonerview -root \n\
+ vermiculate -root \n\
+ whirlwindwarp -root \n\
+ zoom -root \n\
+ anemone -root \n\
+ apollonian -root \n\
+@GL_KLUDGE@ GL: boxed -root \n\
+@GL_KLUDGE@ GL: cubenetic -root \n\
+@GL_KLUDGE@ GL: endgame -root \n\
+ euler2d -root \n\
+ fluidballs -root \n\
+@GL_KLUDGE@ GL: flurry -root \n\
+- GL: glblur -root \n\
+@GL_KLUDGE@ GL: glsnake -root \n\
+ halftone -root \n\
+@GL_KLUDGE@ GL: juggler3d -root \n\
+@GL_KLUDGE@ GL: lavalite -root \n\
+- polyominoes -root \n\
+@GL_KLUDGE@ GL: queens -root \n\
+- GL: sballs -root \n\
+@GL_KLUDGE@ GL: spheremonics -root \n\
+- thornbird -root \n\
+ twang -root \n\
+- GL: antspotlight -root \n\
+ apple2 -root \n\
+@GL_KLUDGE@ GL: atunnel -root \n\
+ barcode -root \n\
+@GL_KLUDGE@ GL: blinkbox -root \n\
+@GL_KLUDGE@ GL: blocktube -root \n\
+@GL_KLUDGE@ GL: bouncingcow -root \n\
+ cloudlife -root \n\
+@GL_KLUDGE@ GL: cubestorm -root \n\
+ eruption -root \n\
+@GL_KLUDGE@ GL: flipflop -root \n\
+@GL_KLUDGE@ GL: flyingtoasters -root \n\
+ fontglide -root \n\
+@GL_KLUDGE@ GL: gleidescope -root \n\
+@GL_KLUDGE@ GL: glknots -root \n\
+@GL_KLUDGE@ GL: glmatrix -root \n\
+- GL: glslideshow -root \n\
+@GL_KLUDGE@ GL: hypertorus -root \n\
+- GL: jigglypuff -root \n\
+ metaballs -root \n\
+@GL_KLUDGE@ GL: mirrorblob -root \n\
+ piecewise -root \n\
+@GL_KLUDGE@ GL: polytopes -root \n\
+ pong -root \n\
+ popsquares -root \n\
+@GL_KLUDGE@ GL: surfaces -root \n\
+ xanalogtv -root \n\
+ abstractile -root \n\
+ anemotaxis -root \n\
+- GL: antinspect -root \n\
+ fireworkx -root \n\
+ fuzzyflakes -root \n\
+ interaggregate -root \n\
+ intermomentary -root \n\
+ memscroller -root \n\
+@GL_KLUDGE@ GL: noof -root \n\
+ pacman -root \n\
+@GL_KLUDGE@ GL: pinion -root \n\
+@GL_KLUDGE@ GL: polyhedra -root \n\
+- GL: providence -root \n\
+ substrate -root \n\
+ wormhole -root \n\
+- GL: antmaze -root \n\
+@GL_KLUDGE@ GL: boing -root \n\
+ boxfit -root \n\
+@GL_KLUDGE@ GL: carousel -root \n\
+ celtic -root \n\
+@GL_KLUDGE@ GL: crackberg -root \n\
+@GL_KLUDGE@ GL: cube21 -root \n\
+ fiberlamp -root \n\
+@GL_KLUDGE@ GL: fliptext -root \n\
+@GL_KLUDGE@ GL: glhanoi -root \n\
+@GL_KLUDGE@ GL: tangram -root \n\
+@GL_KLUDGE@ GL: timetunnel -root \n\
+@GL_KLUDGE@ GL: glschool -root \n\
+@GL_KLUDGE@ GL: topblock -root \n\
+@GL_KLUDGE@ GL: cubicgrid -root \n\
+ cwaves -root \n\
+@GL_KLUDGE@ GL: gears -root \n\
+@GL_KLUDGE@ GL: glcells -root \n\
+@GL_KLUDGE@ GL: lockward -root \n\
+ m6502 -root \n\
+@GL_KLUDGE@ GL: moebiusgears -root \n\
+@GL_KLUDGE@ GL: voronoi -root \n\
+@GL_KLUDGE@ GL: hypnowheel -root \n\
+@GL_KLUDGE@ GL: klein -root \n\
+- lcdscrub -root \n\
+@GL_KLUDGE@ GL: photopile -root \n\
+@GL_KLUDGE@ GL: skytentacles -root \n\
+@GL_KLUDGE@ GL: rubikblocks -root \n\
+@GL_KLUDGE@ GL: companioncube -root \n\
+@GL_KLUDGE@ GL: hilbert -root \n\
+@GL_KLUDGE@ GL: tronbit -root \n\
+@GL_KLUDGE@ GL: geodesic -root \n\
+ hexadrop -root \n\
+@GL_KLUDGE@ GL: kaleidocycle -root \n\
+@GL_KLUDGE@ GL: quasicrystal -root \n\
+@GL_KLUDGE@ GL: unknownpleasures -root \n\
+ binaryring -root \n\
+@GL_KLUDGE@ GL: cityflow -root \n\
+@GL_KLUDGE@ GL: geodesicgears -root \n\
+@GL_KLUDGE@ GL: projectiveplane -root \n\
+@GL_KLUDGE@ GL: romanboy -root \n\
+ tessellimage -root \n\
+@GL_KLUDGE@ GL: winduprobot -root \n\
+@GL_KLUDGE@ GL: splitflap -root \n\
+@GL_KLUDGE@ GL: cubestack -root \n\
+@GL_KLUDGE@ GL: cubetwist -root \n\
+@GL_KLUDGE@ GL: discoball -root \n\
+@GL_KLUDGE@ GL: dymaxionmap -root \n\
+@GL_KLUDGE@ GL: energystream -root \n\
+@GL_KLUDGE@ GL: hexstrut -root \n\
+@GL_KLUDGE@ GL: hydrostat -root \n\
+@GL_KLUDGE@ GL: raverhoop -root \n\
+@GL_KLUDGE@ GL: splodesic -root \n\
+@GL_KLUDGE@ GL: unicrud -root \n\
+@GL_KLUDGE@ GL: esper -root \n\
+@GL_KLUDGE@ GL: vigilance -root \n\
+@GL_KLUDGE@ GL: crumbler -root \n\
+@GL_KLUDGE@ GL: maze3d -root \n\
+@GL_KLUDGE@ GL: peepers -root \n\
+@GL_KLUDGE@ GL: razzledazzle -root \n
!=============================================================================
-XScreenSaver.pointerPollTime: 5
-XScreenSaver.initialDelay: 0
-XScreenSaver.windowCreationTimeout: 30
+XScreenSaver.pointerPollTime: 0:00:05
+XScreenSaver.pointerHysteresis: 10
+XScreenSaver.initialDelay: 0:00:00
+XScreenSaver.windowCreationTimeout: 0:00:30
XScreenSaver.bourneShell: /bin/sh
! Resources for the password and splash-screen dialog boxes of
! the "xscreensaver" daemon.
!
-*Dialog.headingFont: *-times-bold-r-*-*-*-180-*-*-*-iso8859-1
-*Dialog.bodyFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-*Dialog.labelFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-*Dialog.buttonFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
+*Dialog.headingFont: -*-helvetica-bold-r-*-*-*-180-*-*-*-*-iso8859-1
+*Dialog.bodyFont: -*-helvetica-bold-r-*-*-*-140-*-*-*-*-iso8859-1
+*Dialog.labelFont: -*-helvetica-bold-r-*-*-*-140-*-*-*-*-iso8859-1
+*Dialog.unameFont: -*-helvetica-bold-r-*-*-*-120-*-*-*-*-iso8859-1
+*Dialog.buttonFont: -*-helvetica-bold-r-*-*-*-140-*-*-*-*-iso8859-1
+*Dialog.dateFont: -*-helvetica-medium-r-*-*-*-80-*-*-*-*-iso8859-1
+
+! Helvetica asterisks look terrible.
+*passwd.passwdFont: -*-courier-medium-r-*-*-*-140-*-*-*-iso8859-1
+
+
*Dialog.foreground: #000000
-*Dialog.background: #BFBFBF
+*Dialog.background: #E6E6E6
*Dialog.Button.foreground: #000000
-*Dialog.Button.background: #D0D0D0
+*Dialog.Button.background: #F5F5F5
+!*Dialog.Button.pointBackground: #EAEAEA
+!*Dialog.Button.clickBackground: #C3C3C3
*Dialog.text.foreground: #000000
*Dialog.text.background: #FFFFFF
-*Dialog.logo.foreground: #FF0000
-*Dialog.logo.background: #FFFFFF
-*Dialog.topShadowColor: #E7E7E7
-*Dialog.bottomShadowColor: #737373
-*Dialog.logo.width: 200
-*Dialog.logo.height: 200
-*Dialog.internalBorderWidth: 30
+*passwd.thermometer.foreground: #4464AC
+*passwd.thermometer.background: #FFFFFF
+*Dialog.topShadowColor: #FFFFFF
+*Dialog.bottomShadowColor: #CECECE
+*Dialog.logo.width: 210
+*Dialog.logo.height: 210
+*Dialog.internalBorderWidth: 24
*Dialog.borderWidth: 1
-*Dialog.shadowThickness: 4
+*Dialog.shadowThickness: 2
*passwd.heading.label: XScreenSaver %s
-*passwd.body.label: This display is locked.
-*passwd.user.label: User:
-*passwd.passwd.label: Password:
-*passwd.passwdFont: *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1
+*passwd.body.label: This screen is locked.
+*passwd.unlock.label: OK
+*passwd.login.label: New Login
+*passwd.user.label: Username:
*passwd.thermometer.width: 8
+*passwd.asterisks: True
+*passwd.uname: True
*splash.heading.label: XScreenSaver %s
-*splash.body.label: Copyright © 1991-1999 by
+*splash.body.label: Copyright \251 1991-2018 by
*splash.body2.label: Jamie Zawinski <jwz@jwz.org>
-*splash.demo.label: Demo
-*splash.prefs.label: Prefs
+*splash.demo.label: Settings
*splash.help.label: Help
-! Resources for the Motif dialog boxes of the "xscreensaver-demo" program.
-!
-*fontList: *-helvetica-medium-r-*-*-*-120-*-*-*-iso8859-1
-*demoDialog*label1.fontList: *-helvetica-medium-r-*-*-*-140-*-*-*-iso8859-1
-*XmTextField.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
-*label0.fontList: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-XScreenSaver*XmList.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
-! Need to fully-qualify the preceeding in the case of of *sgiMode.
-
-*XmDialogShell*foreground: #000000
-*XmDialogShell*background: #E5E5E5
-*XmDialogShell*XmTextField.foreground: #000000
-*XmDialogShell*XmTextField.background: #FFFFFF
-*XmDialogShell*demoList.foreground: #000000
-*XmDialogShell*demoList.background: #FFFFFF
-
-*XmDialogShell.title: XScreenSaver
-*versionWarning_popup.title: XScreenSaver Warning
-*demoForm_popup.title: XScreenSaver Demo
-*preferencesForm_popup.title: XScreenSaver Preferences
-*allowShellResize: True
-*autoUnmanage: False
-
-! This doesn't work. Motif ignores it if there is a scroll-list!
-*demoDialog.maxWidth: 600
-
-*label1.labelString: XScreenSaver %s
-*label1.label: XScreenSaver %s
-*label2.labelString: Copyright © 1991-1999 by Jamie Zawinski <jwz@jwz.org>
-*label2.label: Copyright © 1991-1999 by Jamie Zawinski <jwz@jwz.org>
-*demoList.visibleItemCount: 10
-*demoList.automaticSelection: True
-*next.labelString: Run Next
-*prev.labelString: Run Previous
-*edit.labelString: Preferences
-*restart.labelString: Reinitialize
-*done.labelString: Quit
-
-*preferencesLabel.labelString: XScreenSaver Parameters
-
-*timeoutLabel.labelString: Saver Timeout
-*cycleLabel.labelString: Cycle Timeout
-*fadeSecondsLabel.labelString: Fade Duration
-*fadeTicksLabel.labelString: Fade Ticks
-*lockLabel.labelString: Lock Timeout
-*passwdLabel.labelString: Password Timeout
-*preferencesForm*XmTextField.columns: 8
-
-*verboseToggle.labelString: Verbose
-*cmapToggle.labelString: Install Colormap
-*fadeToggle.labelString: Fade Colormap
-*unfadeToggle.labelString: Unfade Colormap
-*lockToggle.labelString: Require Password
-*preferencesDone.labelString: OK
-*preferencesCancel.labelString: Cancel
-
-
-! Disable Motif drag-and-drop in dialog boxes. This is kind of pathetic, but
-! in some older versions of Motif, most any attempt to drag cause immediate
-! flaming death from above. This *should* rip the legs off that bug.
-! (But sadly, Lesstif 0.86 and earlier ignore these resources *and* have
-! buggy drag-and-drop.)
+!=============================================================================
+!
+! Pretty names for the hacks that have unusual capitalization.
!
-XScreenSaver*dragInitiatorProtocolStyle: DRAG_NONE
-XScreenSaver*dragReceiverProtocolStyle: DRAG_NONE
-
-
-
-! Resources for the Athena dialog boxes of the "xscreensaver-demo" program.
-!
-*demo_dialog.title: XScreenSaver Demo
-*preferences_dialog.title: XScreenSaver Preferences
-*warning_dialog.title: XScreenSaver Warning
-
-! For some reason, it doesn't size correctly by itself.
-*demo_dialog.geometry: =640x400
-
-*demo_dialog*font: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1
-*preferences_dialog*font: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1
-*demo_dialog*label1.font: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-*preferences_dialog*label1.font:*-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-XScreenSaver*warning_dialog*label0.font: \
- *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-XScreenSaver*warning_dialog*Label.font: \
- *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1
-XScreenSaver*warning_dialog*Command.font: \
- *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
-XScreenSaver.demo_dialog*List.font: \
- *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
-XScreenSaver.demo_dialog*Text*font: \
- *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
-
-XScreenSaver.demo_dialog*foreground: #000000
-XScreenSaver.demo_dialog*background: #E5E5E5
-XScreenSaver.demo_dialog*List.background: #FFFFFF
-XScreenSaver.demo_dialog*Scrollbar.background: #D9D9D9
-XScreenSaver.demo_dialog*Command.background: #D9D9D9
-XScreenSaver.demo_dialog*Text*background: #FFFFFF
-
-XScreenSaver.preferences_dialog*foreground: #000000
-XScreenSaver.preferences_dialog*background: #E5E5E5
-XScreenSaver.preferences_dialog*Command.background: #D9D9D9
-XScreenSaver.preferences_dialog*Toggle.background: #D9D9D9
-XScreenSaver.preferences_dialog*Text*background: #FFFFFF
-
-XScreenSaver.warning_dialog*foreground: #000000
-XScreenSaver.warning_dialog*background: #E5E5E5
-XScreenSaver.warning_dialog*Command.background: #D9D9D9
-
-*preferences_dialog*Dialog.value.translations: #override\n\
- <Key>Return: beginning-of-line()\n
-
-*demo_dialog*viewport.height: 200
-*Form.borderWidth: 0
-*Box.borderWidth: 0
-*Label.borderWidth: 0
-*preferences_dialog*Dialog.borderWidth: 0
-
-*demo_dialog*run.label: Run
-*demo_dialog*next.label: Run Next
-*demo_dialog*prev.label: Run Previous
-*demo_dialog*edit.label: Preferences
-*demo_dialog*restart.label: Reinitialize
-*demo_dialog*done.label: Quit
-XScreenSaver.demo_dialog*Command.internalWidth: 10
-XScreenSaver.demo_dialog*Command.internalHeight: 4
-
-*preferences_dialog*timeout.label: Saver Timeout:
-*preferences_dialog*cycle.label: Cycle Timeout:
-*preferences_dialog*fade.label: Fade Duration:
-*preferences_dialog*ticks.label: Fade Ticks:
-*preferences_dialog*lockTime.label: Lock Timeout:
-*preferences_dialog*passwdTime.label: Password Timeout:
-XScreenSaver.preferences_dialog*Command.internalWidth: 10
-XScreenSaver.preferences_dialog*Command.internalHeight: 4
-
-*preferences_dialog*label1.label: XScreenSaver Parameters
-*preferences_dialog*buttonbox.verbose.label: Verbose
-*preferences_dialog*buttonbox.cmap.label: Install Colormap
-*preferences_dialog*buttonbox.fade.label: Fade Colormap
-*preferences_dialog*buttonbox.unfade.label: Unfade Colormap
-*preferences_dialog*buttonbox.lock.label: Require Password
-*preferences_dialog*done.label: Ok
-*preferences_dialog*cancel.label: Cancel
-
-*warning_dialog*ok.label: Ok
-
-*warning_dialog*horizDistance: 30
-*warning_dialog*vertDistance: 0
-
-*warning_dialog*Label.internalWidth: 1
-*warning_dialog*Label.internalHeight: 0
-
-*warning_dialog*label0.horizDistance: 80
-*warning_dialog*label0.vertDistance: 20
-
-*warning_dialog*Command.horizDistance: 160
-*warning_dialog*Command.vertDistance: 20
-*warning_dialog*Command.internalWidth: 20
-*warning_dialog*Command.internalHeight: 5
+!=============================================================================
+
+*hacks.antinspect.name: AntInspect
+*hacks.antmaze.name: AntMaze
+*hacks.antspotlight.name: AntSpotlight
+*hacks.binaryring.name: BinaryRing
+*hacks.blinkbox.name: BlinkBox
+*hacks.blitspin.name: BlitSpin
+*hacks.blocktube.name: BlockTube
+*hacks.bouncingcow.name: BouncingCow
+*hacks.boxfit.name: BoxFit
+*hacks.bsod.name: BSOD
+*hacks.bubble3d.name: Bubble3D
+*hacks.ccurve.name: CCurve
+*hacks.cloudlife.name: CloudLife
+*hacks.companioncube.name: CompanionCube
+*hacks.cubestack.name: CubeStack
+*hacks.cubestorm.name: CubeStorm
+*hacks.cubetwist.name: CubeTwist
+*hacks.cubicgrid.name: CubicGrid
+*hacks.cwaves.name: CWaves
+*hacks.dangerball.name: DangerBall
+*hacks.decayscreen.name: DecayScreen
+*hacks.dnalogo.name: DNA Logo
+*hacks.dymaxionmap.name: DymaxionMap
+*hacks.energystream.name: EnergyStream
+*hacks.euler2d.name: Euler2D
+*hacks.fadeplot.name: FadePlot
+*hacks.flipflop.name: FlipFlop
+*hacks.flipscreen3d.name: FlipScreen3D
+*hacks.fliptext.name: FlipText
+*hacks.fluidballs.name: FluidBalls
+*hacks.flyingtoasters.name: FlyingToasters
+*hacks.fontglide.name: FontGlide
+*hacks.fuzzyflakes.name: FuzzyFlakes
+*hacks.geodesicgears.name: GeodesicGears
+*hacks.gflux.name: GFlux
+*hacks.gleidescope.name: Gleidescope
+*hacks.glforestfire.name: GLForestFire
+*hacks.hyperball.name: HyperBall
+*hacks.hypercube.name: HyperCube
+*hacks.ifs.name: IFS
+*hacks.imsmap.name: IMSMap
+*hacks.jigglypuff.name: JigglyPuff
+*hacks.juggler3d.name: Juggler3D
+*hacks.lcdscrub.name: LCDscrub
+*hacks.lmorph.name: LMorph
+*hacks.m6502.name: m6502
+*hacks.maze3d.name: Maze3D
+*hacks.memscroller.name: MemScroller
+*hacks.metaballs.name: MetaBalls
+*hacks.mirrorblob.name: MirrorBlob
+*hacks.moebiusgears.name: MoebiusGears
+*hacks.morph3d.name: Morph3D
+*hacks.nerverot.name: NerveRot
+*hacks.noseguy.name: NoseGuy
+*hacks.popsquares.name: PopSquares
+*hacks.projectiveplane.name:ProjectivePlane
+*hacks.quasicrystal.name: QuasiCrystal
+*hacks.raverhoop.name: RaverHoop
+*hacks.razzledazzle.name: RazzleDazzle
+*hacks.rd-bomb.name: RDbomb
+*hacks.rdbomb.name: RDbomb
+*hacks.romanboy.name: RomanBoy
+*hacks.rotzoomer.name: RotZoomer
+*hacks.rubikblocks.name: RubikBlocks
+*hacks.sballs.name: SBalls
+*hacks.shadebobs.name: ShadeBobs
+*hacks.sierpinski3d.name: Sierpinski3D
+*hacks.skytentacles.name: SkyTentacles
+*hacks.slidescreen.name: SlideScreen
+*hacks.speedmine.name: SpeedMine
+*hacks.splitflap.name: SplitFlap
+*hacks.starwars.name: StarWars
+*hacks.stonerview.name: StonerView
+*hacks.t3d.name: T3D
+*hacks.testx11.name: TestX11
+*hacks.timetunnel.name: TimeTunnel
+*hacks.topblock.name: TopBlock
+*hacks.tronbit.name: TronBit
+*hacks.unknownpleasures.name:UnknownPleasures
+*hacks.vidwhacker.name: VidWhacker
+*hacks.webcollage.name: WebCollage
+*hacks.whirlwindwarp.name: WhirlWindWarp
+*hacks.winduprobot.name: WindupRobot
+*hacks.xanalogtv.name: XAnalogTV
+*hacks.xrayswarm.name: XRaySwarm
+
+! obsolete, but still used by xscreensaver-demo-Xm.
+*hacks.documentation.isInstalled: True
+
+! (xrdb prevention kludge: whole file) */