jdx/mise · error
history is disabled (history.enabled = false)
Error message
history is disabled (history.enabled = false)
What it means
Thrown by `mise bootstrap dotfiles pull` (run) when the history feature is turned off via `history.enabled = false` in settings. Pulling/applying remote dotfile changes depends on the history store, so the command aborts with an explicit message naming the setting.
Source
Thrown at src/cli/dotfiles/pull.rs:54
dry_run: bool,
/// Pull without prompting
#[usage(long, short = 'y')]
yes: bool,
/// Resolve a conflict with the repository's version
#[usage(long, value_name = "PATH")]
take_remote: Vec<PathBuf>,
/// Resolve a conflict by keeping this machine's version (published next)
#[usage(long, value_name = "PATH")]
keep_local: Vec<PathBuf>,
}
impl DotfilesPull {
pub(crate) async fn run(self) -> Result<()> {
if !crate::config::Settings::get().history.enabled {
bail!("history is disabled (history.enabled = false)");
}
let (store, tracked, _) = super::history::open().await?;
if let Some(reason) = store.unavailable() {
bail!("cannot apply: {reason}");
}
apply::apply(
&store,
&tracked,
&ApplyRequest {
paths: self.paths.clone(),
dry_run: self.dry_run,
yes: self.yes,
take_remote: self.take_remote.clone(),
keep_local: self.keep_local.clone(),
automatic: false,
plan_only: false,
},
)View on GitHub (pinned to afd2eddd3a)
Solutions
- Enable history in settings: set `history.enabled = true` (mise settings or config file)
- Verify with `mise settings get history.enabled` before pulling
- If you do not want history, sync dotfiles by other means (git directly) instead of dotfiles pull
Example fix
// before (config.toml) [history] enabled = false // after [history] enabled = true
Defensive patterns
Strategy: validation
Validate before calling
[ "$(mise settings get history.enabled)" = "true" ] || { echo "enable history first" >&2; exit 1; }
mise bootstrap dotfiles pull Prevention
- Check history.enabled before any dotfiles history-dependent command
- Keep history.enabled = true in shared/global config for machines using dotfiles sync
- Document the setting requirement in team dotfile bootstrap scripts
When it happens
Trigger: Running `mise bootstrap dotfiles pull` while `Settings::get().history.enabled` is false — i.e. history.enabled was set to false in global or project settings.
Common situations: Users who disabled dotfile history to save disk but later try to pull; fresh installs where history is disabled by default in their config; a settings migration or manual edit of the config turning history off.
Related errors
- history is disabled (history.enabled = false)
- history is disabled (history.enabled = false)
- {bin_name} is a mise bin however it is not currently active.
- [dotfiles]."{}": source does not exist: {}
- [dotfiles]."{}": mode symlink-each requires a directory sour
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/b8b6328b708acbdc.
Report an issue: GitHub.