Files
hq/01-RESEARCH/026-the-graphical-session-as-modules/00-overview.md
T

3.4 KiB

status, initiated, touches, became
status initiated touches became
active 2026-10-04
02-DECISIONS/0176-the-login-shell-is-a-node-seat-and-execute-is-its-contract.md
02-DECISIONS/0177-a-unit-may-be-user-scoped-and-the-service-manager-is-a-node-seat.md
02-DECISIONS/0182-inside-a-home-the-mesh-owns-what-it-places-and-holds-the-rest-as-found.md
02-DECISIONS/0203-the-accounts-environment-is-one-modules-and-every-module-contributes-to-it.md
02-DECISIONS/0204-a-module-contributes-shell-code-to-the-login-shell-in-named-slots.md
02-DECISIONS/0205-software-the-distribution-does-not-package-ships-as-a-pinned-archive-of-the-module.md
03-DESIGN/01-to-be/37-the-operators-machine.md
03-DESIGN/01-to-be/38-building-the-operators-machine.md
04-ISSUES/168-a-setting-reaches-every-file-and-contribution/00-report.md

026 — The graphical session as modules

What is investigated

The workstations' graphical session as modules of the mesh, at the same level as the shell (to-be 41): a package, files under the account's home, a seat, and nothing that names a machine. The pieces are:

  • the login manager;
  • how a session starts and what environment it gets;
  • the display server (X today, Wayland as a sibling);
  • the window manager (i3, and sway as its Wayland sibling);
  • the terminal emulator (xterm);
  • the session's companions: bar, compositor, launcher, notifier, lock and idle, clipboard, wallpaper, theming, fonts.

To-be 38 names this WP7, and says each seat begins with a record naming its holders and verbs. To-be 37 §4 leaves one question for the resolver: whether a held seat can gate another's assignment.

Why

The operator asked for the graphical modules next, at the shell's level, and for one consistent experience across machines. Since the predecessor retired, nothing manages the workstations' desktops. Measured in 01:

  • Two workstations carry one 983-line predecessor module's output, still byte-identical in its core.
  • One workstation also carries another machine's hardware fragments.
  • One runs a session that predates two fixes, with two notification daemons and two portals.
  • The session's environment is a hand-kept second copy of the account's, beside the one the mesh now writes.

What it touches

  • The seat table: up to ten node seats.
  • The resolver: a seat held on a node gating another module's assignment.
  • The contribution mechanism of ADR 0204: whether it generalises beyond shells, or whether tools' own drop-in directories serve.
  • The host's user-scoped units (mesh-host #72, still open).
  • Settings for per-machine values (issue 168).
  • ADR 0205's archive for the two pieces the distribution does not package.

Documents