Which platforms does Zero Install support and can I mix stable and experimental apps?

Updated

Zero Install runs on Linux, Windows, and macOS, and it explicitly supports mixing stable and experimental applications on a single system. It is fully open source, and you can control it either from a command line or a graphical interface. If you want to try experimental builds of an app without disturbing the stable version you rely on, this is a supported scenario rather than a workaround.

Platform support

Zero Install is described as a decentralised cross-platform software installation system, and the supported platforms are stated directly:

  • Linux
  • Windows
  • macOS

Because it is cross-platform, a single package can be created to work on multiple platforms. That matters if you distribute software yourself: you publish one package rather than maintaining separate installers per operating system.

The Windows side has its own release cadence, with recent versions tracked in the project news. For example, Zero Install for Windows 2.29.0 replaced a fallback to an external solver with a built-in SAT solver and added support for arm64ec, while 2.28.2 raised the minimum .NET Framework version to 4.8. If you are on Windows, check the current release notes before assuming a specific framework version is sufficient.

Mixing stable and experimental apps

The site states that you can "mix and match stable and experimental apps on a single system." In practice this means the version you select for one application does not force the same choice on another. You can keep a stable release for daily work and point a different app — or a separate selection of the same app — at an experimental build.

This is possible because Zero Install does not perform a traditional system-wide installation. Applications run without being installed first, and each app's dependencies are handled separately. That separation is what allows different stability levels to coexist.

Why the isolation holds

Two mechanisms support this:

  • Dependency handling. Zero Install resolves and manages dependencies for each app, so two apps are not forced to share one global set of libraries.
  • Library sharing without mutual trust. Apps can share libraries without having to trust each other, so sharing a dependency does not mean one app gains authority over another.

What "no install" means for control

Running an app without installing it first is the core behaviour, and it changes what you can inspect and undo:

  • You do not have to guess what happens during installation, because there is no conventional installation step modifying your system.
  • Installing an app does not grant it administrator access.
  • Digital signatures are always checked before new software is run.

The signature check is the gate before execution, so an app whose signature does not verify is not run. Combined with the lack of administrator access, this limits what a newly added app can do to your machine.

Choosing between CLI and GUI

Both control paths are offered, and the choice is mostly about workflow:

Approach Better suited to
Command line Scripting, repeatable setups, remote or headless machines
Graphical interface Browsing and launching apps, one-click running

The site advertises running apps with a single click, which is the graphical path. If you prefer to script or automate, the command-line interface exposes the same control.

Distribution and updates

If you are evaluating Zero Install as a way to ship software rather than just consume it:

  • You create one package that works on multiple platforms.
  • You can publish on any static web host, with no central point of control.
  • Dependency handling and automatic updates are built in.

The decentralised model means there is no single registry you must go through, which is also why the security model leans on signature verification rather than a central authority.

Practical checklist before you commit

  1. Confirm your OS is Linux, Windows, or macOS.
  2. On Windows, check the current release notes for framework requirements and architecture support (for example, arm64ec support arrived in 2.29.0).
  3. Decide whether you want the command line, the graphical interface, or both.
  4. If you plan to mix stable and experimental apps, verify the specific app's available versions rather than assuming every app publishes both.
  5. If you distribute software, confirm your hosting is a static web host you control.

The main caveat is version-specific: platform support is broad, but Windows requirements have shifted across releases, so treat the release notes as the source of truth for your machine rather than any general statement about Windows support.