$ git clone https://github.com/DeeNewcum/dotfiles.git
$ cd dotfiles
$ ./deedot
$ ls -l ~/.bashrc
~/.bashrc -> ~/dotfiles/.bashrc
# Your dotfiles are safe. DeeDot won't overwrite anything.
This is my dotfile repo. There are many like it, but this one is mine.
Before we get into the details of my dotfiles, I'd like to point out that MANY people have done dotfiles, and there are some good references out there:
- dotfiles.github.com
- dotfiles.org
- dotshare.it
- good articles: (1)
- popular dotfile repos: mathias bynens
DeeDot is the tool that installs symlinks from ~/dotfiles/ to the live version of each file. The tool is maintained as a separate project, and there's a good amount of documentation over there.
On some of my boxes, several different people have root access. To avoid stepping on each other other's toes, I set up root's ~/.bashrc so that it loads a ~/.sudo_bashrc from the original user's home directory, so that each user can have personalized settings despite using a shared account.
My personal ~/.sudo_bashrc has code that pulls in other .rc settings from the original home directory, including ~/.vimrc, ~/.inputrc, ~/.less, ~/.ackrc, and ~/.perltidyrc.
I sometimes work on older Un*xes, so I prefer to use scripting languages that are widely available, and use scripts that have a bare-minimum of dependencies. Generally, this means older versions of Perl (using minimal extra modules) and Bash/sh scripts.
I believe in using URLs whenever possible.
I work on ~5 different machines on a daily basis, so checking in dotfiles is very valuable to me.
I frequently do work on Ubuntu, RHEL, and Solaris v9 and v10.
My personal preferences are: Vim, Perl, Bash, and Screen. (I'm going to try out tmux and zsh when I get a chance)
There are several other large pieces of live-config-files that aren't checked in yet, that I would like to. These may take some work to figure out:
- my Firefox profile
- particularly my Greasemonkey scripts
- my Thunderbird profile, particularly the message filters
- my Android Tasker scripts
- my Tropo.com scripts
- Despite the fact that Tropo.com's main use-case is large-scale applications, it "is always free for developer use, it's not a limited time offer". This makes it very handy for building personal utilities. (eg. the Google Voice enhancement that makes it possible for Google Voice to forward to a number that requires an extension)
There are a TON of other people who store their dotfiles on github. Ones that stand out for me:
- rtomayko
- aspiers
- claytron
- sjbach
- mathiasbynens
- yuzuemon
- skwp
- ryanb
- blueyed
- phleet
- zan5hin
- nelstrom
- sontek
- sharad (uses m4 to customize files that have no 'source' capability)
- janus by carlhuda โ the most well-known... it has been compared to the venerable oh-my-zsh, in terms of providing a good starting base, allowing you to avoid a lot of work just to get a modern environment working quickly
- amix
- krisleech
- nvie
- trinitum
Unless otherwise noted, files here are available under the CC0 1.0 license. (ie. public domain)
Some files are authored by other folks and have author/licensing information at the top that supersedes this license.