Skip to content

squeeb/netware-sense-hat-screensaver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetWare Worm Screensaver for Raspberry Pi Sense HAT

A faithful recreation of the legendary Novell NetWare worm screensaver, now on your Sense HAT's 8x8 LED matrix. Because the 90s weren't retro enough until you could watch them in miniature.

What is this?

Back when NetWare ruled enterprise / school networks, there was a screensaver featuring a red worm that would speed up when your server was busy. It was the original real-time system monitor that nobody asked for but everyone secretly enjoyed.

Now you can experience that nostalgia on a display roughly the size of a postage stamp.

You can see a video of this running here (from this reddit post).

netware sensehat{width=200}

Features

  • Independent Worm Movement: Each CPU core gets its own colored worm bouncing around independently
  • CPU Load Responsive: Worms speed up and grow longer tails under load
  • Bouncy Physics: Worms bounce off edges like digital pinballs
  • Multi-Core Support: Every core gets a coloured worm (Red, Green, Blue, Yellow, Cyan, Magenta, Orange, Pink)
  • Systemd Integration: Run as a service, auto-starts on boot
  • Customizable: --interval and --stats options for your own flavor of chaos

## Inspiration

  • I miss the 90s
  • This YouTube video of someone running SCRSAVER.NLM like the good ol' days and then running a fork bomb for lulz.
  • I've been drinking.

Installation

Quick Install (recommended):

sudo ./install.sh

This will:

  • Install Python dependencies via apt (python3-sense-hat and python3-psutil)
  • Copy the screensaver to /usr/local/bin/sense_hat_worm
  • Install the systemd service
  • Enable and start the service automatically

Manual Install:

sudo apt-get update
sudo apt-get install -y python3-sense-hat python3-psutil
sudo cp sense_hat_worm.py /usr/local/bin/sense_hat_worm
sudo chmod +x /usr/local/bin/sense_hat_worm
sudo cp sense_hat_worm.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now sense_hat_worm.service

Usage

# Run manually
python3 sense_hat_worm.py

# Show CPU stats (per worm)
python3 sense_hat_worm.py --stats

# Custom update interval (0.1-0.5 recommended, 0.4 or less for independent worms)
# But you can pretty much use any interval you want. 
python3 sense_hat_worm.py --interval 0.3

The Interval Parameter

  • Default (0.2s): Worms move at a reasonable pace
  • Faster (0.1s or less): Worms get zippy
  • Slower (0.5s+): Leisurely, zen-like movement, but they'll all appear to move at the same time every "tick".
  • For independent movement: Use 0.4 seconds or less so you can see worms moving at different times, which more closely resembles the original behaviour.

Systemd Commands

sudo systemctl start sense_hat_worm      # Start it
sudo systemctl stop sense_hat_worm       # Stop it
sudo systemctl status sense_hat_worm     # Check status
sudo systemctl restart sense_hat_worm    # Restart it

Testing Under Load

Watch two of the worms go bonkers:

sudo apt-get install stress-ng
stress-ng --cpu 2 --timeout 30s

How It Works

  • Each worm bounces independently with staggered timing
  • Movement speed scales with per-core CPU load (0.5s idle -> 0.2s at 100% load)
  • Tail length grows with load (5 pixels idle -> 15 pixels at 100% load)
  • Each core gets a different coloured worm

Nostalgia Factor: 10/10

This will transport you back to server rooms that smelled like hot electronics and the inexplicable satisfaction of watching a worm move across your screen.


Warning: This screensaver may cause uncontrollable urges to set up an actual NetWare network in your basement.

About

A Novell NetWare 4.11 esque screensaver for the raspberry pi sense hat

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors