multi_user_template_create: improve preflight + error UX when /home is not btrfs #150
Labels
No labels
prio_critical
prio_low
type_bug
type_contact
type_issue
type_lead
type_question
type_story
type_task
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_skills#150
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Split out from #135.
Symptom
On a fresh Ubuntu/Debian machine, the very first command an operator runs from the multi-user setup docs (
multi_user_template_create) hard-fails at step[1/12] preconditions:Why this is a problem
The check itself is correct —
multi_user_template_createlegitimately requires/hometo be a btrfs subvolume so it can lay down per-user nested subvolumes for the snapshot/swap flow (seetools/docs/template.md:9). But the failure surfaces a few real UX gaps:/homeon ext4 by default. Operators following onboarding hit this with their first non-trivial command, with no warning earlier in the flow.tools/docs/template.md, no mention that this is multi-user-template-only and that other onboarding flows don't need it.Suggested directions (cheap → invasive)
tools/modules/installers/lib.nu:109-121— include the why, link totools/docs/template.md, and tell the operator that single-user installs can skipmulti_user_template_createentirely.multi_user_template_create, e.g. as part of thehero_runningskill flow.--allow-non-btrfsflag with a loud warning, for dev installs that want to exercise the rest of the flow on ext4 (no snapshot guarantees).My preference is (1) + (2) as a small follow-up, and to defer (3) until someone actually needs it.
Files
tools/modules/installers/lib.nu:109-121—require_btrfsdefinition.tools/modules/installers/template.nu:61-67— call site at step[1/12].tools/docs/template.md,tools/docs/multiuser.md— context for the requirement.Picking this up. Planned scope is small:
tools/modules/installers/lib.nurequire_btrfsso it explains why btrfs is required, names the multi-user/snapshot flow, and links totools/docs/template.md.tools/modules/installers/multiuser.numulti_user_install(same check, second surface).[1/12] preconditionslabel intools/modules/installers/template.nuso the requirement is named before the check runs.No new flags. No doc-preflight changes (deferred — keeps the diff focused). PR will follow.
PR #152 ready for review.