User-specific application configuration is traditionally stored in so called dotfiles (files whose filename starts with a dot). It is common practice to track dotfiles with a version control system such as Git to keep track of changes and synchronize dotfiles across various hosts. There are various approaches to managing your dotfiles (e.g. directly tracking dotfiles in the home directory v.s. storing them in a subdirectory and symlinking/copying/generating files with a shell script or a dedicated tool).
- Arch Wiki
This is a series of scripts and configurations pertaining to my environment.
-
Clone this repo to your home directory.
-
Edit
.gitconfigand.gitconfig-workto fit your needs.By default, this file points to my own personal GitHub details. Most other scripts utilize these variables.
-
Install all the required dependencies with:
./install.shHopefully distro agnostic :)
-
Symbolic link all the dotfiles and clone any remaining plugins using:
./setup.shAll the vim/nvim plugins should automatically be installed with Vim-Plug/Lazy respectively.
Note: this symbolic links ALL relevant files in this repository. Ensure you edit
.gitconfigto change your identity. -
Install fonts with:
./fonts.sh
Twas Vim then (Doom) Emacs, now Neovim.
Here are a few of the custom keybinds for ZSH I implemented.
| Keybind | Action |
|---|---|
ctrl-s |
Adds sudo to start of line |
ctrl-k |
cd .. |
ctrl-q |
Kill all other tmux sessions. |
I am actively developing a handful of convenience scripts that I use daily. I'm extremely lazy and hate typing long commands.
clone - Shortens Github clone commands.
For example,
git clone [email protected]:jarulsamy/examplebecomesclone example
gh-ssh - Automatically generates and adds a SSH key to the SSH agent and copies to clipboard. Helpful for setting up new systems.
pypacks - Auto install every python package that I normally need on a day-to-day basis.
ghw - Shorthand way to open (most) git repositories in the default web browser.
For example
firefox https://github.com/jarulsamy/.dotfilesbecomesghw .dotfiles.
Autocompletion for the aforementioned zsh functions is powered by a homebrew project called dotEngine.


