Muppy 18.87.0¶
Released 2026-09-08.
The Muppy 18 App Definition declares its services in Muppy¶
The App Definition that runs Muppy 18 itself (the ikb v2 template) now carries its seven
services as Systemd Unit definitions on the App Definition form, the way the v1 template
always did. The .muppy/services.yml file the repository used to ship, and the generator
that wrote it at build time, are gone.
What you gain. The services of a Muppy 18 App Server are catalogued and editable in the GUI, versioned with Muppy, and visible on every App Server instantiated from the template — instead of living in a file on the box that only the build script touched.
What you have to do. Nothing for a new App Server: it receives the definitions at
provisioning. An App Server already provisioned from this template still runs the units
its services.yml declared; migrate it in this order, from its form:
- Sync from the App Definition first — the seven definitions arrive on the App Server;
- Configure systemd units second — the units are deployed from those definitions.
Do not configure before syncing
Configuring first removes the units the old file declared from the host before the new definitions exist, and the App Server ends up with no services until the sync runs.
Reading a Systemd Unit definition¶
Three small changes on the definitions themselves (see Systemd Service Units for the feature):
- the Source column is now visible on the list, so you can tell a unit that arrived by migration from one you declared by hand;
- an App Definition that hides the legacy GUI/CRON blocks now passes that choice on when you Sync all from template — it used to travel only at duplication;
- the help of Environment directives and Template context says what each field really is. Template context is a Python literal (a dict written in Python syntax), not JSON as its help claimed, and none of the shipped unit templates reads it — leave it empty unless a template of your own does.