MixOS

An agent-operable computing system

A Linux userland where every app is a service, every service speaks one message bus, and Mix is the shell. Legible, modifiable and reconstructible by design, so people and agents can run the same machine the same way.

One system, desktop and server

One repository, one Cargo workspace, one system binary. What a machine runs is chosen at install time.

MixOS is written in Rust. Desktop, server, command-line and library code live in one public repository, and each shipping component declares the install profiles it belongs to. The shell and every headless daemon ship as one binary, mix; each daemon is a symlink that picks its role from the name it was started as.

Built to be driven

Anything a person can do in a MixOS app, an agent can do over the Bus.

One Bus

The noded broker handles service registration, discovery, routing, subscriptions and mesh peering between nodes. Every app and daemon is a service on it.

Engine-first apps

An app's behaviour is a set of named commands. The window, the command line and the Bus invoke them the same way.

Drive commands

Every toolkit app also answers the same drive commands: read the widget tree, click, type, press keys, scroll, move the window and take a screenshot.

Mix, the shell

Mix is the interactive shell and the scripting language. Its manual is built into the binary: mix man TOPIC needs no checkout and no network.

Edit together

The editor works over a shared edit service, so people and agents edit one document at once and see each other's carets and changes live.

Privilege without sudo

hostd makes privileged host changes through closed, typed commands. Each change is checked, recorded and reversed if it fails.

Try it beside your own desktop — at native speed

Keep your desktop on VT1. Run MixOS on VT5. Flip between them with Ctrl+Alt+F1 and Ctrl+Alt+F5.

MixOS arrives as a small signed image that runs as a systemd-nspawn machine with its own virtual terminal. Both desktops keep running, and MixOS drives the real GPU, keyboard, mouse and speakers. There is no hypervisor, virtual GPU or remote display in the way.

Native, not emulated

VirtualBox, virt-manager, Incus and Proxmox show a guest desktop in a window through emulated hardware. A VT gives MixOS the whole machine, so what you try is what you get.

Beside, not instead

Nothing replaces your desktop and nothing is repartitioned. One command adds MixOS on its own VT, and one command removes it again.

Parts you already have

Kernel virtual terminals, DRM handover, seatd and systemd-nspawn are already on Ubuntu, Fedora, Debian, Arch, openSUSE and Mint. At most you add one package.

Know before you go: it needs sudo, and it is not a sandbox, because the image gets your real input devices and GPU. Intel and AMD graphics come first. Status: it runs daily on the developers' machines. The download and the one-command installer are being built.

Read more

The manual grows with each component. This site describes the current main branch.