My dotfiles.
Vim script Python Shell
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.config
.icons.symlink
.jupyter/custom
.local/share/applications.symlink
.ssh
.vim.symlink
.bash_aliases.symlink
.bash_env.symlink
.bash_prompt.symlink
.bashrc.symlink
.gitconfig.symlink
.gitignore
.gitignore.symlink
.gitmodules
.gvimrc.symlink
.inputrc.symlink
.jshintrc.symlink
.screenrc.symlink
.tmux.conf.symlink
.vimrc.symlink
README.md
install.sh
python_setup.sh
symlink

README.md

My dotfiles

Yes, they are.

Why another symlinker script

I simply wanted to symlink a deeply buried directory. For example, the applications directory resides in .local/share/. I wanted applications to be a symlink, but not its two parents.

Installation instructions

In the dotfile directory do:

./symlink

Nothing will be overwritten without permission. You will be asked:

What do you want to do? [s]kip, [S]kip all, [o]verwrite, [O]verwrite all.

On a brand new Ubuntu machine, simply execute install.sh like so:

wget https://raw.github.com/hdemers/dotfiles/master/install.sh ; bash install.sh

The install script will install git, clone this repository and run symlink with overwrite-all and create-paths options.

Adding a new vim plugin

Instructions to add a new vim plugin:

cd .dotfiles
git submodule add git://github.com/tpope/vim-fugitive.git .vim.symlink/bundle/fugitive
git submodule init && git submodule update

To remove a plugin that was added as a git submodule (cf. this StackOverflow answer):

  1. Delete the relevant section from the .gitmodules file.
  2. Stage the .gitmodules changes git add .gitmodules
  3. Delete the relevant section from .git/config.
  4. Run git rm --cached path_to_submodule (no trailing slash).
  5. Run rm -rf .git/modules/path_to_submodule
  6. Commit git commit -m "Removed submodule <name>"
  7. Delete the now untracked submodule files rm -rf path_to_submodule

Updating all vim plugins

To update all vim plugins to their latest version, do

git submodule foreach git co master
git submodule foreach git pull

then git add and git commit all submodules that were updated.