Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jogendra/dotfiles

Config files for zsh, bash, vim, git, completions etc. to set up a system the way I like it. ~/.jogendra
https://github.com/jogendra/dotfiles

applescript bash bashrc dotfiles dotfiles-macos git hacktoberfest iterm2 macos shell symlink vim xcode zsh zshrc

Last synced: 30 days ago
JSON representation

Config files for zsh, bash, vim, git, completions etc. to set up a system the way I like it. ~/.jogendra

Awesome Lists containing this project

README

        

# 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](https://jogendra.github.io/i-do-dotfiles)

Jogendra's Iterm2

**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](https://twitter.com/holman) way the best, Thanks to [holman dotfiles](https://github.com/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 run `installers/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 run `installers/bootstrap`.

## Install

Run:

```sh
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.

gitlazy

gotop

## License
This repository is under MIT License. Check [LICENSE](LICENSE) file for more information.