Skip to content

Repository files navigation

dotfiles

Personal configuration for zsh (oh-my-zsh), git, vim, tmux and a set of small helper scripts.

Installation

The default target installs oh-my-zsh, backs up its stock custom/ and .zshrc, links this repo's zsh setup and links each script from bin/ into ~/bin, which zshrc puts on PATH (several git aliases depend on the scripts there):

make install

All targets are idempotent - re-running them is safe. Optional targets:

make git-link-conf      # ~/.gitconfig, ~/.gitignore, ~/.gitcommitmsg
make ssh-link-conf      # ~/.ssh/config
make tmux-link-conf     # ~/.tmux.conf
make vim-link-conf      # ~/.vimrc (or vim-link-conf-minimal)
make yamllint-link-conf # ~/.config/yamllint/config

Layout

Path Purpose
aliases/ Alias files, one per tool, loaded by aliases/_load
bin/ Helper scripts (git-url, cert, spark, 2048, ...)
oh-my-zsh/custom/ Custom oh-my-zsh plugins and the heimdall theme
zshrc, oh-my-zsh.rc Shell entry points
gitconfig, gitconfig.minimal Full and fresh-machine git setups
vimrc, vimrc.minimal, vim/ Vim setup

New files dropped into aliases/ are picked up automatically; names starting with _ are reserved for the loader and helpers.

Per-directory configuration (dirrc)

The dirrc plugin loads .aliases, .env and .dirrc files when entering a directory, and shows .links, .msg and .todo files. Because those files execute code, a directory has to be allowed first:

dirrc-show [dir]      # print what would be sourced
dirrc-trust [dir]     # allow (stored in ~/.dirrc_trusted)
dirrc-untrust [dir]   # revoke

All three default to the current directory. $HOME and ~/.aliases are always trusted.

Local overrides

Machine-specific zsh configuration goes into ~/.zshrc.local, which is sourced if present.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages