Soda OS turns one Linux machine into a shared remote development system. Each person has a normal Linux account for identity and administration, while daily development happens in a separate workspace for each person and project.
Choose where to start
- Infrastructure owner: start with Deploy to a cloud or Install on premises.
- Administrator: complete Make the first connection, then add people and manage access.
- Developer: start with Projects and workspaces, then Connect and develop.
- System operator: use Administration, Updates and fallback, and Data safety and removal.
Read Product model first if you want to understand the accounts, services, and ownership boundaries behind these tasks.
From download to development
- Open Deploy to a cloud or Install on premises, then choose the artifact for the machine's architecture.
- Install with the network ISO or import the reusable QCOW2.
- Finish the common first-boot setup from the machine console.
- Connect over the LAN or Tailscale with SSH, Cockpit, and Forgejo.
- Add one primary account for each person.
- Add or create a project in Cockpit's Projects page.
- Select Set up for me to create your isolated workspace.
- Connect directly to that workspace with OpenSSH.
- Use
miseto install the tools required by you or the project.
Prerequisites
- An x86-64 or AArch64 machine or virtual machine.
- A disk whose contents may be replaced during installation.
- Network access while using the network installer.
- Console access for installation and first-boot setup.
- One SSH public key for the first administrator.
- Either a trusted LAN or a Tailscale network.
Cloud deployments require a usable VM console. Soda does not use public SSH as an onboarding path.
Expected result
You finish with a remotely accessible Soda machine, a primary administrator, native Forgejo access, and a private development workspace reached through ordinary SSH.
If something fails
Keep the exact error shown by Anaconda, first-boot setup, Cockpit, Forgejo, or the command you ran. Soda reports native failures instead of hiding them behind a background workflow. Retry only the failed task after correcting its stated cause.
Next step
Read Product model, or go directly to the deployment guide for your environment.