aboutsummaryrefslogtreecommitdiffstats
path: root/docs/superpowers/plans/2026-09-17-system-widgets.md
AgeCommit message (Collapse)AuthorFilesLines
2026-09-17docs: add the system widgets implementation planDanilo M.1-0/+1607
Eleven tasks. The palette's warning role first, since everything else colours against it; then an offscreen render harness, so each later task can look at its work without an install-restart-toggle cycle; then parsers, samplers, primitives, the four cards, and the live pass. Glyphs are taken from the old conky config and re-rendered rather than guessed. That matters: a guess at the Slackware mark drew a stomach, and the config had the real codepoint (U+F318) all along, along with the disk and network-share icons. The icon is the label now, so no mount name is drawn. The two NFS shares are told apart by their server's address, read from the mount's device field at runtime. The repo is public, so the address belongs on screen and not in a committed file; deriving it also means the card survives a renumbered LAN. df_parse keeps the device field for this, and `host` is non-nil exactly for a network mount. Two traps recorded because both would fail silently: df is aliased to df -h in the user's shell, so the sampler calls /usr/bin/df -P -B1 by absolute path or the parser reads '1.6G' where it expects bytes; and the per-core counters must outlive a frame, since load is a delta and a counter rebuilt each draw reports nil forever. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>