I read years ago by Rob Flickenger.
I got tired of having my common dotfiles (
, etc.) out of sync across all the different workstations and
shells I use on a regular basis. So, I rewrote them in a way to be
generic, allowing host-specific and domain-specific files to be sourced
as appropriate. I also included window-manager specifics, like my Openbox configuration
Now I can take a freshly installed operating system and make it cozy and customized without any tedious work. I also get the added benefit of source control to view previous versions of files.
If you want to steal all of it for yourself, just do this:
Have a look at what's there. If you want to "install" these files, do this:
which git || sudo apt-get install git-core
Here are some of the files that will install in your home directory:
You can browse all of these here
above) is just a simple bash script to copy things over. It backs up
your existing stuff, but naturally you should read over the code and
understand what it's doing before you run it.
wouldn't recommend using my personal git repository indefinitely. I'd highly
recommend setting up your own Git repo
if you intend to use this regularly. It's
easy enough to make your own copy of these files in your own repository
and adjust them as you see fit... not to mention tracking and syncing
changes across all the workstations that you use. (I'd love to hear
tips you come up with from doing this yourself!)
When I change something tracked in my
directory, I just do a
back to the main repository. Then I can grab the changes from any of my other machines, something like this:
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 2 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (2/2), done.
09ec337..ba21282 master -> origin/master
Old files saved in '/home/eater/.ocd_backup.tar.gz'.
.................. All Done!