Skip to content

Lemonade

The Lemonade extension adds the Lemonade local LLM server, with GPU and NPU acceleration, to a Frostyard bootc image. Use it to run language models on this machine. Every image carries the extension’s definition, switched off. The extension itself is not in the image: Updex turns it on and downloads it.

You need:

  • A Frostyard bootc image. Every image built on Base has systemd-sysext and frostyard-updex.
  • Root access to enable, update, and remove the extension.
  • Network access to https://repository.frostyard.org/ext/lemonade/.
  • Free space in /var for the image.

Lemonade has no published test results on Frostyard images yet. Try it on a machine you can spare first.

See what Updex found, then enable the feature and download it now:

Terminal window
updex features list --component=lemonade
sudo updex features enable lemonade --now

lemonade appears as a component, with its feature disabled. The enable command downloads the image, checks its checksum and signature, links it, and refreshes the merge.

Check the merge and the commands and the service:

Terminal window
systemd-sysext status
command -v lemonade lemond
systemctl status lemond.service

systemd-sysext status lists lemonade, both names print a path, and lemond.service is active.

If enable --now exits with a refresh error (refresh_error in JSON), the download worked, but the activation did not. If the output says activation did not finish, the extension is merged, but users and groups can be missing: reboot. Otherwise the merge state is unknown: reboot. A sudo systemd-sysext refresh by hand does not create users and groups. Then run the checks above again.

lemond.service is a system service. It starts at boot. Its web UI listens on port 13305.

The service reads /etc/default/lemond as an optional environment file. The merge places the file there from /usr/share/factory/etc/default/lemond. It holds a commented template and no secrets. Your edits are never overwritten. After an edit, restart the service:

Terminal window
sudo systemctl restart lemond.service

The service runs as the lemonade user. The extension puts that user in the systemd-journal and render groups, for journal and GPU access.

The package also ships a per-user lemond.service. The extension keeps it off, so it never starts a second instance next to the system service.

Check for an update, then install it:

Terminal window
updex features check --component=lemonade
sudo updex features update --component=lemonade

Updex downloads and verifies the new image, switches the link, deletes older versions, and refreshes the merge. See Manage system extensions for --no-vacuum, --dry-run, and the update timer. The refresh swaps /usr under the running system.

Roll back with sudo updex features rollback lemonade. It takes effect at the next boot. See Roll back.

Remove Lemonade:

Terminal window
sudo updex features disable lemonade --now --force

Updex unmerges all extensions on the host, deletes the image, and merges the rest again. The service and its commands go. Your /etc/default/lemond file stays. Reboot when the command finishes. Without --force, Updex refuses while the image is merged.

Item What you get
Package lemonade-server, from the upstream release, installed into the image with dpkg. The build checks the download against a pinned checksum
Support packages libcpp-httplib0.41 (from trixie-backports), libmbedcrypto16, libwebsockets19t64, fonts-katex, libatomic1, unzip
Commands /usr/bin/lemonade and /usr/bin/lemond
Settings file /etc/default/lemond, from /usr/share/factory/etc/default/lemond
User lemonade, in systemd-journal and render
Version The image file name carries the lemonade-server package version, plus a +rN snosi revision when one is set
Image file lemonade_<version>_<os>_<arch>.raw.zst; .raw.xz, .raw.gz, and .raw also work
Download From https://repository.frostyard.org/ext/lemonade/, signature required (Verify=true), into /var/lib/extensions.d/
Services lemond.service, on at boot

Each build checks the two commands, the service unit, the sysusers files, the libcpp-httplib library, the factory settings file, and the tmpfiles, preset, and activation files. A build that is missing one fails.

Reviewed 2026-10-27; Updex facts reviewed 2026-10-30. snosi commit b2858ca0222814c395cf8248db98f3e096d57dc9; Updex v2.1.3 commit 2661e987faac986f2594d1d9bbbadf1bf3053f5b.