Skip to content

Juggle OS v1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 01 Nov 01:33
· 3 commits to main since this release

Juggle OS 1.0: images for older Raspberry Pis (32-bit, armhf; tested on a Pi 2), and Juggle Flash for Windows and Linux (x64), which writes them. Flash a card with Juggle Flash or juggle flash v1.0.0, or update a Pi already on Juggle OS from Juggle Flash or with juggle update <pi> v1.0.0. They 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

  • The app contract is frozen at 1.0. What an app can rely on (how it's installed and run, the files it may write, the hardware it may use, and the requests it may make) only grows from here: an app made for Juggle 1.0 runs unchanged on every 1.x release, and anything that would break one waits for 2.0.
  • Apps must say which Juggle OS they need, with "juggle": "1.0" in their app.json, as Juggle Hello and the apps built on App Base already do. An app without it isn't installed, and one already installed isn't started: the login screens say why. Add the line and install the app again: it's the same app, and keeps its settings and everything else it has saved.
  • Juggle Flash and juggle are as in v0.8.0, now versioned 1.0.0.

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, with apps that don't say which Juggle OS they need (or need a later one) refused, and an app from before 1.0 installed again keeping its state. This image, as published, in one boot.
  • On a Pi 2, with this release's code and Juggle Hello: updated over Wi-Fi and kept, with all the checks passing; a kernel panic and a hang during trial updates each went back to the OS before, by itself; and the power pulled during a trial boot, while running and early in a boot, with the Pi back each time and nothing to recover.