Skip to content

Research: chezmoi version pinning per machine (--tag / --ref support) #64

Description

@thompsonson

Background

Investigated whether chezmoi supports pinning different machines to different dotfile versions (e.g. stable vs dev channel) via a tag or ref at chezmoi init / chezmoi update time.

Findings

  • chezmoi init only supports --branch, not --tag or --ref
  • chezmoi update has no ref flags at all
  • No open or closed issue on the chezmoi repo specifically requests --tag / --ref support
  • Maintainer (@twpayne) has explicitly said branching-per-machine is "holding chezmoi wrong" — templates are the preferred solution
  • Relevant chezmoi issues: #1234, #3856, discussion #1508

Research tasks

  • Evaluate whether a --tag / --ref flag on chezmoi init and chezmoi update is worth proposing upstream
  • If yes, raise a feature request or PR on twpayne/chezmoi proposing --tag support so machines can pin to a specific dotfiles release tag
  • Consider whether the branch-based channel approach (stable / dev branches) is a simpler alternative that doesn't require upstream changes
  • Assess whether our current release-please tagging + template/create_ approach already covers the actual need

Context

Our dotfiles repo uses release-please to tag stable releases (v1.x.x) and just release-dev for dev snapshots. The goal would be: one machine tracks v1.2.0, another tracks v1.2.0-dev.* — without manually running chezmoi git checkout <tag> each time.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions