aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitmodules8
-rw-r--r--README.mdwn21
-rw-r--r--backups/.empty0
-rwxr-xr-xmetadot86
-rw-r--r--modules/awesome/config.dot/awesome.link/keys.lua (renamed from modules/awesome/keys.lua)0
-rw-r--r--modules/awesome/config.dot/awesome.link/rc.lua (renamed from modules/awesome/rc.lua)0
-rw-r--r--modules/awesome/config.dot/awesome.link/rc.lua.simple (renamed from modules/awesome/rc.lua.simple)0
-rw-r--r--modules/awesome/config.dot/awesome.link/theme.lua (renamed from modules/awesome/theme.lua)0
-rw-r--r--modules/conky/conky.dot.link/conkyrc (renamed from modules/conky/conkyrc)0
-rw-r--r--modules/conky/conky.dot.link/weather/conkyrc (renamed from modules/conky/weather/conkyrc)0
-rw-r--r--modules/git/gitignore.dot.link (renamed from modules/git/gitignore)0
-rw-r--r--modules/mutt/mailcap.dot.link (renamed from modules/mutt/mailcap)0
-rw-r--r--modules/mutt/mailrc.dot.link (renamed from modules/mutt/mailrc)0
-rw-r--r--modules/mutt/mime.types.dot.link (renamed from modules/mutt/mime.types)0
-rw-r--r--modules/mutt/mutt.dot.link/colors (renamed from modules/mutt/mutt/colors)0
-rw-r--r--modules/mutt/mutt.dot.link/sidebar (renamed from modules/mutt/mutt/sidebar)0
-rw-r--r--modules/mutt/muttrc.dot.link (renamed from modules/mutt/muttrc)0
-rw-r--r--modules/mutt/procmailrc.dot.link (renamed from modules/mutt/procmailrc)0
-rw-r--r--modules/profile/Xresources.dot.link (renamed from modules/profile/Xresources)0
-rw-r--r--modules/profile/aliases.dot.link (renamed from modules/profile/aliases)0
-rw-r--r--modules/profile/bash_logout.dot.link (renamed from modules/profile/bash_logout)0
-rw-r--r--modules/profile/bashrc.dot.link (renamed from modules/profile/bashrc)0
-rw-r--r--modules/profile/config.dot/user-dirs.dirs.link (renamed from modules/profile/user-dirs.dirs)0
-rw-r--r--modules/profile/config.dot/user-dirs.locale.link (renamed from modules/profile/user-dirs.locale)0
-rw-r--r--modules/profile/dircolorsrc.dot.link (renamed from modules/profile/dircolorsrc)0
-rw-r--r--modules/profile/geometry.dot.link (renamed from modules/profile/geometry)0
-rw-r--r--modules/profile/profile.dot.link (renamed from modules/profile/profile)0
-rw-r--r--modules/profile/terminal.dot.link (renamed from modules/profile/terminal)0
-rw-r--r--modules/profile/xinitrc.dot.link (renamed from modules/profile/xinitrc)0
-rwxr-xr-xmodules/profile/xprofile.dot.link (renamed from modules/profile/xprofile)0
-rw-r--r--modules/profile/xscreensaver.dot.link (renamed from modules/profile/xscreensaver)0
l---------modules/profile/xsession1
l---------modules/profile/xsession.dot.link1
-rw-r--r--modules/vim/gvimrc.dot.link (renamed from modules/vim/gvimrc)0
-rw-r--r--modules/vim/vim.dot.link/after/ftplugin/asp_snippets.vim (renamed from modules/vim/vim/after/ftplugin/asp_snippets.vim)0
-rw-r--r--modules/vim/vim.dot.link/after/plugin/snipMate.vim (renamed from modules/vim/vim/after/plugin/snipMate.vim)0
-rw-r--r--modules/vim/vim.dot.link/autoload/pathogen.vim (renamed from modules/vim/vim/autoload/pathogen.vim)0
-rw-r--r--modules/vim/vim.dot.link/autoload/snipMate.vim (renamed from modules/vim/vim/autoload/snipMate.vim)0
m---------modules/vim/vim.dot.link/bundle/nerdtree (renamed from modules/vim/vim/bundle/nerdtree)0
m---------modules/vim/vim.dot.link/bundle/syntastic (renamed from modules/vim/vim/bundle/syntastic)0
-rw-r--r--modules/vim/vim.dot.link/doc/NERD_tree.txt (renamed from modules/vim/vim/doc/NERD_tree.txt)0
-rw-r--r--modules/vim/vim.dot.link/doc/bufexplorer.txt (renamed from modules/vim/vim/doc/bufexplorer.txt)0
-rw-r--r--modules/vim/vim.dot.link/doc/git-vim.txt (renamed from modules/vim/vim/doc/git-vim.txt)0
-rw-r--r--modules/vim/vim.dot.link/doc/indexer.txt (renamed from modules/vim/vim/doc/indexer.txt)0
-rw-r--r--modules/vim/vim.dot.link/doc/project.txt (renamed from modules/vim/vim/doc/project.txt)0
-rw-r--r--modules/vim/vim.dot.link/doc/snipMate.txt (renamed from modules/vim/vim/doc/snipMate.txt)0
-rwxr-xr-xmodules/vim/vim.dot.link/doc/taglist.txt (renamed from modules/vim/vim/doc/taglist.txt)0
-rw-r--r--modules/vim/vim.dot.link/doc/tags (renamed from modules/vim/vim/doc/tags)0
-rw-r--r--modules/vim/vim.dot.link/doc/vcscommand.txt (renamed from modules/vim/vim/doc/vcscommand.txt)0
-rw-r--r--modules/vim/vim.dot.link/filetype.vim (renamed from modules/vim/vim/filetype.vim)0
-rw-r--r--modules/vim/vim.dot.link/ftplugin/html_snip_helper.vim (renamed from modules/vim/vim/ftplugin/html_snip_helper.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/Rename.vim (renamed from modules/vim/vim/plugin/Rename.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/bufexplorer.vim (renamed from modules/vim/vim/plugin/bufexplorer.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/git.vim (renamed from modules/vim/vim/plugin/git.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/indexer.vim.disabled (renamed from modules/vim/vim/plugin/indexer.vim.disabled)0
-rw-r--r--modules/vim/vim.dot.link/plugin/project.vim (renamed from modules/vim/vim/plugin/project.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/snipMate.vim (renamed from modules/vim/vim/plugin/snipMate.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/startshell_mapping.vim.disabled (renamed from modules/vim/vim/plugin/startshell_mapping.vim.disabled)0
-rw-r--r--modules/vim/vim.dot.link/plugin/taglist.vim (renamed from modules/vim/vim/plugin/taglist.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcsbzr.vim (renamed from modules/vim/vim/plugin/vcsbzr.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcscommand.vim (renamed from modules/vim/vim/plugin/vcscommand.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcscvs.vim (renamed from modules/vim/vim/plugin/vcscvs.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcsgit.vim (renamed from modules/vim/vim/plugin/vcsgit.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcshg.vim (renamed from modules/vim/vim/plugin/vcshg.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcssvk.vim (renamed from modules/vim/vim/plugin/vcssvk.vim)0
-rw-r--r--modules/vim/vim.dot.link/plugin/vcssvn.vim (renamed from modules/vim/vim/plugin/vcssvn.vim)0
-rw-r--r--modules/vim/vim.dot.link/snippets/_.snippets (renamed from modules/vim/vim/snippets/_.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/autoit.snippets (renamed from modules/vim/vim/snippets/autoit.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/c.snippets (renamed from modules/vim/vim/snippets/c.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/cpp.snippets (renamed from modules/vim/vim/snippets/cpp.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/html.snippets (renamed from modules/vim/vim/snippets/html.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/java.snippets (renamed from modules/vim/vim/snippets/java.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/javascript.snippets (renamed from modules/vim/vim/snippets/javascript.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/mako.snippets (renamed from modules/vim/vim/snippets/mako.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/objc.snippets (renamed from modules/vim/vim/snippets/objc.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/perl.snippets (renamed from modules/vim/vim/snippets/perl.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/php.snippets (renamed from modules/vim/vim/snippets/php.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/python.snippets (renamed from modules/vim/vim/snippets/python.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/ruby.snippets (renamed from modules/vim/vim/snippets/ruby.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/sh.snippets (renamed from modules/vim/vim/snippets/sh.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/snippet.snippets (renamed from modules/vim/vim/snippets/snippet.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/tcl.snippets (renamed from modules/vim/vim/snippets/tcl.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/tex.snippets (renamed from modules/vim/vim/snippets/tex.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/vim.snippets (renamed from modules/vim/vim/snippets/vim.snippets)0
-rw-r--r--modules/vim/vim.dot.link/snippets/zsh.snippets (renamed from modules/vim/vim/snippets/zsh.snippets)0
-rw-r--r--modules/vim/vim.dot.link/syntax/CVSAnnotate.vim (renamed from modules/vim/vim/syntax/CVSAnnotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/SVKAnnotate.vim (renamed from modules/vim/vim/syntax/SVKAnnotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/SVNAnnotate.vim (renamed from modules/vim/vim/syntax/SVNAnnotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/cvsannotate.vim (renamed from modules/vim/vim/syntax/cvsannotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/git-diff.vim (renamed from modules/vim/vim/syntax/git-diff.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/git-log.vim (renamed from modules/vim/vim/syntax/git-log.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/git-status.vim (renamed from modules/vim/vim/syntax/git-status.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/gitannotate.vim (renamed from modules/vim/vim/syntax/gitannotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/hgannotate.vim (renamed from modules/vim/vim/syntax/hgannotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/ikiwiki.vim (renamed from modules/vim/vim/syntax/ikiwiki.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/mkd.vim (renamed from modules/vim/vim/syntax/mkd.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/nginx.vim (renamed from modules/vim/vim/syntax/nginx.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/puppet.vim (renamed from modules/vim/vim/syntax/puppet.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/remind.vim (renamed from modules/vim/vim/syntax/remind.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/rest.vim (renamed from modules/vim/vim/syntax/rest.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/snippet.vim (renamed from modules/vim/vim/syntax/snippet.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/svkannotate.vim (renamed from modules/vim/vim/syntax/svkannotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/svnannotate.vim (renamed from modules/vim/vim/syntax/svnannotate.vim)0
-rw-r--r--modules/vim/vim.dot.link/syntax/vcscommit.vim (renamed from modules/vim/vim/syntax/vcscommit.vim)0
-rw-r--r--modules/vim/vimrc.dot.link (renamed from modules/vim/vimrc)0
-rw-r--r--modules/xcompose/XCompose.dot.link (renamed from modules/xcompose/XCompose)0
106 files changed, 109 insertions, 8 deletions
diff --git a/.gitmodules b/.gitmodules
index 9ddc74d..5dff19f 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,9 +1,9 @@
-[submodule "modules/vim/vim/bundle/nerdtree"]
- path = modules/vim/vim/bundle/nerdtree
+[submodule "modules/vim/vim.dot.link/bundle/nerdtree"]
+ path = modules/vim/vim.dot.link/bundle/nerdtree
url = https://github.com/scrooloose/nerdtree.git
[submodule "modules/xcompose/xcompose"]
path = modules/xcompose/xcompose
url = https://github.com/leoboiko/pointless-xcompose.git
-[submodule "modules/vim/vim/bundle/syntastic"]
- path = modules/vim/vim/bundle/syntastic
+[submodule "modules/vim/vim.dot.link/bundle/syntastic"]
+ path = modules/vim/vim.dot.link/bundle/syntastic
url = https://github.com/scrooloose/syntastic.git
diff --git a/README.mdwn b/README.mdwn
index 32db541..52fd0af 100644
--- a/README.mdwn
+++ b/README.mdwn
@@ -1,6 +1,8 @@
Metadot: a dotfile management system
====================================
+Inspired by https://github.com/holman/dotfiles
+
Instalation
-----------
@@ -14,11 +16,24 @@ Backups of your old files can be put into .dotfiles/backups.
Layout
------
-- ~/.dotfiles/
- - modules: where all dotfiles plugins are stored
- - backups: backups of old config files
+- ~/.dotfiles: where all dotfiles plugins are stored
+- ~/.backups: backups of old config files
- ~/.custom: your custom configuration where you can override parameters
+Module format
+-------------
+
+Modules rest at ~/.dotfiles/modules and can be git submodules. File format is:
+
+ [path/]<name>[.dot][.link]
+
+That means:
+
+- files ending with a .link extension are linked at $HOME.
+- files with a .dot.link extension are converted to a dotfile: vimrc.dot.link is symlinked as ~/.vimrc
+- file structure is preserved: file apps/scripts.link is linked at $HOME/apps/scripts.
+- all other files are ignored.
+
Todo
----
diff --git a/backups/.empty b/backups/.empty
deleted file mode 100644
index e69de29..0000000
--- a/backups/.empty
+++ /dev/null
diff --git a/metadot b/metadot
new file mode 100755
index 0000000..900e15f
--- /dev/null
+++ b/metadot
@@ -0,0 +1,86 @@
+#!/bin/bash
+#
+# metadot: a dotfile manager
+#
+
+# Parameters
+OPT="$1"
+DATE="`date +%Y%m%d%I%M%S`"
+BASENAME="`basename $0`"
+DOT="$HOME/.dotfiles"
+MODULES="$DOT/modules"
+BACKUPS="$HOME/.backups/$DATE"
+
+# Backup a file
+function metadot_backup {
+ local file="$HOME/$1"
+
+ if [ -e "$file" ] || [ -h "$file" ]; then
+ local folder="$BACKUPS/`dirname $1`"
+
+ #echo "Backing up `basename $1`..."
+ mkdir -p $folder
+ mv $file $folder
+ fi
+}
+
+# Find contents of a module
+function metadot_find {
+ local module="$1"
+ ( cd $MODULES/$module && find -name '*.link' -or -name '*.dot.link' ) | sed -e 's|./||'
+}
+
+# Load a module
+function metadot_load {
+ local module="$1"
+ local destname
+ local dirname
+
+ if [ -d "$MODULES/$module" ]; then
+
+ echo "Loading module $module..."
+
+ for file in `metadot_find $module`; do
+ echo "Processing $file..."
+
+ # Get the dirname, replacing string.dot with .string
+ dirname="`echo $file | sed -e 's|\([^/]*\).dot/|.\1/|g'`"
+ dirname="`dirname $dirname`"
+
+ if echo $file | grep -q '.dot.link'; then
+ destname=".`basename $file .dot.link`"
+ else
+ destname="`basename $file .link`"
+ fi
+
+ if [ "$dirname" != "." ]; then
+ #echo "Creating $HOME/$dirname..."
+ mkdir -p $HOME/$dirname
+ else
+ dirname=""
+ fi
+
+ metadot_backup "$dirname/$destname"
+
+ #echo "Installing symlink $dirname/$destname..."
+ ln -s $MODULES/$module/$file $HOME/$dirname/$destname
+
+ done
+
+ echo "Backups saved at $BACKUPS."
+
+ else
+ echo "No such module $module"
+ fi
+}
+
+# Parsing.
+if [ -z "$OPT" ]; then
+ echo "usage: $BASENAME <option> [arguments]"
+ exit 1
+elif [ "$OPT" == "update" ]; then
+ ( cd $DOT && git pull origin master && git submodule update --init )
+elif [ "$OPT" == "load" ]; then
+ shift
+ metadot_load $*
+fi
diff --git a/modules/awesome/keys.lua b/modules/awesome/config.dot/awesome.link/keys.lua
index 2b1294e..2b1294e 100644
--- a/modules/awesome/keys.lua
+++ b/modules/awesome/config.dot/awesome.link/keys.lua
diff --git a/modules/awesome/rc.lua b/modules/awesome/config.dot/awesome.link/rc.lua
index 7e79e55..7e79e55 100644
--- a/modules/awesome/rc.lua
+++ b/modules/awesome/config.dot/awesome.link/rc.lua
diff --git a/modules/awesome/rc.lua.simple b/modules/awesome/config.dot/awesome.link/rc.lua.simple
index 0910bca..0910bca 100644
--- a/modules/awesome/rc.lua.simple
+++ b/modules/awesome/config.dot/awesome.link/rc.lua.simple
diff --git a/modules/awesome/theme.lua b/modules/awesome/config.dot/awesome.link/theme.lua
index 913022c..913022c 100644
--- a/modules/awesome/theme.lua
+++ b/modules/awesome/config.dot/awesome.link/theme.lua
diff --git a/modules/conky/conkyrc b/modules/conky/conky.dot.link/conkyrc
index 563d094..563d094 100644
--- a/modules/conky/conkyrc
+++ b/modules/conky/conky.dot.link/conkyrc
diff --git a/modules/conky/weather/conkyrc b/modules/conky/conky.dot.link/weather/conkyrc
index f788236..f788236 100644
--- a/modules/conky/weather/conkyrc
+++ b/modules/conky/conky.dot.link/weather/conkyrc
diff --git a/modules/git/gitignore b/modules/git/gitignore.dot.link
index d9568ca..d9568ca 100644
--- a/modules/git/gitignore
+++ b/modules/git/gitignore.dot.link
diff --git a/modules/mutt/mailcap b/modules/mutt/mailcap.dot.link
index ffb9e37..ffb9e37 100644
--- a/modules/mutt/mailcap
+++ b/modules/mutt/mailcap.dot.link
diff --git a/modules/mutt/mailrc b/modules/mutt/mailrc.dot.link
index 19627cf..19627cf 100644
--- a/modules/mutt/mailrc
+++ b/modules/mutt/mailrc.dot.link
diff --git a/modules/mutt/mime.types b/modules/mutt/mime.types.dot.link
index 9e00efa..9e00efa 100644
--- a/modules/mutt/mime.types
+++ b/modules/mutt/mime.types.dot.link
diff --git a/modules/mutt/mutt/colors b/modules/mutt/mutt.dot.link/colors
index c0a01db..c0a01db 100644
--- a/modules/mutt/mutt/colors
+++ b/modules/mutt/mutt.dot.link/colors
diff --git a/modules/mutt/mutt/sidebar b/modules/mutt/mutt.dot.link/sidebar
index 248b152..248b152 100644
--- a/modules/mutt/mutt/sidebar
+++ b/modules/mutt/mutt.dot.link/sidebar
diff --git a/modules/mutt/muttrc b/modules/mutt/muttrc.dot.link
index 0819758..0819758 100644
--- a/modules/mutt/muttrc
+++ b/modules/mutt/muttrc.dot.link
diff --git a/modules/mutt/procmailrc b/modules/mutt/procmailrc.dot.link
index 121c6e9..121c6e9 100644
--- a/modules/mutt/procmailrc
+++ b/modules/mutt/procmailrc.dot.link
diff --git a/modules/profile/Xresources b/modules/profile/Xresources.dot.link
index 8bec92e..8bec92e 100644
--- a/modules/profile/Xresources
+++ b/modules/profile/Xresources.dot.link
diff --git a/modules/profile/aliases b/modules/profile/aliases.dot.link
index 5eca013..5eca013 100644
--- a/modules/profile/aliases
+++ b/modules/profile/aliases.dot.link
diff --git a/modules/profile/bash_logout b/modules/profile/bash_logout.dot.link
index de4f5f7..de4f5f7 100644
--- a/modules/profile/bash_logout
+++ b/modules/profile/bash_logout.dot.link
diff --git a/modules/profile/bashrc b/modules/profile/bashrc.dot.link
index 2c8814c..2c8814c 100644
--- a/modules/profile/bashrc
+++ b/modules/profile/bashrc.dot.link
diff --git a/modules/profile/user-dirs.dirs b/modules/profile/config.dot/user-dirs.dirs.link
index 5ab607e..5ab607e 100644
--- a/modules/profile/user-dirs.dirs
+++ b/modules/profile/config.dot/user-dirs.dirs.link
diff --git a/modules/profile/user-dirs.locale b/modules/profile/config.dot/user-dirs.locale.link
index da462d3..da462d3 100644
--- a/modules/profile/user-dirs.locale
+++ b/modules/profile/config.dot/user-dirs.locale.link
diff --git a/modules/profile/dircolorsrc b/modules/profile/dircolorsrc.dot.link
index e55b70c..e55b70c 100644
--- a/modules/profile/dircolorsrc
+++ b/modules/profile/dircolorsrc.dot.link
diff --git a/modules/profile/geometry b/modules/profile/geometry.dot.link
index 7657e8d..7657e8d 100644
--- a/modules/profile/geometry
+++ b/modules/profile/geometry.dot.link
diff --git a/modules/profile/profile b/modules/profile/profile.dot.link
index dbfbea8..dbfbea8 100644
--- a/modules/profile/profile
+++ b/modules/profile/profile.dot.link
diff --git a/modules/profile/terminal b/modules/profile/terminal.dot.link
index ada0ceb..ada0ceb 100644
--- a/modules/profile/terminal
+++ b/modules/profile/terminal.dot.link
diff --git a/modules/profile/xinitrc b/modules/profile/xinitrc.dot.link
index fdd35b1..fdd35b1 100644
--- a/modules/profile/xinitrc
+++ b/modules/profile/xinitrc.dot.link
diff --git a/modules/profile/xprofile b/modules/profile/xprofile.dot.link
index ad4b3d7..ad4b3d7 100755
--- a/modules/profile/xprofile
+++ b/modules/profile/xprofile.dot.link
diff --git a/modules/profile/xscreensaver b/modules/profile/xscreensaver.dot.link
index 9576ee7..9576ee7 100644
--- a/modules/profile/xscreensaver
+++ b/modules/profile/xscreensaver.dot.link
diff --git a/modules/profile/xsession b/modules/profile/xsession
deleted file mode 120000
index 68a5612..0000000
--- a/modules/profile/xsession
+++ /dev/null
@@ -1 +0,0 @@
-xprofile \ No newline at end of file
diff --git a/modules/profile/xsession.dot.link b/modules/profile/xsession.dot.link
new file mode 120000
index 0000000..d381138
--- /dev/null
+++ b/modules/profile/xsession.dot.link
@@ -0,0 +1 @@
+xprofile.dot.link \ No newline at end of file
diff --git a/modules/vim/gvimrc b/modules/vim/gvimrc.dot.link
index 5f722fd..5f722fd 100644
--- a/modules/vim/gvimrc
+++ b/modules/vim/gvimrc.dot.link
diff --git a/modules/vim/vim/after/ftplugin/asp_snippets.vim b/modules/vim/vim.dot.link/after/ftplugin/asp_snippets.vim
index 4fdc8a8..4fdc8a8 100644
--- a/modules/vim/vim/after/ftplugin/asp_snippets.vim
+++ b/modules/vim/vim.dot.link/after/ftplugin/asp_snippets.vim
diff --git a/modules/vim/vim/after/plugin/snipMate.vim b/modules/vim/vim.dot.link/after/plugin/snipMate.vim
index 03e79ae..03e79ae 100644
--- a/modules/vim/vim/after/plugin/snipMate.vim
+++ b/modules/vim/vim.dot.link/after/plugin/snipMate.vim
diff --git a/modules/vim/vim/autoload/pathogen.vim b/modules/vim/vim.dot.link/autoload/pathogen.vim
index df4f22d..df4f22d 100644
--- a/modules/vim/vim/autoload/pathogen.vim
+++ b/modules/vim/vim.dot.link/autoload/pathogen.vim
diff --git a/modules/vim/vim/autoload/snipMate.vim b/modules/vim/vim.dot.link/autoload/snipMate.vim
index dcd28f6..dcd28f6 100644
--- a/modules/vim/vim/autoload/snipMate.vim
+++ b/modules/vim/vim.dot.link/autoload/snipMate.vim
diff --git a/modules/vim/vim/bundle/nerdtree b/modules/vim/vim.dot.link/bundle/nerdtree
-Subproject c3b63d2fd9c929359231363bcabc880ba29eb96
+Subproject c3b63d2fd9c929359231363bcabc880ba29eb96
diff --git a/modules/vim/vim/bundle/syntastic b/modules/vim/vim.dot.link/bundle/syntastic
-Subproject 59f7feb046a29d39e1730a079dbdd948077d5bd
+Subproject 59f7feb046a29d39e1730a079dbdd948077d5bd
diff --git a/modules/vim/vim/doc/NERD_tree.txt b/modules/vim/vim.dot.link/doc/NERD_tree.txt
index 2e2278c..2e2278c 100644
--- a/modules/vim/vim/doc/NERD_tree.txt
+++ b/modules/vim/vim.dot.link/doc/NERD_tree.txt
diff --git a/modules/vim/vim/doc/bufexplorer.txt b/modules/vim/vim.dot.link/doc/bufexplorer.txt
index 5d2fbcf..5d2fbcf 100644
--- a/modules/vim/vim/doc/bufexplorer.txt
+++ b/modules/vim/vim.dot.link/doc/bufexplorer.txt
diff --git a/modules/vim/vim/doc/git-vim.txt b/modules/vim/vim.dot.link/doc/git-vim.txt
index 5fba807..5fba807 100644
--- a/modules/vim/vim/doc/git-vim.txt
+++ b/modules/vim/vim.dot.link/doc/git-vim.txt
diff --git a/modules/vim/vim/doc/indexer.txt b/modules/vim/vim.dot.link/doc/indexer.txt
index 330b486..330b486 100644
--- a/modules/vim/vim/doc/indexer.txt
+++ b/modules/vim/vim.dot.link/doc/indexer.txt
diff --git a/modules/vim/vim/doc/project.txt b/modules/vim/vim.dot.link/doc/project.txt
index 8f85c23..8f85c23 100644
--- a/modules/vim/vim/doc/project.txt
+++ b/modules/vim/vim.dot.link/doc/project.txt
diff --git a/modules/vim/vim/doc/snipMate.txt b/modules/vim/vim.dot.link/doc/snipMate.txt
index 704d44a..704d44a 100644
--- a/modules/vim/vim/doc/snipMate.txt
+++ b/modules/vim/vim.dot.link/doc/snipMate.txt
diff --git a/modules/vim/vim/doc/taglist.txt b/modules/vim/vim.dot.link/doc/taglist.txt
index 6a62b39..6a62b39 100755
--- a/modules/vim/vim/doc/taglist.txt
+++ b/modules/vim/vim.dot.link/doc/taglist.txt
diff --git a/modules/vim/vim/doc/tags b/modules/vim/vim.dot.link/doc/tags
index 0726233..0726233 100644
--- a/modules/vim/vim/doc/tags
+++ b/modules/vim/vim.dot.link/doc/tags
diff --git a/modules/vim/vim/doc/vcscommand.txt b/modules/vim/vim.dot.link/doc/vcscommand.txt
index 5e0c4c0..5e0c4c0 100644
--- a/modules/vim/vim/doc/vcscommand.txt
+++ b/modules/vim/vim.dot.link/doc/vcscommand.txt
diff --git a/modules/vim/vim/filetype.vim b/modules/vim/vim.dot.link/filetype.vim
index 2b958bc..2b958bc 100644
--- a/modules/vim/vim/filetype.vim
+++ b/modules/vim/vim.dot.link/filetype.vim
diff --git a/modules/vim/vim/ftplugin/html_snip_helper.vim b/modules/vim/vim.dot.link/ftplugin/html_snip_helper.vim
index 2e54570..2e54570 100644
--- a/modules/vim/vim/ftplugin/html_snip_helper.vim
+++ b/modules/vim/vim.dot.link/ftplugin/html_snip_helper.vim
diff --git a/modules/vim/vim/plugin/Rename.vim b/modules/vim/vim.dot.link/plugin/Rename.vim
index b56c516..b56c516 100644
--- a/modules/vim/vim/plugin/Rename.vim
+++ b/modules/vim/vim.dot.link/plugin/Rename.vim
diff --git a/modules/vim/vim/plugin/bufexplorer.vim b/modules/vim/vim.dot.link/plugin/bufexplorer.vim
index de957d8..de957d8 100644
--- a/modules/vim/vim/plugin/bufexplorer.vim
+++ b/modules/vim/vim.dot.link/plugin/bufexplorer.vim
diff --git a/modules/vim/vim/plugin/git.vim b/modules/vim/vim.dot.link/plugin/git.vim
index bd0b053..bd0b053 100644
--- a/modules/vim/vim/plugin/git.vim
+++ b/modules/vim/vim.dot.link/plugin/git.vim
diff --git a/modules/vim/vim/plugin/indexer.vim.disabled b/modules/vim/vim.dot.link/plugin/indexer.vim.disabled
index 28c9472..28c9472 100644
--- a/modules/vim/vim/plugin/indexer.vim.disabled
+++ b/modules/vim/vim.dot.link/plugin/indexer.vim.disabled
diff --git a/modules/vim/vim/plugin/project.vim b/modules/vim/vim.dot.link/plugin/project.vim
index 47bd379..47bd379 100644
--- a/modules/vim/vim/plugin/project.vim
+++ b/modules/vim/vim.dot.link/plugin/project.vim
diff --git a/modules/vim/vim/plugin/snipMate.vim b/modules/vim/vim.dot.link/plugin/snipMate.vim
index 3efee2a..3efee2a 100644
--- a/modules/vim/vim/plugin/snipMate.vim
+++ b/modules/vim/vim.dot.link/plugin/snipMate.vim
diff --git a/modules/vim/vim/plugin/startshell_mapping.vim.disabled b/modules/vim/vim.dot.link/plugin/startshell_mapping.vim.disabled
index e9704f4..e9704f4 100644
--- a/modules/vim/vim/plugin/startshell_mapping.vim.disabled
+++ b/modules/vim/vim.dot.link/plugin/startshell_mapping.vim.disabled
diff --git a/modules/vim/vim/plugin/taglist.vim b/modules/vim/vim.dot.link/plugin/taglist.vim
index 59901f6..59901f6 100644
--- a/modules/vim/vim/plugin/taglist.vim
+++ b/modules/vim/vim.dot.link/plugin/taglist.vim
diff --git a/modules/vim/vim/plugin/vcsbzr.vim b/modules/vim/vim.dot.link/plugin/vcsbzr.vim
index b8665b8..b8665b8 100644
--- a/modules/vim/vim/plugin/vcsbzr.vim
+++ b/modules/vim/vim.dot.link/plugin/vcsbzr.vim
diff --git a/modules/vim/vim/plugin/vcscommand.vim b/modules/vim/vim.dot.link/plugin/vcscommand.vim
index 98214f2..98214f2 100644
--- a/modules/vim/vim/plugin/vcscommand.vim
+++ b/modules/vim/vim.dot.link/plugin/vcscommand.vim
diff --git a/modules/vim/vim/plugin/vcscvs.vim b/modules/vim/vim.dot.link/plugin/vcscvs.vim
index 73d6a7f..73d6a7f 100644
--- a/modules/vim/vim/plugin/vcscvs.vim
+++ b/modules/vim/vim.dot.link/plugin/vcscvs.vim
diff --git a/modules/vim/vim/plugin/vcsgit.vim b/modules/vim/vim.dot.link/plugin/vcsgit.vim
index 4e299d9..4e299d9 100644
--- a/modules/vim/vim/plugin/vcsgit.vim
+++ b/modules/vim/vim.dot.link/plugin/vcsgit.vim
diff --git a/modules/vim/vim/plugin/vcshg.vim b/modules/vim/vim.dot.link/plugin/vcshg.vim
index 2c616c0..2c616c0 100644
--- a/modules/vim/vim/plugin/vcshg.vim
+++ b/modules/vim/vim.dot.link/plugin/vcshg.vim
diff --git a/modules/vim/vim/plugin/vcssvk.vim b/modules/vim/vim.dot.link/plugin/vcssvk.vim
index b7cc6c9..b7cc6c9 100644
--- a/modules/vim/vim/plugin/vcssvk.vim
+++ b/modules/vim/vim.dot.link/plugin/vcssvk.vim
diff --git a/modules/vim/vim/plugin/vcssvn.vim b/modules/vim/vim.dot.link/plugin/vcssvn.vim
index 758f819..758f819 100644
--- a/modules/vim/vim/plugin/vcssvn.vim
+++ b/modules/vim/vim.dot.link/plugin/vcssvn.vim
diff --git a/modules/vim/vim/snippets/_.snippets b/modules/vim/vim.dot.link/snippets/_.snippets
index c3925a5..c3925a5 100644
--- a/modules/vim/vim/snippets/_.snippets
+++ b/modules/vim/vim.dot.link/snippets/_.snippets
diff --git a/modules/vim/vim/snippets/autoit.snippets b/modules/vim/vim.dot.link/snippets/autoit.snippets
index 690018c..690018c 100644
--- a/modules/vim/vim/snippets/autoit.snippets
+++ b/modules/vim/vim.dot.link/snippets/autoit.snippets
diff --git a/modules/vim/vim/snippets/c.snippets b/modules/vim/vim.dot.link/snippets/c.snippets
index 89b81ba..89b81ba 100644
--- a/modules/vim/vim/snippets/c.snippets
+++ b/modules/vim/vim.dot.link/snippets/c.snippets
diff --git a/modules/vim/vim/snippets/cpp.snippets b/modules/vim/vim.dot.link/snippets/cpp.snippets
index e4850cd..e4850cd 100644
--- a/modules/vim/vim/snippets/cpp.snippets
+++ b/modules/vim/vim.dot.link/snippets/cpp.snippets
diff --git a/modules/vim/vim/snippets/html.snippets b/modules/vim/vim.dot.link/snippets/html.snippets
index aefb9db..aefb9db 100644
--- a/modules/vim/vim/snippets/html.snippets
+++ b/modules/vim/vim.dot.link/snippets/html.snippets
diff --git a/modules/vim/vim/snippets/java.snippets b/modules/vim/vim.dot.link/snippets/java.snippets
index fd705cb..fd705cb 100644
--- a/modules/vim/vim/snippets/java.snippets
+++ b/modules/vim/vim.dot.link/snippets/java.snippets
diff --git a/modules/vim/vim/snippets/javascript.snippets b/modules/vim/vim.dot.link/snippets/javascript.snippets
index 51f5e05..51f5e05 100644
--- a/modules/vim/vim/snippets/javascript.snippets
+++ b/modules/vim/vim.dot.link/snippets/javascript.snippets
diff --git a/modules/vim/vim/snippets/mako.snippets b/modules/vim/vim.dot.link/snippets/mako.snippets
index 2a0aef9..2a0aef9 100644
--- a/modules/vim/vim/snippets/mako.snippets
+++ b/modules/vim/vim.dot.link/snippets/mako.snippets
diff --git a/modules/vim/vim/snippets/objc.snippets b/modules/vim/vim.dot.link/snippets/objc.snippets
index 4749bb7..4749bb7 100644
--- a/modules/vim/vim/snippets/objc.snippets
+++ b/modules/vim/vim.dot.link/snippets/objc.snippets
diff --git a/modules/vim/vim/snippets/perl.snippets b/modules/vim/vim.dot.link/snippets/perl.snippets
index cf8f9fc..cf8f9fc 100644
--- a/modules/vim/vim/snippets/perl.snippets
+++ b/modules/vim/vim.dot.link/snippets/perl.snippets
diff --git a/modules/vim/vim/snippets/php.snippets b/modules/vim/vim.dot.link/snippets/php.snippets
index b122b5f..b122b5f 100644
--- a/modules/vim/vim/snippets/php.snippets
+++ b/modules/vim/vim.dot.link/snippets/php.snippets
diff --git a/modules/vim/vim/snippets/python.snippets b/modules/vim/vim.dot.link/snippets/python.snippets
index d511184..d511184 100644
--- a/modules/vim/vim/snippets/python.snippets
+++ b/modules/vim/vim.dot.link/snippets/python.snippets
diff --git a/modules/vim/vim/snippets/ruby.snippets b/modules/vim/vim.dot.link/snippets/ruby.snippets
index bf1d7f1..bf1d7f1 100644
--- a/modules/vim/vim/snippets/ruby.snippets
+++ b/modules/vim/vim.dot.link/snippets/ruby.snippets
diff --git a/modules/vim/vim/snippets/sh.snippets b/modules/vim/vim.dot.link/snippets/sh.snippets
index f035126..f035126 100644
--- a/modules/vim/vim/snippets/sh.snippets
+++ b/modules/vim/vim.dot.link/snippets/sh.snippets
diff --git a/modules/vim/vim/snippets/snippet.snippets b/modules/vim/vim.dot.link/snippets/snippet.snippets
index 854c058..854c058 100644
--- a/modules/vim/vim/snippets/snippet.snippets
+++ b/modules/vim/vim.dot.link/snippets/snippet.snippets
diff --git a/modules/vim/vim/snippets/tcl.snippets b/modules/vim/vim.dot.link/snippets/tcl.snippets
index bee2ef8..bee2ef8 100644
--- a/modules/vim/vim/snippets/tcl.snippets
+++ b/modules/vim/vim.dot.link/snippets/tcl.snippets
diff --git a/modules/vim/vim/snippets/tex.snippets b/modules/vim/vim.dot.link/snippets/tex.snippets
index 22f7316..22f7316 100644
--- a/modules/vim/vim/snippets/tex.snippets
+++ b/modules/vim/vim.dot.link/snippets/tex.snippets
diff --git a/modules/vim/vim/snippets/vim.snippets b/modules/vim/vim.dot.link/snippets/vim.snippets
index 64e7807..64e7807 100644
--- a/modules/vim/vim/snippets/vim.snippets
+++ b/modules/vim/vim.dot.link/snippets/vim.snippets
diff --git a/modules/vim/vim/snippets/zsh.snippets b/modules/vim/vim.dot.link/snippets/zsh.snippets
index 7aee05b..7aee05b 100644
--- a/modules/vim/vim/snippets/zsh.snippets
+++ b/modules/vim/vim.dot.link/snippets/zsh.snippets
diff --git a/modules/vim/vim/syntax/CVSAnnotate.vim b/modules/vim/vim.dot.link/syntax/CVSAnnotate.vim
index 4af5809..4af5809 100644
--- a/modules/vim/vim/syntax/CVSAnnotate.vim
+++ b/modules/vim/vim.dot.link/syntax/CVSAnnotate.vim
diff --git a/modules/vim/vim/syntax/SVKAnnotate.vim b/modules/vim/vim.dot.link/syntax/SVKAnnotate.vim
index 3c53c3c..3c53c3c 100644
--- a/modules/vim/vim/syntax/SVKAnnotate.vim
+++ b/modules/vim/vim.dot.link/syntax/SVKAnnotate.vim
diff --git a/modules/vim/vim/syntax/SVNAnnotate.vim b/modules/vim/vim.dot.link/syntax/SVNAnnotate.vim
index d46f771..d46f771 100644
--- a/modules/vim/vim/syntax/SVNAnnotate.vim
+++ b/modules/vim/vim.dot.link/syntax/SVNAnnotate.vim
diff --git a/modules/vim/vim/syntax/cvsannotate.vim b/modules/vim/vim.dot.link/syntax/cvsannotate.vim
index f35ed96..f35ed96 100644
--- a/modules/vim/vim/syntax/cvsannotate.vim
+++ b/modules/vim/vim.dot.link/syntax/cvsannotate.vim
diff --git a/modules/vim/vim/syntax/git-diff.vim b/modules/vim/vim.dot.link/syntax/git-diff.vim
index 54a97ec..54a97ec 100644
--- a/modules/vim/vim/syntax/git-diff.vim
+++ b/modules/vim/vim.dot.link/syntax/git-diff.vim
diff --git a/modules/vim/vim/syntax/git-log.vim b/modules/vim/vim.dot.link/syntax/git-log.vim
index 571b28a..571b28a 100644
--- a/modules/vim/vim/syntax/git-log.vim
+++ b/modules/vim/vim.dot.link/syntax/git-log.vim
diff --git a/modules/vim/vim/syntax/git-status.vim b/modules/vim/vim.dot.link/syntax/git-status.vim
index 4cf05e5..4cf05e5 100644
--- a/modules/vim/vim/syntax/git-status.vim
+++ b/modules/vim/vim.dot.link/syntax/git-status.vim
diff --git a/modules/vim/vim/syntax/gitannotate.vim b/modules/vim/vim.dot.link/syntax/gitannotate.vim
index 77ad14e..77ad14e 100644
--- a/modules/vim/vim/syntax/gitannotate.vim
+++ b/modules/vim/vim.dot.link/syntax/gitannotate.vim
diff --git a/modules/vim/vim/syntax/hgannotate.vim b/modules/vim/vim.dot.link/syntax/hgannotate.vim
index 4e1d627..4e1d627 100644
--- a/modules/vim/vim/syntax/hgannotate.vim
+++ b/modules/vim/vim.dot.link/syntax/hgannotate.vim
diff --git a/modules/vim/vim/syntax/ikiwiki.vim b/modules/vim/vim.dot.link/syntax/ikiwiki.vim
index bbcad42..bbcad42 100644
--- a/modules/vim/vim/syntax/ikiwiki.vim
+++ b/modules/vim/vim.dot.link/syntax/ikiwiki.vim
diff --git a/modules/vim/vim/syntax/mkd.vim b/modules/vim/vim.dot.link/syntax/mkd.vim
index 6c23415..6c23415 100644
--- a/modules/vim/vim/syntax/mkd.vim
+++ b/modules/vim/vim.dot.link/syntax/mkd.vim
diff --git a/modules/vim/vim/syntax/nginx.vim b/modules/vim/vim.dot.link/syntax/nginx.vim
index ccd4768..ccd4768 100644
--- a/modules/vim/vim/syntax/nginx.vim
+++ b/modules/vim/vim.dot.link/syntax/nginx.vim
diff --git a/modules/vim/vim/syntax/puppet.vim b/modules/vim/vim.dot.link/syntax/puppet.vim
index bb85415..bb85415 100644
--- a/modules/vim/vim/syntax/puppet.vim
+++ b/modules/vim/vim.dot.link/syntax/puppet.vim
diff --git a/modules/vim/vim/syntax/remind.vim b/modules/vim/vim.dot.link/syntax/remind.vim
index d220f75..d220f75 100644
--- a/modules/vim/vim/syntax/remind.vim
+++ b/modules/vim/vim.dot.link/syntax/remind.vim
diff --git a/modules/vim/vim/syntax/rest.vim b/modules/vim/vim.dot.link/syntax/rest.vim
index 17a1a86..17a1a86 100644
--- a/modules/vim/vim/syntax/rest.vim
+++ b/modules/vim/vim.dot.link/syntax/rest.vim
diff --git a/modules/vim/vim/syntax/snippet.vim b/modules/vim/vim.dot.link/syntax/snippet.vim
index 5e919e7..5e919e7 100644
--- a/modules/vim/vim/syntax/snippet.vim
+++ b/modules/vim/vim.dot.link/syntax/snippet.vim
diff --git a/modules/vim/vim/syntax/svkannotate.vim b/modules/vim/vim.dot.link/syntax/svkannotate.vim
index d93e9dd..d93e9dd 100644
--- a/modules/vim/vim/syntax/svkannotate.vim
+++ b/modules/vim/vim.dot.link/syntax/svkannotate.vim
diff --git a/modules/vim/vim/syntax/svnannotate.vim b/modules/vim/vim.dot.link/syntax/svnannotate.vim
index 87a63ab..87a63ab 100644
--- a/modules/vim/vim/syntax/svnannotate.vim
+++ b/modules/vim/vim.dot.link/syntax/svnannotate.vim
diff --git a/modules/vim/vim/syntax/vcscommit.vim b/modules/vim/vim.dot.link/syntax/vcscommit.vim
index 80b4c6e..80b4c6e 100644
--- a/modules/vim/vim/syntax/vcscommit.vim
+++ b/modules/vim/vim.dot.link/syntax/vcscommit.vim
diff --git a/modules/vim/vimrc b/modules/vim/vimrc.dot.link
index 3490924..3490924 100644
--- a/modules/vim/vimrc
+++ b/modules/vim/vimrc.dot.link
diff --git a/modules/xcompose/XCompose b/modules/xcompose/XCompose.dot.link
index 198efbe..198efbe 100644
--- a/modules/xcompose/XCompose
+++ b/modules/xcompose/XCompose.dot.link