SkillAgentSearch skills...

Xscreensaver

The closest thing to a git repo of xscreensaver known to exist, because jwz Does Not Do Github. This is a READ ONLY mirror. Please send pull requests and bug reports directly to the upstream project.

Install / Use

/learn @Zygo/Xscreensaver
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

                          XScreenSaver

                         a collection of
                        free screen savers
                         for X11, macOS,
                         iOS and Android

                        By Jamie Zawinski
                         and many others

                 https://www.jwz.org/xscreensaver/

===============================================================================

This is the XScreenSaver source code distribution. It is strongly recommended that you install a binary release rather than trying to compile it yourself. Executables are available for almost all platforms, including macOS, iOS, and Android. See the XScreenSaver web site for details.

=============================================================================== To compile for a Unix system with X11:

    ./configure --help

    ./configure --prefix=/usr
    make
    sudo make install

    xscreensaver &
    xscreensaver-settings

For a debug build:

    make CFLAGS="-g"

There are many compilation dependencies.  The configure script will tell
you what is missing.  At the least, you will need development versions of
these libraries.  Append "-dev" or "-devel" to most of these:

    perl attr pkg-config gettext intltool libx11 libxext libxi libxt
    libxft libxinerama libxrandr libxxf86vm libgl libglu libgle
    libgtk-3 libgdk-pixbuf-2.0 libjpeg libxml2 libpam libwayland
    libsystemd elogind

You can build a package-manager version with "make rpm" or "make deb".

BSD systems might need gmake instead of make.

=============================================================================== To compile for macOS or iOS:

See OSX/README.  Use the included Xcode project.

=============================================================================== To compile for Android:

See android/README.

=============================================================================== Interested in writing a new screen saver?

See the README.hacking file.

=============================================================================== Version History

6.15 * New hacks, worldpieces', bestill', bubblecolors', darktransit', downfall', driftclouds', goldenapollian', noxfire', prococean', rigrekt', trainmandala', trizm' and universeball'. * mapscroller' shows the name of the nearest major city, and has an updated list of available map tile servers. * Higher resolution Earth imagery in glplanet', dymaxionmap' sphereeversion', cubocteversion' and platonicfolding'. * X11: xscreensaver-settings' has a search field. * X11: Excised the last remnants of XLFD-style font parsing. * macOS, iOS: Text in right-to-left languages is rendered properly. * Android: Most things display text properly.

6.14.1 * macOS: the new shader savers were crashing at startup.

6.14 * Added the ability to run shadertoy.com programs as screen savers. * New shader-based savers: alienbeacon', batteredplanet', elementalring', fluxcore', gimbalharmonics', hexplasma', logarithmiccircles', neongravity', neontriangulator', protophore', selfreflect', skyline', stardome', starnest', stripeytorus', synthwavecity', topologica' and truchetzoom'. * Better label wrapping in carousel' and photopile'. * Fixed `glslideshow' preferences and title display. * X11: Decrufted PAM, including /etc/pam.d/xscreensaver. * macOS: Sparkle 2.8. * iOS: Clicking links in preferences opens in Safari again.

6.13 * Added a number of historical full chess games to endgame'. * Rewrote glslideshow' to add more image-transition effects. * Hacks that display images and their filenames will display their titles intead, if the image originated in an RSS feed (or has the "user.dublincore.title" xattr). * X11: Wayland fixes. * X11: Some hacks were calling glXSwapBuffers before the first call to glXMakeCurrent; allow it. * X11: Added configuration files to allow building of a non-insane `.deb' installer package.

6.12 * X11: DPMS works on Wayland. * X11: Fading uses GL now which should be more performant.

6.11 * X11: Now supports Wayland (blanking only, not locking). * X11: More reliable and timely DPMS activation. * X11: Dead keys work in password input. * X11: Fixed a couple of minor Y2038 bugs.

6.10 * New hacks, dumpsterfire', hopffibration', platonicfolding' and klondike'. * Rewrote the VT100 emulator for 'apple2' and 'phosphor'. Supports inverse and DEC Special Graphics. * X11: `phosphor' scrolls fast again on "modern" Linux systems. * BSOD supports systemd and bitlocker. * Android: Fixed bug where photo access was not being requested.

6.09 * New hacks,kallisti' and highvoltage'. * Formal-wear for `headroom'.

6.08 * macOS: Worked around a macOS 14.0 bug where savers would continue running invisibly in the background after un-blanking. * macOS: Upgraded Sparkle (the "Check for Updates" library) for macOS 14.0 compatibility.

6.07 * New hacks, droste', skulloop', papercube' and cubocteversion'. * xscreensaver-settings' was sometimes turning off the DPMS checkbox. * Log pid of caller of deactivate' command, to give a hint about who is preventing the screen from blanking. * recanim uses libffmpeg. * Updates to sphereeversion'. * Added some new map sources to mapscroller'. * macOS: Worked around a macOS 13.4 bug where multi-head systems would fail to launch savers on some or all screens. * Minimum compiler target is now ISO C99 instead of ANSI C89. Didn't want to rush into it. * macOS, Android: Better looking thunbmail images. * Various other minor bug fixes.

6.06 * New hack, hextrail'. * marbling' works again. * Adjusted some of the very old hacks, which were written when pixels were larger, to be more visible on today's higher rez displays. * X11: More robust desktop image grabbing. * X11: Various improvements to xscreensaver-settings'. * X11: Silence new new Perl warnings from xscreensaver-getimage-file'. * X11: Supports "Lock" messages from systemd, e.g. when logind.conf has "HandleLidSwitch=lock" instead of "suspend".

6.05 * X11: Cope with dumb DPMS settings that existed pre-startup. * X11: Silence new Perl warnings from xscreensaver-getimage-file'. * X11: Fix sonar' pthreads crash on recent Pi systems. * X11: Removed dependence on gdk-pixbuf-xlib-2.0'. * X11: GTK 3 is now required. * macOS: Fixed the "Run savers on screens" preference in Random mode on multi-screen M1 systems. * Retired thornbird', which is redundant with `discrete'.

6.04 * New hacks, nakagin' and chompytower'. * Settings dialog shows diagnostics for bad image folders and feeds. * URLs for imageDirectory' can now point at archive.org collections. * Sliders for various "Speed" preferences are easier to use. * X11: Settings dialog shows saver description below embedded preview. * X11: Better behavior when zero monitors are attached. * X11: Improvements to inhibiting blanking while videos are playing: No longer necessary to hack GNOME and KDE to get them to not usurp the org.freedesktop.ScreenSaver endpoint. * X11: unicrud' displays character names. * Updated `webcollage'.

6.03 * New hack, squirtorus'. * New hack, mapscroller' (X11 and macOS only). * sphereeversion' now has corrugation-mode, and can evert the Earth. * glplanet' is higher resolution, and displays time zones. * glslideshow' displays relative pathnames again. * iOS: Apple broke drag-to-rotate again. Fixed. * macOS: fixed spurious error message in auto-update installer. * X11: fixed sonar' failing to ping on some Linux systems. * X11: Touch-screens work. * X11: Hold down Backspace to clear the whole password field.

6.02 * New hacks, marbling' and binaryhorizon'. * atlantis' behaviors are more random and lifelike. * headroom' is now Mask Headroom. * X11: fontglide' skips fonts that can't display ASCII. * X11: Use asterisks in the password dialog if the system fonts don't have bullets in them. * X11: "Disable Screen Saver" was behaving like "Blank Screen Only". * Android: These hacks work now: antinspect', barcode', energystream', fliptext', fontglide', glsnake', raverhoop', starwars', unicrud'.

6.01 * X11: Properly disable the server's built-in screen saver. * X11: The passwdTimeout option was being ignored. * X11: The display of the unlock thermometer was weird. * X11: Fixed password entry on old-school multi-screen setups (:0.1). * X11: Worked around a KDE 5 compositor bug that caused the desktop to momentarily become visible when cycling. * X11: Fixed possible high CPU usage in xscreensaver-systemd'. * X11: Fixed some spurious warnings in xscreensaver-text'. * X11: Warn when Wayland is in use, since it makes both screen saving and locking impossible.

6.00 * X11: Major refactor of the xscreensaver' daemon for improved security, dividing it into three programs: xscreensaver', xscreensaver-gfx' and xscreensaver-auth'. * X11: Dropped support for systems older than X11R7 (2009). * X11: Renamed xscreensaver-demo' to xscreensaver-settings'. * X11: Unlock dialog has user-selectable color schemes. * X11: Everything uses XFreeType for fonts now. * X11: Install a few custom fonts needed by some savers. * X11: Fading works on systems without gamma (e.g. Rasp

View on GitHub
GitHub Stars272
CategoryDevelopment
Updated1d ago
Forks79

Languages

C

Security Score

80/100

Audited on Mar 31, 2026

No findings