Skip to content

Moonlight

The Moonlight extension adds Moonlight, a game-streaming client, to a Frostyard desktop image. Use it on the machine that you play on. The host that streams the game needs the Sunshine extension. 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 desktop bootc image: Snow, Snowfield, or Sundog, not Floe.
  • Root access to enable, update, and remove the extension.
  • Network access to https://repository.frostyard.org/ext/moonlight/.
  • Free space in /var for the download and the installed image.

The Moonlight extension 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=moonlight
sudo updex features enable moonlight --now

moonlight 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 files that the extension adds:

Terminal window
systemd-sysext status
command -v moonlight-qt
ls /usr/share/applications/com.moonlight_stream.Moonlight.desktop

systemd-sysext status lists moonlight. command -v prints a path, and ls prints the launcher file.

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.

Start Moonlight from your applications, or run moonlight-qt. The extension ships no service and adds nothing to /etc.

See whether a newer image exists, then update:

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

The update downloads the newest image and links it. A refresh replaces /usr under a running app, and a running app can fail. Close Moonlight before you run updex features update, or update with --no-refresh and reboot. See Manage system extensions for the check output and the update timer.

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

Remove Moonlight now:

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

Updex unmerges all extensions on the host, deletes the Moonlight image, and merges the rest again. Your Moonlight settings stay in your home directory. Reboot when the command finishes. Without --force, Updex refuses while the image is merged.

Item What you get
Package requests moonlight-qt, from the Frostyard APT repository
Version The image file name carries the moonlight-qt version
Command and launcher /usr/bin/moonlight-qt and /usr/share/applications/com.moonlight_stream.Moonlight.desktop
Services None
Image file moonlight_<version>_<os>_<arch>.raw.zst; .raw.xz, .raw.gz, and .raw also work
Download From https://repository.frostyard.org/ext/moonlight/, signature required (Verify=true), into /var/lib/extensions.d/

Each build checks that these paths are present: the moonlight-qt binary and the launcher. 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.