dotfiles
dotfiles copied to clipboard
Config files for zsh, bash, vim, git, completions etc. to set up a system the way I like it. ~/.jogendra
I do dotfiles!
Config files for zsh, bash, git, completions etc. to set up a system the way I like it. ~/.jogendra
https://jogendra.github.io/i-do-dotfiles

NOTE: The dotfiles is configured for MacOS machine. Most of the things expected to work on all machines running unix based operating systems.

Components
I went through many dotfiles before deciding structure of this dotfiles, I found holman way the best, Thanks to holman dotfiles. What he used is called Topical organization which is organizing the different parts of dotfiles in directories, each entitled to a specific subject. By topical organization, all AppleScripts go inside the AppleScript/
directory, git settings are in a git/
directory, and so on. Everything's built around topic areas. If you're adding a new area to your forked dotfiles — say, "vscode" — you can simply add a vscode directory and put files in there.
There's a few special files in the hierarchy:
-
bin/: Anything in
bin/
will get added to your$PATH
and be made available everywhere. -
topic/*.zsh: Any files ending in
.zsh
get loaded into your environment. -
topic/path.zsh: Any file named
path.zsh
is loaded first and is expected to setup$PATH
or similar. -
topic/completion.zsh: Any file named
completion.zsh
is loaded last and is expected to setup autocomplete. -
topic/install.sh: Any file named
install.sh
is executed when you runinstallers/install
. To avoid being loaded automatically, its extension is.sh
, not.zsh
. -
topic/*.symlink: Any file ending in
*.symlink
gets symlinked into your$HOME
. This is so you can keep all of those versioned in your dotfiles but still keep those autoloaded files in your home directory. These get symlinked in when you runinstallers/bootstrap
.
Install
Run:
git clone https://github.com/jogendra/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
installers/bootstrap
This will symlink the appropriate files in .dotfiles
to your home directory. Everything is configured and tweaked within ~/.dotfiles
.
The main file you'll want to change right off the bat is zsh/zshrc.symlink
, which sets up a few paths that'll be different on your particular machine.
Pimp my Terminnal
I will soon be writing detailed blog post on how my iTerm is customized.


License
This repository is under MIT License. Check LICENSE file for more information.