XScreenSaver is a screensaver program for Unix-like operating systems running the X Window System. It is maintained by Jamie Zawinski. The free software and open source Unix-like systems use it almost universally.
Hacks
One reason for XScreenSaver's popularity is the ease of adding extra modules, known as "
hacks", which are separate programs that draw on the screen when the screensaver is activated. Some popular hacks include:
- Atlantis — an OpenGL animation showing whales and dolphins.
- BSOD — shows fake fatal error screens from a variety of computer systems, including Microsoft Windows Blue Screen of Death, a linux kernel panic, a Darwin crash, an Amiga "Guru Meditation" error, a sad Mac and many others.
- Apple2 — simulates an Apple II computer, showing a user entering a simple basic program and running it.
- Barcode — a number of coloured barcodes scroll across the screen.
- Flow — a 3D display of strange attractors.
- Flying toasters — 3D toasters fly around, inspired by the classic After Dark screensaver.
- Gears — an OpenGL animation showing intermeshing gears and planetary gears.
- GLMatrix — an OpenGL animation similar to the "digital rain" title sequence seen in the Matrix trilogy.
- Penrose — shows the screen being aperiodically tiled with coloured Penrose tiles.
- Spotlight — puts a moving spotlight across the desktop in the style of the James Bond film opening sequences.
- Sproingies — shows an animation in the style of Q*Bert.
- XPlanet — draws planets and other celestial bodies that update in real time.
- XMatrix — animations similar to the "digital rain" sequence seen in the Matrix trilogy.
Some of the display hack modules in XScreensaver are very similar to demo effects created by the demoscene:
- Boing - based on the 1984 program regarded as the first Amiga demo ever, showing a bouncing red and white ball.
- Bumps - an implementation of full-screen 2D bumpmapping
- MetaBalls - another common demo effect
- Moire2 - moving interference circles similar to those common in older Amiga demos
- ShadeBobs - another effect common in older Amiga demos
- XFlame - the filter-based fire effect, also known as flame effect
Technically, a module is a program that draws on the virtual root window. Whenever the screensaver is activated, XScreenSaver creates a virtual root window, places it above all other windows, and launch a module. In order for hacks to draw in the preview window of recent versions of XScreenSaver, the identificator of the subwindow where to draw is passed to the hacks via the a command line option. If a hack is started directly, it opens a normal window. Some hacks can be useful too — Apple2 and Phosphor include a terminal emulator.
External links
X Window programs