Skip to content

mavam/dotfiles

Repository files navigation

dotfiles

Proper dotfiles are the very heart of an efficient working environment.

On macOS, Homebrew is the package manager.

Usage

Synopsis

Clone this repository and optionally bootstrap your system:

git clone [email protected]:mavam/dotfiles.git ~/.dotfiles
cd .dotfiles
./bootstrap

The bootstrap script will ask you whether you'd like to setup specific components.

Dotfile Management

The Bash utility dots links configuration content from this repository into your prefix (default: $HOME), treating each top-level directory as a "tool" whose contents mirror the layout you want under $HOME. Add files to a tool directory and, with a root mapping, they will be picked up automatically.

Install everything:

./dots install

Install a subset (your shell expands globs before the script runs):

./dots install git gpg "neovim*"

Preview the plan without touching the filesystem:

./dots diff git

Remove previously linked files:

./dots remove git

Inspect overall status or the current environment:

./dots list
./dots doctor

The script is careful about existing files unless you pass --force. Use the --prefix DIR flag to dry-run installs into an alternate location.

To add a new tool, create a directory (e.g., foo/) and drop your config files inside. When you need custom targets or directory preparation, add a foo/tool.config.yaml manifest:

root:
  target: "~/.config/fish"
directories:
  - path: "~/.gnupg"
    permissions: "700"

root mirrors the tool directory under the given target so new files are picked up automatically, and the optional directories entries let you pre-create sensitive paths with the right permissions.

About

🖥️ The very heart of an efficient work environment

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •