# Dotfiles
The purpose of this directory is to monitor dotfiles via a bare git repository. It is inspired by this https://www.atlassian.com/git/tutorials/dotfiles blogpost, which in turn was inspired by this https://news.ycombinator.com/item?id=11070797 HN thread.
The repo has two branches, the main branch I use on Ubuntu distros with an GNOME DE. The arch branch is surprisingly for my minimal arch setup, currently running X11 + openbox + polybar.

## Setting up this project initially:
1. git init --bare $HOME/.cfg
2. alias config='/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME' or echo "alias config='usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME'" >> $HOME/.bashrc
3. config config --local status.showUntrackedFiles no

## Installing on a new system
While in $HOME
1. Add the following to .bashrc alias config='/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME'
2. source .bashrc
3. echo ".cfg">> .gitignore. This is to prevent potential recursive problems
4. git clone --bare https://github.com/leoalho/dotfiles.git $HOME/.cfg
5. Checkout the content to $HOME: config checkout
6. config config --local status.showUntrackedFiles no

## .git_aliases
To use the git aliases in your .gitconfig. Add the following lines to your .gitconfig:
[include]
  path = ~/.git_aliases, or any other path depending on your $HOME

## .bash_aliases
To use the bash aliases in your .bashrc include the following to your .bashrc
if [ -f ~/.bash_aliases ]; then
        . ~/.bash_aliases
fi

Also a .bash_prompt file is included that can be included in the same way as the bash_aliases. It provides styling for the prompt

## Tmux uses the tpm for plugins
https://github.com/tmux-plugins/tpm

## Nvim uses vim-plug
https://github.com/junegunn/vim-plug

## Shell scripts
The repository also contains a couple of helper shell scripts located in .local/bin
