Cross-platform dotfile manager.
- Sync (push and pull) with a remote repository.
- Supports go templating for dynamic dotfiles.
dott help| Type | Description |
|---|---|
| file | Copy files to directories. |
| brew | Install homebrew packages. |
| npm | Install npm packages. |
Place a dott.yaml file in your home directory with the following:
packages:
- group: dotfiles
repo: git@github.com:dottsh/example-dotfiles.git
dest: ~/
items:
- name: .zshrc
type: file
- group: brew dev stuff
items:
- name: infisical/get-cli/infisical
type: brew
- name: libpq
type: brew
- name: yq
type: brewInstall the polyrepo cli:
go install github.com/polyrepopro/polyrepo@latestand run the following to initialize the workspace:
polyrepo init --url https://raw.githubusercontent.com/dottsh/workspace/refs/heads/main/.polyrepo.yaml --path ~/workspace/.polyrepo.yaml
polyrepo sync