mirror of
https://github.com/theupriser/steamify-cachyos-live-iso.git
synced 2026-10-02 15:10:26 +02:00
docs: TODO correction - packagechooser mode:optionalmultiple works for the Steamify page, confirmed from global storage; no netinstall detour needed
This commit is contained in:
1 parent
161c037600
commit
6b69c1f619
1 file changed
+45
-40
@@ -2,50 +2,55 @@
|
|||||||
|
|
||||||
## Open
|
## Open
|
||||||
|
|
||||||
1. **Steamify installer page** (2026-09-28, confirmed dead end, next: netinstall).
|
1. **Steamify installer page** (2026-09-28, in progress; working path found).
|
||||||
Tested live in the ISO VM (vmisoboot.sh, QMP clicks/screenshots):
|
Tested live in the ISO VM (vmisoboot.sh, QMP clicks/screenshots + the
|
||||||
|
Calamares debug log, `pkexec-wrapper calamares -D6` foregrounded):
|
||||||
- **`packagechooserq` (custom QML) does not exist on this Calamares
|
- **`packagechooserq` (custom QML) does not exist on this Calamares
|
||||||
build.** `cachyos-calamares-next` ships `packagechooserq.conf` as a
|
build.** `cachyos-calamares-next` ships `packagechooserq.conf` as a
|
||||||
vestigial config file, but no `.so`: `/usr/lib/calamares/modules/`
|
vestigial config file, but no `.so`: `/usr/lib/calamares/modules/`
|
||||||
only has `packagechooser` (no q). Calamares refuses to start
|
only has `packagechooser` (no q). Calamares refuses to start ("Module
|
||||||
("Module ... not found in module search paths"). So `SteamifyPage.qml`
|
... not found in module search paths"). So `SteamifyPage.qml`
|
||||||
(app-styled switches) **cannot be loaded as a real module** on this
|
(app-styled switches) is dead: no module can load it here. Before
|
||||||
ISO; don't retry it without first confirming the module is installed
|
trying custom QML again, confirm the module is installed
|
||||||
(`pacman -Ql cachyos-calamares-next | grep viewmodule`, or
|
(`ls /usr/lib/calamares/modules`, `pacman -Ql cachyos-calamares-next
|
||||||
`ls /usr/lib/calamares/modules` in the live session) before building.
|
| grep viewmodule`) in a live session first.
|
||||||
- **`packagechooser` (the real, installed module), `method: legacy`, is
|
- **`packagechooser`, `mode: optionalmultiple`, DOES support real
|
||||||
single-choice regardless of `mode`.** Tested `mode: optionalmultiple`
|
multi-select**, confirmed from the Calamares debug log's actual
|
||||||
live: renders as "Choose a product from the list. The selected
|
global-storage write (not from its static label text, which
|
||||||
product will be installed." — a single-select list, not checkboxes.
|
misleadingly reads "Choose a product... the selected product will be
|
||||||
This matches the pre-session finding that started this whole redesign
|
installed" in both single- and multi-select modes):
|
||||||
(the very first packagechooser-based skip/boot pages had the same
|
`"packagechooser@steamifypage" selected "single,gaming,theme"` — a
|
||||||
single-select bug). So going back to plain `packagechooser` for
|
genuine comma-separated list, matching exactly the CSV format
|
||||||
Steamify's options does **not** give real multi-select either.
|
`steamify-install` already expects for `--options`. This is the
|
||||||
- **`netinstall` is the one module that genuinely renders checkboxes**
|
`Config::updateGlobalStorage(const QStringList&)` overload (plural),
|
||||||
for multiple simultaneous selections (confirmed live on the Packages
|
distinct from the single-choice `m_packageChoice` path. So the
|
||||||
step: CachyOS Packages, shell config, base-devel, KDE-Desktop all
|
**native, installed `packagechooser` module is the working page**;
|
||||||
ticked together, a real QTreeView-with-checkboxes widget). Next
|
no netinstall detour needed.
|
||||||
attempt: a `netinstall`-based page for Steamify's options (custom
|
- Global storage key: `packagechooser_steamifypage` (module instance
|
||||||
`netinstall.yaml`/groups data instead of real packages; the choice
|
id), value the comma-separated selected item ids.
|
||||||
goes to global storage as `netinstallSelect`, which
|
- **Next:** generate `packagechooser_steamifypage.conf`'s `items:` list
|
||||||
`shellprocess_steamify.conf` would read instead of
|
from `steamify.sh --defaults --list` (in `calamares-online.sh`, same
|
||||||
`packagechooser_steamifypage`). Verify the exact global-storage key
|
spot as the abandoned Items.qml generation) instead of the QML
|
||||||
and whether netinstall's groups mechanism can host non-package items
|
approach; check whether per-item `selected: true` (or similar) exists
|
||||||
before building anything.
|
for defaulting everything on, or whether "everything on by default"
|
||||||
- **Lesson for next time (the user's point):** check a Calamares module
|
needs a different mechanism (e.g. Steamify's own `--options` default
|
||||||
is actually installed/available (`ls /usr/lib/calamares/modules`,
|
when the page reports nothing chosen). Boot into (gaming/desktop)
|
||||||
`pacman -Ql cachyos-calamares-next`) and test the page live by editing
|
still needs its own answer: a separate small `packagechooser`
|
||||||
`/etc/calamares/settings.conf` + the module's `.conf` in a running
|
`mode: required` page (two items), since optionalmultiple's list
|
||||||
live session (`pkexec-wrapper calamares -D6`, no full ISO rebuild
|
doesn't suit an exclusive either/or choice.
|
||||||
needed) *before* spending a 13+ minute ISO build on it.
|
- Dead code from this session, left in the tree for now:
|
||||||
- Steamify-side work from this session (kept, still valid once a real
|
`SteamifyPage.qml`, `Items.qml`'s QML-singleton shape (its JSON
|
||||||
page module is found): `steamify.sh --defaults --list` (2.8.0,
|
*content*, generated by `--defaults --list`, is still exactly what's
|
||||||
released) and `calamares-online.sh`'s newest-steamify.sh-before-install
|
needed for the new plain-YAML `items:` list, just not as a QML file).
|
||||||
fetch. `SteamifyPage.qml`/`Items.qml`/`Theme.qml` copies are dead code
|
- **Lesson for next time:** verify a Calamares module is actually
|
||||||
until/unless `packagechooserq` becomes available; left in the tree for
|
installed before writing QML/config for it, and read a module's
|
||||||
now, not referenced by any working settings.conf sequence.
|
*actual* logged global-storage writes (not just its UI label text)
|
||||||
|
before concluding whether a mode does what its name suggests. Both
|
||||||
|
are testable live in the booted ISO VM without any rebuild
|
||||||
|
(edit `/etc/calamares/modules/*.conf` + `settings.conf`, relaunch
|
||||||
|
`pkexec-wrapper calamares -D6`, watch its foregrounded debug output).
|
||||||
|
|
||||||
2. **Check the live name**2. **Check the live name** (the build tree has it right:
|
2. **Check the live name**2. **Check the live name**2. **Check the live name** (the build tree has it right:
|
||||||
`build/x86_64/airootfs/etc/os-release`) after the next build: Hello's subtitle should say
|
`build/x86_64/airootfs/etc/os-release`) after the next build: Hello's subtitle should say
|
||||||
"Steamify CachyOS, based on CachyOS rolling" (`steamify-customize.sh`,
|
"Steamify CachyOS, based on CachyOS rolling" (`steamify-customize.sh`,
|
||||||
run by mkarchiso after the packages; the airootfs copy of os-release is
|
run by mkarchiso after the packages; the airootfs copy of os-release is
|
||||||
|
|||||||
Reference in new issue
Block a user