paseo
The paseo extension adds Paseo, a coding agent workspace desktop app, to a Frostyard desktop image. Use it when you want the app on your desktop. Every image carries the extension’s definition, switched off. The extension itself is not in the image: Updex turns it on and downloads it.
Before you start
Section titled “Before you start”You need:
- A Frostyard desktop image: Snow, Snowfield, or Sundog. The extension builds on Base, so it carries its own GUI libraries.
- Root access to enable, update, and remove the extension.
- Network access to
https://repository.frostyard.org/ext/paseo/. - Free space in
/varfor the download and the installed image.
The paseo extension has no published test results on Frostyard images yet. Try it on a machine you can spare first.
Enable paseo
Section titled “Enable paseo”See what Updex found, then enable the feature and download it now:
updex features list --component=paseosudo updex features enable paseo --nowpaseo 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:
systemd-sysext statuscommand -v Paseo paseols /usr/share/applications/Paseo.desktopsystemd-sysext status lists paseo. Each name 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.
Use paseo
Section titled “Use paseo”Start Paseo from your applications, or run Paseo. The lowercase paseo command runs the command-line tool that comes with the app. The extension ships no service and adds nothing to /etc.
Update, roll back, and remove
Section titled “Update, roll back, and remove”See whether a newer image exists, then update:
updex features check --component=paseosudo updex features update --component=paseoThe update downloads the newest image and links it. A refresh replaces /usr under a running app, and a running app can fail. Close paseo 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 paseo. It takes effect at the next boot. See Roll back.
Remove paseo now:
sudo updex features disable paseo --now --forceUpdex unmerges all extensions on the host, deletes the paseo image, and merges the rest again. Your Paseo data stays in your home directory. Reboot when the command finishes. Without --force, Updex refuses while the image is merged.
What ships
Section titled “What ships”| Item | What you get |
|---|---|
| Package requests | The Paseo .deb (a pinned download), plus libatspi2.0-0, libgtk-3-0, libnotify4, libnss3, libsecret-1-0, libuuid1, libxss1, libxtst6, librsvg2-common, and xdg-utils |
| Version | The image file name carries the paseo version, plus a +rN snosi revision when one is set |
| Commands and launcher | /usr/bin/Paseo, /usr/bin/paseo, and /usr/share/applications/Paseo.desktop; the app lives in /usr/lib/Paseo |
| Icon support | librsvg2-common, the SVG GdkPixbuf loader, and a loaders.cache that names it |
| Services | None |
| Image file | paseo_<version>_<os>_<arch>.raw.zst; .raw.xz, .raw.gz, and .raw also work |
| Download | From https://repository.frostyard.org/ext/paseo/, signature required (Verify=true), into /var/lib/extensions.d/ |
Each build checks that these paths are present: the Paseo binary, the sandbox helper, the bundled paseo command, the two /usr/bin links, the launcher, the icon, the SVG GdkPixbuf loader, and its loaders.cache. A build that is missing one fails.
The SVG loader matters on Snow. A GdkPixbuf loaders.cache in an extension covers the whole /usr, and a cache without the SVG loader hides GNOME icons. This extension carries librsvg2-common and names the loader in its cache.
See also
Section titled “See also”Sources
Section titled “Sources”Reviewed 2026-10-27; Updex facts reviewed 2026-10-30. snosi commit
b2858ca0222814c395cf8248db98f3e096d57dc9;
Updex v2.1.3 commit
2661e987faac986f2594d1d9bbbadf1bf3053f5b.
mkosi.images/paseo/mkosi.confmkosi.images/paseo/required-paths.txtshared/packages/paseo/mkosi.confshared/packages/paseo/mkosi.postinst.d/paseo.chrootmkosi.images/base/mkosi.extra/usr/lib/sysupdate.paseo.d/paseo.featuremkosi.images/base/mkosi.extra/usr/lib/sysupdate.paseo.d/paseo.transferdocs/design/sysexts.md- Updex v2.1.3
README.md - Updex v2.1.3 release
- Updex
docs/adr/0019-apply-merged-sysusers-and-tmpfiles-on-a-live-refresh.md(a live refresh runssystemd-sysusersandsystemd-tmpfiles --create; when the last refresh fails, the merge state is unknown; a refresh by hand does not runsystemd-sysusers) - Murbella’s review (frostyard-org#28)