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.
- 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.
- Nix whole-system rollback, including dom0 and VMs
- Shared global Nix store with read-only VM closure views
- Rust configuration for the whole machine
- One GNOME desktop for applications running in separate VMs
- VM lifecycle
- Device assignment
- RPC policy
- Deployment
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.