Skip to content(if available)orjump to list(if available)

Show HN: Bash Screensavers

Show HN: Bash Screensavers

24 comments

·October 28, 2025

A github project to collect a bunch of bash-based screensavers/visualizations.

PessimalDecimal

I've used Emacs for years but just recently learned about zone.el. I wonder if this is based on it too. I see some of the same screensavers here.

seba_dos1

You can put them onto your Plasma wallpaper and/or lockscreen background with plasma-wallpaper-application: https://invent.kde.org/dos/plasma-wallpaper-application

(thought I'd share that since its raison d'être was to put Asciiquarium there :))

Evidlo

Why does the cursor flicker around the screen for most of these? Does it have something to do with not double buffering the display?

attogram

Some artifact from asciinema maybe. Only shows up in the preview gifs. Needs to be fixed!

huhtenberg

For the 'life' screensaver it might make sense to use half blocks as a base rendering unit. ASCII 220 and 223.

alejoar

Doesn't work for me on MacOS:

I get "mapfile: command not found"

null

[deleted]

SeeManDo

Same here

SeeManDo

Bash Screensavers v0.0.27 (Mystic Shine)

./screensaver.sh: line 79: mapfile: command not found 1 .

(Press ^C to exit)

Choose your screensaver: 1 404 Screensaver Not Found:

Oh no! Screensaver had trouble! Error code: 1

seba_dos1

Get a Bash that's not ancient. mapfile is there since version 4.0 from 2009.

SeeManDo

Seems to be a old version of bash installed and used by default on macos

FergusArgyll

Cool

What are those commit messages?

attogram

See the spread-the-word script in https://github.com/attogram/bash-screensavers/tree/main/spot... This script generates a series of shell commands to create a "spotlight" message on the main GitHub repository page. It does this by generating commands that make trivial changes to the top 12 files and directories and then commit those changes with custom messages.

warp

Looks like an attempt to make the main GitHub page (the part above the README) display something interesting. It is messed up now because of further commits, but you can see what it looked like at the time here:

https://github.com/attogram/bash-screensavers/tree/a7369a93c...

seba_dos1

Protip for the author: --allow-empty ;P

kevincox

But that doesn't change the files, so it won't show up in the tree view as the user is trying to accomplish.

xxs

instead of --amend?

seba_dos1

Instead of adding or removing a space in random files when making cute and useless commit logs.

madsohm

AI slop - or worse, somebody trying to hide something.