2020-12-05 15:38:52 +01:00
# brethil's dotfiles
2024-07-04 12:27:53 +02:00
My own dotfiles. `zsh` configuration based on [antidote ](https://github.com/mattmc3/antidote.git ) and [oh-my-zsh ](https://github.com/ohmyzsh/ohmyzsh ), `vim` configuration uses [vim-plug ](https://github.com/junegunn/vim-plug ), [ALE ](https://github.com/dense-analysis/ale ) and more.
2024-01-03 15:43:38 +01:00
2024-04-05 15:12:06 +02:00
[!ci.decapod.one status ](https://ci.decapod.one/api/badges/2/status.svg )
2024-01-03 15:43:38 +01:00
[zsh theme ](docs/brethil-theme.png "zsh theme" )
[vim theme ](docs/vim.png "vim theme" )
[tmux theme ](docs/tmux.png "tmux theme" )
2020-12-05 15:38:52 +01:00
## Description
2020-12-09 04:00:34 +01:00
├── README.md
2024-07-04 12:27:53 +02:00
├── playbook.yml
│ └── aliases definitions. Add .zsh files here to include more
2020-12-09 04:00:34 +01:00
├──────── Main files ────────
2024-01-03 15:43:38 +01:00
│ ├── aliases/
2024-07-04 12:27:53 +02:00
│ │ └── aliases definitions. Add .zsh files here to include more
2024-01-03 15:43:38 +01:00
│ ├── functions/
2024-07-04 12:27:53 +02:00
│ │ └── functions definitions. ADD .zsh files here to include more
2021-10-09 00:03:46 +02:00
│ ├── colors.zsh
2024-07-04 12:27:53 +02:00
│ │ └── ANSI color escapes
2020-12-09 04:00:34 +01:00
│ ├── ansible
2024-07-04 12:27:53 +02:00
│ │ └── ansible roles/vars
2024-01-03 15:43:38 +01:00
│ ├── brethil_dotfile.sh:
2024-07-04 12:27:53 +02:00
│ │ └── main configuration file
│ ├── zsh_plugins.txt
│ │ zsh plugins sourced by antidote
2020-12-09 04:00:34 +01:00
├──────── oh-my-zsh themes ────────
2024-07-04 12:27:53 +02:00
│ └── themes
│ ├─ brethil.zsh-theme
│ └─ brethil-minimal.zsh-theme
2020-12-09 04:00:34 +01:00
├──────── Misc rc files────────
│ ├── gitconfig
2024-07-04 12:27:53 +02:00
│ │ └── git configuration
2024-01-03 15:43:38 +01:00
│ ├── ipython/
2024-07-04 12:27:53 +02:00
│ │ ├── ipython configs
2020-12-09 04:00:34 +01:00
│ ├── vim
│ │ ├── vimrc
│ │ │ └── main vim rc
│ │ ├── plugs.vim
│ │ │ └── plugins to be installed with vim-plug
│ │ ├── plugins_config.vim
│ │ │ └── plugins configuration
│ │ ├── shortcuts.vim
│ │ │ └── vim shortcuts definitions
2024-01-03 15:43:38 +01:00
│ │ └── functions.vim
│ │ └── miscellaneous vim function
2020-12-09 04:00:34 +01:00
│ └── pdbrc.py
│ └── pdb++ rc (a drop-in replacement for pdb)
├──────── Other ─────────────
2024-01-03 15:43:38 +01:00
├── extras/check_for_update.zsh
2020-12-09 04:00:34 +01:00
│ └── selfupdate script
└── useful_commands
2020-12-05 15:38:52 +01:00
## Installation
2024-01-03 15:43:38 +01:00
### With ansible:
2020-12-07 19:45:06 +01:00
2024-01-03 15:43:38 +01:00
```bash
bash dev/add_community.general.sh # only if community.general is not installed
2024-07-04 12:27:53 +02:00
ansible-playbook -v -i < hosts file > playbook.yml
2024-01-03 15:43:38 +01:00
```
2020-12-07 19:45:06 +01:00
2024-01-03 15:43:38 +01:00
This playbook can be tested [with a docker container ](dev/README.md )
2020-12-07 19:45:06 +01:00
2024-01-03 15:43:38 +01:00
### Manually
2020-12-07 19:45:06 +01:00
2024-01-03 15:43:38 +01:00
```bash
git clone https://git.decapod.one/brethil/dotfiles ~/.dotfiles
2024-07-04 12:27:53 +02:00
cat < < EOF > > .zshrc
export DOTFILES=~/.dotfiles
source \$DOTFILES/brethil_dotfile.sh
EOF
ln -s ~/.dotfiles/vim/vimrc ~/.vimrc
2024-01-03 15:43:38 +01:00
```
## Updating
2017-06-12 16:22:05 +02:00
2020-12-05 15:38:52 +01:00
A self-update mechanism is included. It asks for confirmation to pull the latest changes
from the git repo every two weeks. This also updates the git-sourced repositories installed
by the install script. The self-update routine can be called manually by calling
2017-06-12 16:22:05 +02:00
2024-01-03 15:43:38 +01:00
```bash
dotfiles_selfupdate
```
2020-12-05 15:38:52 +01:00
2024-01-03 15:43:38 +01:00
This can be disabling by setting the `DISABLE_DOTFILES_AUTO_UPDATE` env var before before sourcing `brethil_dotfile.sh`
2017-06-12 16:22:05 +02:00
2024-01-03 15:43:38 +01:00
## Try it out
2020-02-14 16:37:45 +01:00
2024-01-03 15:43:38 +01:00
Docker images are regularly built, and they include a full development environment (hence are quite large)
2020-02-14 16:37:45 +01:00
2024-01-03 15:43:38 +01:00
```bash
docker run -it registry.decapod.one/brethil/dotfiles
```