feat(theme): themes as files (theme crate: toml subset + ints, contrast check, wire); whimsy dark + light; display reads themes/, serves THEME/THEME_NAME, init SET_THEME -> THEME_CHANGED to all windows, bar themed; k-ui follows; settings appearance; init keeps choice in sealed users/<id>/settings/, reapplies at sign-in + display restart

This commit is contained in:
2026-10-28 13:36:57 +01:00
parent 29becf297c
commit 6827e1455d
43 changed files with 1140 additions and 179 deletions

View File

@@ -37,9 +37,11 @@ declares `display`. Nothing gets anything "just in case".
apps/<id>/ an app they installed
data/<id>/ an app's private folder (its `storage`, its own key)
permissions/<id> their decisions, one file per app id
settings/ init's record of their choices (the theme)
/bin/ system servers and the shell (init starts these)
/themes/ the themes the display offers (`*.toml`)
/factory/ plaintext starter content a user's folder is
seeded from (home/, permissions/, data/)
seeded from (home/, permissions/, settings/, data/)
```
Users each decide for themselves, even about the system's apps, and what