Repository navigation
Optional bootstrap packages #12954
nickdirienzo
started this conversation in
Ideas
Replies: 1 comment 1 reply
|
I revised #12956 based on the follow-up discussion. Instead of an optional package state, bootstrap packages now accept an [bootstrap.packages]
"brew-cask:ghostty" = { os = "macos", env = "desktop" }
"brew-cask:slack" = { env = ["work", "client"] }
AI-assisted — Tool: Codex; model: OpenAI/GPT-5; version: unavailable. |
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
One thing that would simplify how we handle
mise bootstrapis optional bootstrap packages.Right now we have stuff that's actually required, eg:
But then there's a bunch of stuff that's useful / commonly used but definitely shouldn't be required for every developer, eg:
I ended up writing an interactive bootstrap script that asks
y/nfor these, but it feels like mise already has all of the primitives except for expressing "this package is optional."Maybe something like:
Then an interactive
mise bootstrapcould prompt for optional packages, while non-interactive /--yesbootstrap could just skip them unless explicitly requested.Maybe eventually:
The thing I like about this vs a separate shell script is that the package still has one declarative home.
os, package manager, adoption, source/provenance, etc. all stay inmise.toml; the only additional bit of state is whether it's required.Not sure if
optional = trueis the exact API, but the concept feels like it fits bootstrap pretty naturally.All reactions