.bashrc file was a mess, with way too much stuff inside one file, making it hard to manage. I decided to split it up and make it modular. To do this I keep my main
.bashrc file really simple. The only thing it does is loop through the
~/.bashrc.d/ folder and running everything inside it.
So the contents of my
~/.bashrc file is just the following:
for file in ~/.bashrc.d/*.bashrc; do source "$file" done
Then I keep all my small modular units inside
~/.bashrc.d/ folder. It looks like this:
├── activitystream.bashrc ├── default.bashrc ├── dotfiles.bashrc ├── git.bashrc ├── nvm.bashrc └── pb.bashrc
You can see all of its contents here. Each file does one/few things well, so it’s really easy to add more units, remove or change them. I really like this approach.