Skip to content

marcusgreenwood/flying-toasters-wayland

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flying Toasters

Classic After Dark screensaver recreation.

image

Runs on Wayland, X11, and Raspberry Pi using SDL2.

Building

Dependencies

  • Raspberry Pi / Debian / Ubuntu:
    sudo apt install build-essential pkg-config libsdl2-dev
    # For xscreensaver support (draws directly on its window):
    sudo apt install libx11-dev libxpm-dev
  • macOS:
    brew install sdl2

Build

make build

The binary will be in bin/flying-toasters. Run make run to preview in windowed mode, or ./bin/flying-toasters for fullscreen.

Raspberry Pi & Wayland

On Raspberry Pi OS (64-bit, Bookworm) with Wayland, SDL2 uses Wayland automatically. No extra setup needed.

To force Wayland if both X11 and Wayland are available:

SDL_VIDEODRIVER=wayland ./bin/flying-toasters

Controls: Press Escape or close the window to exit.

Using as a Screensaver

  • Wayland: Use with a Wayland screensaver/inhibit daemon. Some options:
  • X11 / XScreensaver: Add to ~/.xscreensaver:
    /usr/local/bin/flying-toasters
    
    Requires libx11-dev and libxpm-dev. When launched by xscreensaver, draws directly on its window (no flickering). If you see "DISPLAY is not set", ensure xscreensaver is started with your session's DISPLAY (e.g. export DISPLAY=:0 in your autostart).

Docker

Cross-compile for Linux (e.g. from macOS):

docker build -t flying-toasters .
docker create --name ft flying-toasters
docker cp ft:/flying-toasters ./
docker rm ft
chmod +x flying-toasters

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors