A curated list of dotfiles resources. Inspired by the awesome list thing.
- Getting started with dotfiles (L. Kappert)
- Getting started with dotfiles (D. Vints)
- Managing your dotfiles
- Dotfiles Are Meant to Be Forked
- Dotfile discovery
- Setting up a new (OS X) development machine: Part 3 - Dotfiles and custom SSH config
- Setting Up a Mac Dev Machine From Zero to Hero With Dotfiles; Part 2
- Using Git and GitHub to manage your dotfiles
- conf.d like directories for zsh/bash dotfiles
- Managing your dotfiles
- The best way to store your dotfiles: A bare Git repository
Using specific tools¶
- Using GNU Stow to manage your dotfiles
- Managing Dotfile Symlinks with GNU Stow
- Managing dot-files with vcsh and myrepos
- Manage dotfiles using vcsh and mr
- Dotfiles and dev tools provisioned by Ansible
- Manage a development machine with Ansible
Find dotfiles repos¶
There are many great dotfiles repos out there, each containing their own inspiration and gems. I think one of the best ways to go through them is by searching GitHub for "dotfiles".
- Google for "dotfiles"
- Archlinux collection
- Tip: search for a filename on GitHub, e.g. in:path .gitconfig.
Example dotfiles repos¶
A collection of the most popular, well-maintained, and collaborative dotfiles repositories & frameworks. Some projects contain just the dotfiles. Others go further by allowing you to easily add your own custom dotfiles, and/or including scripts to manage dotfiles/plugins.
|Bash it||Community bash framework.||Autocompletion, themes, aliases, custom functions. Well-structured framework.|
|Mathias’s dotfiles||Sensible hacker defaults for macOS||Lots of goodness here, great collaborative community effort.|
|Maximum Awesome||Config files for vim and tmux||Vim, tmux. Built for Mac OS X.|
|dev-setup||Mac OS X development environment setup||Extensive setup of developer tools on OS X.|
|webpro's dotfiles||macOS dotfiles||Bash, Homebrew, Brew Cask, Git, Node.js, Hammerspoon.|
|Overbryd's dotfiles||macOS 0-100 bootstrap||macOS defaults, Bash, Homebrew, Casks, Git, Vim|
|rootbeersoup's dotfiles||Effortless Bash, Vim and macOS configuration||A
|thoughtbot dotfiles||Set of vim, zsh, git, and tmux configuration files||Zsh, vim, tmux, git, homebrew. Uses rcm.|
|oh-my-zsh||Community-driven framework for managing your zsh configuration.||Includes 200+ optional plugins (rails, git, OSX, hub, capistrano, brew, ant, php, python, etc), over 140 themes to spice up your morning, and an auto-update tool.|
|Prezto||The configuration framework for Zsh.||Enriches the command line interface environment with sane defaults, aliases, functions, auto completion, and prompt themes.|
|YADR||The best vim, git, zsh plugins and the cleanest vimrc you've ever seen||Homebrew, zsh, git, vim, and more. Active repository.|
|holman does dotfiles||holman does dotfiles||Organized well around topics. Author wants it to work for everyone.|
|antigen||Plugin manager for zsh, inspired by oh-my-zsh and vundle.||Antigen is a small set of functions that help you easily manage your shell (zsh) plugins. Antigen is to zsh, what Vundle is to vim.|
|Dries's dotfiles||Simplified approach to dotfiles for macOS||Zsh, Oh My Zsh, macOS, Homebrew, Mackup|
|sobolevn's dotfiles||Dotfiles for the developer happiness||Zsh, Brew, Sublime, Python, Node, Elixir|
|oh-my-fish||Community Fish framework.||Includes many plugins and themes, with installation, auto-update, and scaffolding tools.|
|Paul's dotfiles||Abundant dotfiles with a plethora of cool custom functions||Fish, macOS, Homebrew, Custom Shell functions|
|rkalis's dotfiles||Well-maintained dotfiles featuring Fish, repository management and Hammerspoon||Fish, macOS, Homebrew, Repository management, Hammerspoon|
- Ansible - Radically simple configuration-management, application deployment, task-execution, and multinode orchestration engine.
- bashdot - Minimalist dotfile management framework written entirely in bash.
- chezmoi - Manage your dotfiles securely across multiple machines.
- dotbot - Tool that bootstraps your dotfiles.
- dotdrop - Save your dotfiles once, deploy them everywhere.
- dotfiles - Tool to make managing your dotfile symlinks in $HOME easy.
- Ellipsis - A package manager for dotfiles.
- Fisher - A package manager for Fish
- fresh - Keep your dotfiles fresh. Fresh is a tool to source shell configuration (aliases, functions, etc) from others into your own configuration files.
- GNU Stow - Symlink farm manager which takes distinct packages of software and/or data located in separate directories on the filesystem, and makes them appear to be installed in the same place.
- homeshick - Git dotfile synchronizer written in Bash.
- homesick - Your home directory is your castle. Don't leave your dotfiles behind (article).
- mackup - Keep your application settings in sync (OS X/Linux).
- rcm - rc file (dotfile) management
- themer - Manage and generate themes across your development tools from within your dotfiles.
- vcsh - Version Control System for $HOME, multiple Git repositories in $HOME.
- yadm - Tool for managing a collection of files across multiple computers, using a shared Git repository and some additional features.
- Cider - Hassle-free bootstrapping with Homebrew.
- dockutil - Command line tool for managing dock items
- mas - Mac App Store command line interface
- dotfiles.github.io - Your unofficial guide to dotfiles on GitHub.
- OS X Defaults - Centralized place for the awesome work started by @mathiasbynens on .macos.
- Filesystem Hierarchy Standard - Directory structure and directory contents in Linux distributions.
- XDG Base Directory Specification - Summary
- A lesson in shortcuts - How the idea of "hidden" or "dot" files was born, by Rob Pike (originally posted on Google+)
- Awesome Shell - Curated list of awesome command-line frameworks, toolkits, guides and gizmos.
- Awesome Zsh Plugins - List of Zsh plugins suitable for use with oh-my-zsh, antigen & Prezto.
- Awesome Dev Env - Curated list of awesome tools, resources and workflow tips making an awesome development environment.
- Awesome Fish - Curated list of packages, prompts, and resources for the fish shell.
- Bork - Bash DSL for config management.
- Eduardo's dotfiles
- Kevin's dotfiles
To the extent possible under law, Lars Kappert has waived all copyright and related or neighboring rights to this work.