Files
Nomarchy/docs
Bernardo Magri 0cd6212b9c
All checks were successful
Check / eval (push) Successful in 3m49s
tools: preview the plymouth splash unprivileged; #137 attempt 1 reverted
Answering "how do I give you root": you don't. tools/plymouth-preview.sh
renders the splash — LUKS dialog included — into X11 windows in ~10s with
no reboot, no root and no DRM:

- unshare -rm = user + mount namespace; every mount dies with it.
- /run/plymouth is BOTH the socket dir and the compiled-in plugin path
  (`strings plymouthd` → /run/plymouth/plugins/), so we bind a writable dir
  over it AND recreate its symlinks — miss those and plymouth can't find
  x11.so, silently skips X11 and reaches for a tty.
- never pass --tty (main.c:2133 takes the X11 path only while default_tty
  is unset); /dev/dri is masked so a preview physically cannot mode-set a
  real output — which matters on a docked session (#127).
- PLY_CREATE_FAKE_MULTI_HEAD_SETUP fakes 800x600 + 640x480 heads.
- debug wants plymouth.debug=stream: — `file:` buffers and yields nothing.

What it proved immediately: with a STABLE two-head canvas the current theme
centres correctly on both heads. So the geometry is fine and #137 really is
the timing bug (positions frozen at parse time vs a canvas that resizes
when a head arrives) — recorded in the item.

And it caught my own fix: hoisting positions into layout() rendered the
background on both heads and nothing else — no logo, no bar — with NO parse
error logged. Reverted rather than shipped, because that script draws the
passphrase box on an encrypted machine. #137 carries the failure, the prime
suspect (plymouth script scope: assignment lands in `local` unless the name
already exists) and the fast edit/render loop for the next attempt.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 12:42:31 +01:00
..

Docs map

Where human and agent documentation lives. Do not invent a third tree for the same facts.

Path Audience Role
../README.md Everyone What Nomarchy is, install, options tables
REQUIREMENTS.md Users + agents Minimum system requirements (GPU/OpenGL, RAM, disk, UEFI)
VISION.md Maintainers + agents Product north star toward v1.0 and beyond — themes, not a task queue
ROADMAP.md Maintainers + agents Design/decision records + shipped log (historical ✓)
HARDWARE.md Users + agents Firmware, profiles, drivers, unsupported machines
TESTING.md Maintainers + agents Verification ladder, honesty rule, ISO/VM recipes
RECOVERY.md Users Broken theme/desktop/boot → undo
OVERRIDES.md Users Downstream Nix overrides
MIGRATION.md Users Existing NixOS → Nomarchy without reinstall
OMARCHY.md Users Coming from Omarchy — bindings/theme/install/config map
Path Role
../AGENTS.md Agent entry point, any vendor/harness (CLAUDE.md symlinks to it)
../agent/README.md Agent instructions + executable loop state: BACKLOG, LOOP, VERIFICATION, …
../.claude/ Claude Code adapter only: permissions + subagent defs

How work flows

VISION  (what we want the product to feel like)
   │
   ▼  human triages slices into…
BACKLOG (what's next, ordered — agents execute only this)
   │
   ▼  lasting design notes after ship →
ROADMAP ✓ entries

Agents do not implement directly from VISION or ROADMAP. They take the top actionable item in agent/BACKLOG.md (see agent/LOOP.md). They may append PROPOSED pitches that reference VISION § … or ROADMAP § ….