OOrion OS

Developer Summary · v1.0

Orion OS — Developer Summary

One-pager orientation — read this first; use the Developer Handbook for depth, boot/env detail, and the full API appendix.

What Orion OS is

A modular Linux desktop (Alpine userland) with:

  • Custom PID 1 (init/init.sh /init)
  • Weston / Wayland session
  • Catalog-driven apps (catalog/apps.yaml)
  • SAL — system control via JSON-RPC over HTTP (sal-backend-linux)
  • AI backend — HTTP UI + POST /prompt integration point
  • Internet Hub — navigation from internet-hub/hub.yaml
  • First-boot wizardfirst-bootd + first-boot until /etc/myo/firstboot-done exists
Naming: User-facing name is Orion OS. Paths on disk still use myo in many places (/etc/myo, /var/log/myo) until a repo-wide rename completes.

How it boots (short)

Firmware → kernel → /init → udev/seatd → (Weston or compositor-watchdog) → devtoolsdSAL ai-backend / ai-shell background-loaderfirst-boot or session-launcher → Hub / AI UI.


Repositories that matter

PathWhat
apps/Applications
services/Daemons (net-status, first-bootd, …)
sal/backends/linuxSAL server
ai/backend, ai/ai-uiAI stack
init/init.shBoot orchestration
catalog/App definitions
profiles/Boot profiles for SAL
build/Rootfs overlay + disk/ISO scripts

Add an app (checklist)

  1. Crate under apps/<id>/, add to workspace Cargo.toml.
  2. Ensure build/scripts/assemble-rootfs.sh lists the binary to copy.
  3. Add catalog/apps.yaml entry (command: = binary name).
  4. Optionally: internet-hub/hub.yaml tile, ai/backend/src/intent.rs phrases.

Add a service (checklist)

  1. Crate under services/<name>/.
  2. Start it from init/init.sh (start_bg …), log under /var/log/myo/services/.
  3. Prefer localhost HTTP with small JSON contracts.
  4. Document stable endpoints (handbook Appendix A if user-facing).

Editions

File /etc/myo/edition: user or developer. Read it at runtime for conditional UX.


Build OS images

Requires Linux (or WSL2 + deps / Docker). See build/SHIP.txt.

./build/scripts/build-images.sh user

Outputs under build/out/ (.raw + .iso). Windows-only hosts cannot run the full pipeline without WSL/Docker.


Debug quickly

  • /var/log/myo/init.log — init
  • /var/log/myo/services/*.log — services
  • log-viewer app on device

Local dev: scripts/run-dev.sh / run-dev.ps1.


Key URLs (localhost)

ServiceDefault
SAL JSON-RPChttp://127.0.0.1:8750/rpc
AI backendhttp://127.0.0.1:8787
Internet Hubhttp://127.0.0.1:8790
net-statushttp://127.0.0.1:8791
first-bootdhttp://127.0.0.1:8793

Privileged SAL actions need SAL_DANGEROUS=1 (documented in init/init.sh).


Full documentation

→ The on-site Developer Handbook (Developer Onboarding) — architecture, init env, profiles, and Appendix A — API reference.

Orion OS Developer Summary v1.0