Skip to content

Juggle OS v0.7.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 21:33
· 18 commits to main since this release

Images for older Raspberry Pis (32-bit, armhf; tested on a Pi 2). Write one with juggle flash v0.7.0, or update a Pi already on Juggle OS with juggle update <pi> v0.7.0. Both download the image and check it against SHA256SUMS.

Based on Raspberry Pi OS Lite, Trixie (Debian 13), armhf. It's built with pi-gen's 2026-10-06-raspios-trixie-armhf release, with packages as of the build day. Linux kernel 6.18.50, Python 3.13.

What's new

  • ApplPi OS is now Juggle OS. The command is juggle, you log in as ssh juggle@<pi>.local, and the setup hotspot is Juggle-SETUP. Nothing reads the old names, so a Pi on ApplPi OS is flashed again with this release rather than updated. To keep your saved Pis, copy %APPDATA%\ApplPi\devices.json to %APPDATA%\Juggle first: a reflashed Pi then keeps its name, Wi-Fi and SSH host key.
  • juggle runs on Linux too. Build it as one self-contained file (dotnet publish src/Juggle.Cli -r linux-x64 or linux-arm, see the README). It flashes cards from a USB card reader or SD slot, never the disk the system runs from, and needs no desktop.
  • Apps say which Juggle OS they need. "juggle": "1.0" in app.json, and the OS gives apps its own version in JUGGLE, so an app that needs something newer is refused with a clear message instead of failing later. It's optional until v1.0. Apps made for ApplPi OS change "applpi" to "juggle" in their app.json.
  • An update that hangs goes back too. If a new OS on trial hangs before it has checked itself, the Pi restarts into the old one after 15 minutes, and says on the next boot that the trial restarted before it could check itself. juggle update waits long enough to report it.
  • A card flashed again starts clean. Its data partition is formatted on the first boot, so an old app, its settings and old Wi-Fi details don't come back.
  • The screen shows the new logo at boot, one icon per CPU core on the console, and the Pi's model on the login screens.

Tested

  • In QEMU: two boots and an update to the other slot, on a card with an old data partition where the new one goes. This image, as published, in one boot.
  • On a Pi 2: a kernel panic and a hang during a trial update both went back to the old OS; the power pulled during a trial boot, while running, early in a boot and while settings were being written, with nothing lost; flashed with this release's code, checked on its screen and over SSH, and flashed again to start with an empty data partition. A card flashed and the Pi updated from Linux (Debian 13). A second Pi flashed from ApplPi OS with its app redeployed.