Files
awesome-awesomeness/terminal/dotfiles
Jonas Zeunert 3619ac710a Rendered
2024-04-19 21:42:27 +02:00

29 KiB

Awesome Dotfiles !Awesome (https://awesome.re/badge.svg) (https://awesome.re)
 
A curated list of dotfiles resources. Inspired by the awesome (https://github.com/sindresorhus/awesome) list thing.
Note that some articles or tools may look old or old-fashioned, but this usually means they're battle-tested and mature
(like dotfiles themselves). Feel free to propose new articles, projects or tools!
 
Articles
 
Introductions
 
- Getting started with dotfiles (https://www.webpro.nl/articles/getting-started-with-dotfiles)
(L. Kappert (https://github.com/webpro))
- Getting started with dotfiles (https://driesvints.com/blog/getting-started-with-dotfiles/)
(D. Vints (https://github.com/driesvints))
- Managing your dotfiles (https://www.webpro.nl/articles/managing-your-dotfiles)
- Dotfiles Are Meant to Be Forked (https://zachholman.com/2010/08/dotfiles-are-meant-to-be-forked/)
- Dotfile discovery (https://wynnnetherland.com/journal/dotfiles-discovery/)
- I do Dotfiles! (https://jogendra.dev/i-do-dotfiles)
 
Tutorials
 
- Setting up a new (OS X) development machine: Part 3 - Dotfiles and custom SSH config (https://mattstauffer.com/blog/setting-up-a-new-os-x-development-machine-part-3-dotfiles-rc-files-and-ssh-config/)
- Setting Up a Mac Dev Machine From Zero to Hero With Dotfiles (https://code.tutsplus.com/setting-up-a-mac-dev-machine-from-zero-to-hero-with-dotfiles--net-35449t)
- Using Git and GitHub to manage your dotfiles (http://blog.smalleycreative.com/tutorials/using-git-and-github-to-manage-your-dotfiles/)
- conf.d like directories for zsh/bash dotfiles (https://chr4.org/blog/2014/09/10/conf-dot-d-like-directories-for-zsh-slash-bash-dotfiles/)
- Managing your dotfiles (https://www.anishathalye.com/2014/08/03/managing-your-dotfiles/)
- The best way to store your dotfiles: A bare Git repository (https://www.atlassian.com/git/tutorials/dotfiles)
- Dotfiles Management (https://mitxela.com/projects/dotfiles_management)
 
Shell startup
 
- Shell startup scripts (https://blog.flowblok.id.au/2013-02/shell-startup-scripts.html)
- Zsh/Bash startup files loading order (https://shreevatsa.wordpress.com/2008/03/30/zshbash-startup-files-loading-order-bashrc-zshrc-etc/)
 
Using specific tools
 
- Using GNU Stow to manage your dotfiles (http://brandon.invergo.net/news/2012-05-26-using-gnu-stow-to-manage-your-dotfiles.html)
- Managing Dotfile Symlinks with GNU Stow (https://spin.atomicobject.com/2014/12/26/manage-dotfiles-gnu-stow/)
- Dotfiles and dev tools provisioned by Ansible (http://palcu.blogspot.com/2014/06/dotfiles-and-dev-tools-provisioned-by.html)
 
Find dotfiles repos
 
There are many great dotfiles repos out there, each containing their own inspiration and gems. One way to go through
them is to search GitHub for "dotfiles" (https://github.com/search?q=dotfiles&type=Repositories).
 
Also see:
 
- Google for "dotfiles" (https://www.google.nl/search?q=dotfiles)
- Archlinux collection (https://wiki.archlinux.org/index.php/Dotfiles)
- Tip: search for a filename on GitHub, e.g.
in:path .gitconfig (https://github.com/search?utf8=%E2%9C%93&type=Code&q=in%3Apath+.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 some include
scripts to manage dotfiles and plugins.
 
Bash
 
Title Description Focus
├──────────────────────────────────────────────────────────────────┼────────────────────────────────────────────┼─────────────────────────────────────────────────────────────────────────────────────────────────┤
Bash it (https://github.com/Bash-it/bash-it) Community bash framework. Autocompletion, themes, aliases, custom functions. Well-structured framework
Mathias’s dotfiles (https://github.com/mathiasbynens/dotfiles) Sensible hacker defaults for macOS 🔧 .files, including ~/.macos — sensible hacker defaults for macOS
webpro's dotfiles (https://github.com/webpro/dotfiles) macOS dotfiles Bash, Homebrew, Brew Cask, Git, Node.js, Hammerspoon.
rootbeersoup's dotfiles (https://github.com/darrylabbate/dotfiles)Effortless Bash, Vim and macOS configurationA curl \| sh installer and a Makefile offer portable and effortless setup for either permanent or
temporary configuration.
 
Zsh
 
Title Description Focus
├────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────┤
thoughtbot dotfiles (https://github.com/thoughtbot/dotfiles)Set of vim, zsh, git, and tmux configuration files Zsh, vim, tmux, git, homebrew. Uses rcm
(https://github.com/thoughtbot/rcm).
oh-my-zsh (https://ohmyz.sh) Community-driven framework for managing your zsh configuration. Oh My Zsh is an open source, community-driven framework for managing your
Zsh configuration
Prezto (https://github.com/sorin-ionescu/prezto) The configuration framework for Zsh. Enriches the command line interface environment with sane defaults,
aliases, functions, auto completion, and prompt themes.
Dries's dotfiles (https://github.com/driesvints/dotfiles) Simplified approach to dotfiles for macOS Zsh, Oh My Zsh, macOS, Homebrew, Mackup
sobolevn's dotfiles (https://github.com/sobolevn/dotfiles) Dotfiles for the developer happiness macOS, zsh, brew, vscode, codespaces, python, node, elixir
yutkat's dotfiles (https://github.com/yutkat/dotfiles) Well-maintained dotfiles that use CI to test and measure startup speeds.Zsh, Neovim, Wezterm, swaywm working on Arch/Ubuntu/Fedora Linux.
Luke's voidrice (https://github.com/LukeSmithxyz/voidrice) My dotfiles (deployed by LARBS) Zsh, vim/nvim, zsf
2KAbhishek's dots2k (https://github.com/2KAbhishek/dots2k) Passionately crafted, extensible dotfiles with multi platform support CLI tools at core, with extensions for different platforms
(windows/mac/android), editors and window managers
 
Fish
 
Title Description Focus
├───────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────────┼──────────────────────────────────────────────────────────────────────────┤
oh-my-fish (https://github.com/oh-my-fish/oh-my-fish) The Fish Shell Framework Core infrastructure to allow you to install packages to extend/modify your
shell
Paul's dotfiles (https://github.com/paulirish/dotfiles)paul's fish, bash, git, etc config files. good stuff. Fish, macOS, Homebrew, Custom Shell functions
rkalis's dotfiles (https://github.com/rkalis/dotfiles) Well-maintained dotfiles featuring Fish, repository management and HammerspoonFish, macOS, Homebrew, Repository management, Hammerspoon
 
Ansible
 
Title Description Focus
├──────────────────────────────────────────────────────┼────────────────────────────────────────────┼───────────────────────────────────────────────────────────────────────────────┤
.dots (https://github.com/Addvilz/dots) New and upgraded dotfiles, now with Ansible!Completely automated desktop setup, configuration and maintenance using Ansible
sloria's dotfiles (https://github.com/sloria/dotfiles)sloria's dotfiles as Ansible roles Sets up a full local development environment with a single command
 
Tools
 
- Ansible (https://www.ansible.com) - Radically simple configuration-management, application deployment,
task-execution, and multinode orchestration engine.
- bashdot (https://github.com/bashdot/bashdot) - Minimalist dotfile management framework written entirely in bash.
- chezmoi (https://github.com/twpayne/chezmoi) - Manage your dotfiles securely across multiple machines.
- comtrya (https://github.com/comtrya/comtrya) - Configuration management for localhost, written in Rust, for Linux,
BSD, macOS, and Windows.
- dotbare (https://github.com/kazhala/dotbare) - Manage dotfiles interactively with fzf.
- dotbot (https://github.com/anishathalye/dotbot) - Tool that bootstraps your dotfiles.
- dotdrop (https://github.com/deadc0de6/dotdrop) - Save your dotfiles once, deploy them everywhere.
- Fisher (https://github.com/jorgebucaran/fisher) - A package manager for Fish.
- fresh (https://freshshell.com) - Keep your dotfiles fresh. Fresh is a tool to source shell configuration (aliases,
functions, etc) from others into your own configuration files.
- GNU Stow (http://www.gnu.org/software/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 (https://github.com/andsens/homeshick) - Git dotfile synchronizer written in Bash.
- mackup (https://github.com/lra/mackup) - Keep your application settings in sync (macOS/Linux).
- Pearl (https://github.com/pearl-core/pearl) - Package manager that allows to control, sync, share dotfiles as
packages automatically activated during shells or editors startup. There is a wide range of packages already
available. in the Official Pearl Hub (https://github.com/pearl-hub) (for Linux and OSX).
- rcm (https://github.com/thoughtbot/rcm) - rc file (dotfile) management.
- themer (https://github.com/themerdev/themer) - Manage and generate themes across your development tools from within
your dotfiles.
- toml-bombadil (https://github.com/oknozor/toml-bombadil) - Templatize and manage your dotfiles.
- xdg-ninja (https://github.com/b3nj5m1n/xdg-ninja) - A shell script which checks your $HOME for unwanted files and
directories.
- yadm (https://github.com/TheLocehiliosan/yadm) - Tool for managing a collection of files across multiple computers,
using a shared Git repository and some additional features.
 
macOS
 
- dockutil (https://github.com/kcrawford/dockutil) - Command line tool for managing dock items.
- mas (https://github.com/mas-cli/mas) - Mac App Store command line interface.
- zero (https://github.com/zero-sh/zero.sh) - Radically simple personal bootstrapping tool for macOS.
 
Miscellaneous
 
- dotfiles.github.io (https://dotfiles.github.io/) - Your unofficial guide to dotfiles on GitHub.
- Filesystem Hierarchy Standard (https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard) - Directory structure and
directory contents in Linux distributions.
- XDG Base Directory Specification (https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html) -
Summary (https://wiki.archlinux.org/title/XDG_Base_Directory)
- A lesson in shortcuts (https://web.archive.org/web/20180827160401/https://plus.google.com/+RobPikeTheHuman/posts/R58WgWwN9jp) -
How the idea of "hidden" or "dot" files was born, by Rob Pike (originally posted on Google+).
 
Related Lists
 
- Awesome Dev Env (https://github.com/jondot/awesome-devenv) - Curated list of awesome tools, resources and workflow
tips making an awesome development environment.
- Awesome Fish (https://github.com/jorgebucaran/awsm.fish) - Curated list of packages, prompts, and resources for the
fish shell.
- Awesome Shell (https://github.com/alebcay/awesome-shell) - Curated list of awesome command-line frameworks, toolkits,
guides and gizmos.
- Awesome Sysadmin (https://github.com/awesome-foss/awesome-sysadmin) - A curated list of amazingly awesome open source
sysadmin resources.
- Awesome Zsh Plugins (https://github.com/unixorn/awesome-zsh-plugins) - List of Zsh plugins suitable for use with
oh-my-zsh, antigen & Prezto.
- Terminals Are Sexy (https://github.com/k4m4/terminals-are-sexy) - A curated list of Terminal frameworks, plugins &
resources for CLI lovers.
 
Archive/abandoned projects
 
- antigen (http://antigen.sharats.me)
- Bashstrap (https://github.com/barryclark/bashstrap)
- battleschool (https://github.com/spencergibb/battleschool)
- Bork (https://github.com/mattly/bork)
- Cider (https://github.com/msanders/cider)
- dev-setup (https://github.com/donnemartin/dev-setup)
- dotfiles (https://github.com/jbernard/dotfiles)
- dotstow (https://github.com/clayrisser/dotstow)
- Eduardo's dotfiles (https://github.com/eduardolundgren/dotfiles)
- ellipsis (https://github.com/ellipsis/ellipsis)
- emplace (https://github.com/tversteeg/emplace)
- holman does dotfiles (https://github.com/holman/dotfiles)
- homesick (https://github.com/technicalpickles/homesick)
- Kevin's dotfiles (https://github.com/kdeldycke/dotfiles)
- kody (https://github.com/jh3y/kody)
- macOS Defaults (https://github.com/kevinSuttle/macOS-Defaults)
- osxc (http://osxc.github.io)
- vcsh (https://github.com/RichiH/vcsh)
(article (https://blog.tfnico.com/2014/03/managing-dot-files-with-vcsh-and-myrepos.html),
article (https://www.kunxi.org/2014/02/manage-dotfiles-using-vcsh-and-mr/))
- YADR (http://skwp.github.io/dotfiles/)
 
License
 
!CC0 (https://licensebuttons.net/p/zero/1.0/88x31.png) (https://creativecommons.org/publicdomain/zero/1.0/)
 
To the extent possible under law, Lars Kappert (https://www.webpro.nl) has waived all copyright and related or
neighboring rights to this work.