profile: --profile / BUBBLEBOX_PROFILE — apply a profile in place #5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "profile/explicit-path"
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?
Adds a global
--profile <PATH>flag (alsoBUBBLEBOX_PROFILE) so a profile can live in a git checkout (e.g. a host repo) and be applied in place instead of being copied into~/.config/bubblebox/.profile.tomlor the directory that holds it. An explicit path that doesn't exist is an error, with no silent fallback to the default.~/.config/bubblebox/profile.tomlresolvesfiles//units/next to its target. Wrappers and devshells, which can't pass flags, see the same profile through the symlink.profile.lockstays host state inconfig_dir. When the profile lives elsewhere,apply,generations switchand the no-change apply path mirror the lock next toprofile.toml(the committedflake.lockanalog). The mirror is best-effort and is only rewritten when it changes.BUBBLEBOX_PROFILEis exported to children.Consumer: cn
glen/thinkpad-bubblebox-consumer, which drops the Justfile'sinstall/rsync/copy-the-lock-back dance.Verified:
cargo test --workspace(124 pass, 3 new). Isolated-HOME functional runs covered--profile <dir>, the env var, and the symlinked default location (files resolved, lock mirrored, mirror restored on a no-change apply), plus a missing path giving exit 1. An end-to-endapply --refreshof rg+fd against the signed bees cache worked andrg --versionran. Clippy isn't in the rust:bookworm image, so it wasn't run.Needs a release (v0.3.0) before the thinkpad pin can use it.