dot

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 4, 2021 License: MIT Imports: 1 Imported by: 0

README

dot

dot is a small CLI for managing your dotfiles. It allows you to sync dotfile sources to the actual dotfiles. This is useful if you wish to keep all your dotfiles in a git repopository since sources can be stored separately from the actual dotfiles.

Installation

Homebrew
brew install cszatmary/tap/dot
Binary Release

You can manually download a binary release from the release page or use a tool like curl or wget.

Install from source

Required Go version >= 1.16.

go get github.com/cszatmary/dot

Usage

dot uses a registry to manage dotfiles. A registry is simple a directory with a dot.yml file and the dotfile sources.

First setup dot to use a registry:

dot setup -r <path to registry directory>

Now any time you want to update your dotfiles simply run:

dot apply

By default apply will update all dotfiles if no arguments are provided. Arguments may be optionally provided to only update specific dotfiles.

dot apply vim zsh
dot.yml

dot is configured using a dot.yml file which must be located in the root directory of a registry.

Ex:

dotfiles:
  git:
    src: git/gitconfig
    dst: ~/.gitconfig
  zsh:
    src: zsh/zshrc
    dst: ~/.zshrc

dot.yml must contain a top level dotfiles key which is a map of dotfile names to their configuration. The name is used to identify the dotfile in the apply command. src is the path to the source file in the registry and must be relative to the registry. dst is the absolute path to the actual dotfile on your filesystem.

License

dot is available under the MIT License.

Contributing

Contributions are welcome. Feel free to open an issue or submit a pull request.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package dotfile holds functionality for working with dotfiles and registries.
Package dotfile holds functionality for working with dotfiles and registries.
internal
log
Package log provides simple logging for dot.
Package log provides simple logging for dot.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL