diff options
| author | franck cuny <franck@lumberjaph.net> | 2010-09-10 23:25:10 +0200 |
|---|---|---|
| committer | franck cuny <franck@lumberjaph.net> | 2010-09-10 23:25:10 +0200 |
| commit | 0afbfaee75e8480e8e0ed0a3bbd3749a4756f727 (patch) | |
| tree | f9e4d91866060661d53c50c66973fcd20600983f /_posts/2008-06-27-dotfiles-and-scm.textile | |
| download | lumberjaph-0afbfaee75e8480e8e0ed0a3bbd3749a4756f727.tar.gz | |
initial import
Diffstat (limited to '')
| -rw-r--r-- | _posts/2008-06-27-dotfiles-and-scm.textile | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/_posts/2008-06-27-dotfiles-and-scm.textile b/_posts/2008-06-27-dotfiles-and-scm.textile new file mode 100644 index 0000000..1868df9 --- /dev/null +++ b/_posts/2008-06-27-dotfiles-and-scm.textile @@ -0,0 +1,55 @@ +--- +layout: post +category: app +title: Dotfiles and SCM +--- + +All my dotfiles are stored in a SCM. Most of the time I'm on my main computer, but I can be working on a server or a different workstation. In this case, I like to have all my configurations for zsh, vim, screen, etc. + +So, instead of copying my files over different computers, I put everything in a private repostiroy, and when I'm on a new computer, I just have to checkout it. If I do a modification on a machine, I just need to commit it, and I can have the modification everywhere else. + +I've got a $HOME/dotfiles directory, which is versionned (with git in my case). All my configurations file are stored here. + +In this directory, as I'm avery lazy person, I've created a Makefile. Each time I create a new file, I add it to the makefile at the same time. The content of the Makefile is the following: + +bc. DOTFILES := $(shell pwd) +all: shell code perl plagger web +shell: +ln -fs $(DOTFILES)/zshrc ${HOME}/.zshrc +ln -fns $(DOTFILES)/zsh.d ${HOME}/.zsh.d +ln -fs $(DOTFILES)/inputrc ${HOME}/.inputrc +ln -fs $(DOTFILES)/screenrc ${HOME}/.screenrc +ln -fns $(DOTFILES)/screen ${HOME}/.screen +ln -fs $(DOTFILES)/profile ${HOME}/.profile +ln -fs $(DOTFILES)/gnupg ${HOME}/.gnupg code: +ln -fs $(DOTFILES)/vimrc ${HOME}/.vimrc +ln -fs $(DOTFILES)/gvimrc ${HOME}/.gvimrc +ln -fns $(DOTFILES)/vim ${HOME}/.vim +ln -fs $(DOTFILES)/ackrc ${HOME}/.ackrc +ln -fs $(DOTFILES)/gitignore ${HOME}/.gitignore +ln -fs $(DOTFILES)/gitconfig ${HOME}/.gitconfig +ln -fs $(DOTFILES)/psqlrc ${HOME}/.psqlrc perl: +ln -fs $(DOTFILES)/proverc ${HOME}/.proverc +ln -fs $(DOTFILES)/pause ${HOME}/.pause +ln -fs $(DOTFILES)/perltidyrc ${HOME}/.perltidyrc +ln -fns $(DOTFILES)/module-starter ${HOME}/.module-starter plagger: +ln -fns $(DOTFILES)/plagger ${HOME}/.plagger web: +ln -fns $(DOTFILES)/irssi ${HOME}/.irssi +ln -fns $(DOTFILES)/vimperator ${HOME}/.vimperator +ln -fs $(DOTFILES)/vimperatorrc ${HOME}/.vimperatorrc +ln -fs $(DOTFILES)/flickrrc ${HOME}/.flickrrc +ln -fs $(DOTFILES)/rtorrent.rc ${HOME}/.rtorrent.rc + +So next time I want to deploy my dotfiles on a new computer, I can do + +{% highlight vim %} +make all +{% endhighlight %} + +or + +{% highlight vim %} +make perl code vim +{% endhighlight %} + +and I can start coding some perl with vim. |
