etyOS is Debian 13 with a desktop of its own. Four things are made here, and each has its part of these pages:
- NirvanaThe framework every built-in application is written in. Applets are small Rust programs that describe their window; Nirvana draws it.
- YAWCThe Wayland compositor: windows, input, decorations, blur, the session.
- etyDEThe desktop: the dock and launcher, notifications, Settings, Files, the lock screen, the keyring.
- The installerHow etyOS gets onto a disk: alone or next to Windows, what it checks, what it refuses.
Where to start
- To try etyOS: Install it, then take the first steps around the desktop.
- To see how applications for it are written: read how Nirvana works and walk through a first applet: one Rust file.
- To report a bug or ask for something: the tracker. No account is needed.
How the parts fit
┌──────────────────────── a session ───────────────────────┐
│ greetd ─ the login screen (YAWC + the `login` applet) │
│ └─ yawc-session ─ YAWC, the compositor │
│ └─ etyde-session ─ notifications, polkit, │
│ │ autostart │
│ └─ the shell: dock, clock, launcher │
│ │
│ applications: Nirvana applets (Settings, Files, …) │
│ and any Wayland or X11 program │
└──────────────────────────────────────────────────────────┘
Debian 13: kernel, drivers, apt, PipeWire, NetworkManager
- YAWC owns the screen. It places windows, draws their frames, routes the keyboard and the pointer, and blurs what is behind glass.
- Nirvana is a runtime (Electron) that hosts applets. An applet is a Rust process that returns a tree of components; Nirvana renders the tree with one design. An applet has no CSS and no markup of its own.
- etyDE is what joins them into a desktop: the session scripts, the desktop entries, and the applets that make the shell.
- The shell and the compositor talk over YAWC’s control socket: which windows are open, where the glass is, when the dock should come up.
The state of things
etyOS is an early release, and its source is not public yet. These pages describe how the system behaves and how it is used, and say so where something has not been tried or is not done. If a page and the system disagree, that is a bug in one of them: tell us.