My UNIX config files and shell scripts.
Perl Python VimL Shell Scheme
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
home
misc
zsh
.gitignore
.gitmodules
README.md
make-submodules.py
setup

README.md

Kirsle's Dotfiles

This repo is for my own personal use for syncing my Unix config files and scripts between my various devices. Feel free to look around and learn from my config scripts.

Setup

~$ git clone git@github.com:kirsle/.dotfiles
~$ ./.dotfiles/setup

Dotfiles Manager (dfm)

The dotfiles repo is managed by a dfm command, which gets installed into ~/bin automatically. (The .dotfiles/setup script is just an easy alias to this command).

See dfm --help for documentation. Briefly:

  • dfm setup creates symlinks to all the files in ./home into $HOME.
  • dfm update does a git pull and installs any new dotfiles.
  • dfm check-update reminds you every 15 days to run dfm update (but doesn't remind you more than once per 24 hours).

In case one of the target files already exists (and is not a symlink), it is copied into .dotfiles/backup before being deleted and relinked.

The commands take optional arguments:

  • dfm setup --force: forcefully re-link all dotfiles, deleting any links that already exist.
  • dfm setup --copy: tell it not to use symlinks but instead make normal file copies into $HOME.
  • dfm check-update --force: always show the update reminder.

The .dotfiles/setup script passes all options along to dfm, so you can do .dotfiles/setup --copy for example.

Layout

  • ./setup

    Installation script for the dotfiles. Creates symlinks for everything in ./home into $HOME.

    This will not delete existing files, such as ~/.bashrc. Use the --install option to make it do so.

  • ./home

    Everything in this folder will be symlinked to from your $HOME folder.