A blazing fast dotFiles manager written in Go
Quickly manage and organize all your symlinks with blazing speed.
Files are automatically backed up before being overwritten for safety.
Check symlink health with OK, MISSING, BROKEN, and MISMATCH states.
Different configurations for different machines or environments.
Use variables like hostname, OS, arch in your configuration.
Run custom commands before and after link/shell operations.
Easily clone and manage your Git repositories in one place.
Run shell commands with stdin support for creating files.
Preview changes before applying them with a comprehensive dry-run mode.
Install hideDot using Homebrew:
brew tap youhide/homebrew-youhide
brew install hidedot
Scaffold a starter config with hidedot init, or create a hidedot.conf.yaml by hand:
- defaults:
link:
relink: true
force: true
backup: true # Automatic backups (on unless set to false)
profile: personal # Optional: for multi-machine setups
# Create directories
create:
- ~/.config
- ~/.local/bin
# Manage symlinks
link:
~/.config/nvim: ~/.mydotfiles/nvim
~/.zshrc: ~/.mydotfiles/zsh/zshrc
# Clone git repositories
git:
~/.oh-my-zsh:
url: https://github.com/ohmyzsh/ohmyzsh.git
description: "Oh My Zsh"
# Run shell commands
shell:
- [touch ~/.hushlogin, Create hushlogin]
# Hooks for custom actions
hooks:
pre_link:
- echo "Starting link process..."
post_link:
- echo "Links created successfully!"
Run hideDot to create the symlinks:
# Scaffold a starter config
hidedot init
# Adopt existing files: moves them in, symlinks them back
# and adds them to your config
hidedot adopt ~/.zshrc ~/.config/nvim
# Create symlinks (default command)
hidedot
# Or with a custom config
hidedot --config path/to/hidedot.conf.yaml
# Preview changes first
hidedot --dry-run
# Check status of symlinks
hidedot status
# Remove symlinks and restore backups
hidedot unlink --restore
hidedot.conf.yaml (use --force to overwrite)hideDot is a blazing-fast dotfiles manager written in Go. It manages symlinks, automatic backups, profiles, templates, and hooks from a single YAML configuration file.
Install hideDot with Homebrew: run brew tap youhide/homebrew-youhide
followed by brew install hidedot.
hideDot runs on macOS, Linux, and Windows. Template variables let you adapt configuration per hostname, OS, and architecture.
Yes. hideDot automatically backs up any file before overwriting it. You can restore
backups with hidedot unlink --restore and manage them with hidedot backup create
and hidedot backup list.
Yes. hideDot is free and open source, released under the GNU General Public License v3.0 (GPL-3.0).