AirlockOS

A Xen-based desktop OS built with Rust, Qubes, and Nix.

AirlockOS combines Qubes VM isolation with a shared GNOME desktop. Nix lets you update and roll back the whole system.

Airlock's octagonal doorway emblem
  • NIXOS
  • QUBES
  • XEN
  • RUST

VM isolation

AirlockOS runs its own components in separate Xen VMs and lets you organise your applications into VMs too.

Rust services and configuration

AirlockOS services and configuration are written in Rust. Rusix provides Nix integration, and Verus is used for formal verification.

Whole-system Nix rollback

Each machine generation records the software and configuration for dom0 and the VMs. Roll back to a retained generation while personal files and application data remain at their current state.

System architecture

AirlockOS uses Xen to run its VMs and Qubes components to manage them and control interactions between them. Nix builds the system from machine configuration written in Rust.

Explore the architecture
QUBES VMsNixOS in every VM
dom0Privileged control VM
  • VM lifecycle
  • Device assignment
  • RPC policy
  • Deployment
SYSTEM VMs
USER VMs
Xen hypervisorShared virtualization foundation
All VMs, including dom0, run on Xen. Network topology & GUI topology
AirlockOS — GNOME desktop and VM workspaces

GNOME desktop

GNOME brings windows from separate VMs into one desktop. Applications keep their VM identity, with separate workspaces for personal applications and system administration.

Application launchersOpen applications in their assigned VM.

Focused VM indicatorSee which VM owns the active window.

VM workspacesKeep windows grouped by VM.

Read about the desktop