Skip to content

Use convention-based store paths to eliminate registry file #1

@krisrowe

Description

@krisrowe

Problem

stores create <name> already creates the bare repo at ~/.dotfiles-<name> by convention, but a registry file is still required to map store names to paths. This adds a config dependency that complicates new-machine setup and is unnecessary when the path follows the convention.

Proposal

Make the registry file optional by adopting convention over configuration:

  • Default store: ~/.dotfiles (unchanged)
  • Named stores: ~/.dotfiles-<name>
  • stores list: Discover stores by scanning for ~/.dotfiles-* directories that are valid bare git repos
  • --store <name>: Resolve to ~/.dotfiles-<name> directly, no registry lookup needed
  • Registry file: Keep as an optional override for non-standard paths, but don't require it for the common case

Benefit

  • One fewer file to bootstrap on a new machine
  • stores list works without any config — just discovers what's there
  • Simpler mental model: the store name is the directory suffix

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions