gitmyhub

awesome-dotfiles

★ 11k updated 2mo ago

A curated list of dotfiles resources.

A curated list of articles, example repos, and tools for managing dotfiles, the hidden config files that control your terminal, shell, and editor, so you can version and sync them across machines.

BashZshFishAnsibleGNU Stowsetup: easycomplexity 1/5

Dotfiles are the hidden configuration files that control how your command-line tools, text editor, and shell behave. On Unix-based systems, these files start with a dot (for example, .bashrc or .gitconfig), which makes them invisible by default in file browsers. Developers often store them in version-controlled repositories and share them publicly so others can learn from or copy their setups. This repository is a curated list of resources related to that practice.

The list is organized into three main areas: articles and tutorials, places to find dotfiles repos, and example dotfiles repositories. The articles section links to introductory guides explaining what dotfiles are, tutorials on managing them with Git and symlink tools, and explanations of how shell startup files load in different shells like Bash and Zsh.

The example repos section is the largest part. It organizes well-maintained public dotfiles projects by shell type: Bash, Zsh, Fish, and Ansible-based setups. Each entry in the table shows what the project focuses on, such as macOS defaults, editor configuration, or plugin management. Some projects are simple personal configs; others are full frameworks like oh-my-zsh and oh-my-fish that add theme and plugin support to their respective shells.

The list also covers dedicated dotfiles management tools, programs that help you install, symlink, and keep dotfiles in sync across multiple machines. Tools listed include GNU Stow (a symlink manager), various custom bootstrap scripts, and Ansible playbooks for fully automated machine setup.

This repository does not contain any dotfiles itself. It is a reference point for finding them, learning about approaches to managing them, and discovering the broader ecosystem of tools and communities around the practice. The README notes that some linked articles may look dated but are included because they are well-tested and widely referenced.

Where it fits