mirror of
https://git.decapod.one/brethil/dotfiles
synced 2024-11-24 20:41:31 +01:00
106 lines
3.7 KiB
Markdown
106 lines
3.7 KiB
Markdown
# brethil's dotfiles
|
||
|
||
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.
|
||
|
||
[!ci.decapod.one status](https://ci.decapod.one/api/badges/2/status.svg)
|
||
|
||
[zsh theme](docs/brethil-theme.png "zsh theme")
|
||
[vim theme](docs/vim.png "vim theme")
|
||
[tmux theme](docs/tmux.png "tmux theme")
|
||
|
||
## Description
|
||
|
||
├── README.md
|
||
├── playbook.yml
|
||
│ └── aliases definitions. Add .zsh files here to include more
|
||
├──────── Main files ────────
|
||
│ ├── aliases/
|
||
│ │ └── aliases definitions. Add .zsh files here to include more
|
||
│ ├── functions/
|
||
│ │ └── functions definitions. ADD .zsh files here to include more
|
||
│ ├── colors.zsh
|
||
│ │ └── ANSI color escapes
|
||
│ ├── ansible
|
||
│ │ └── ansible roles/vars
|
||
│ ├── brethil_dotfile.sh:
|
||
│ │ └── main configuration file
|
||
│ ├── zsh_plugins.txt
|
||
│ │ zsh plugins sourced by antidote
|
||
├──────── oh-my-zsh themes ────────
|
||
│ └── themes
|
||
│ └─ brethil.zsh-theme
|
||
├──────── Misc rc files────────
|
||
│ ├── gitconfig
|
||
│ │ └── git configuration
|
||
│ ├── ipython/
|
||
│ │ ├── ipython configs
|
||
│ ├── vim
|
||
│ │ ├── vimrc
|
||
│ │ │ └── main vim rc
|
||
│ │ ├── plugs.vim
|
||
│ │ │ └── plugins to be installed with vim-plug
|
||
│ │ ├── plugins_config.vim
|
||
│ │ │ └── plugins configuration
|
||
│ │ ├── shortcuts.vim
|
||
│ │ │ └── vim shortcuts definitions
|
||
│ │ └── functions.vim
|
||
│ │ └── miscellaneous vim function
|
||
│ └── pdbrc.py
|
||
│ └── pdb++ rc (a drop-in replacement for pdb)
|
||
├──────── Other ─────────────
|
||
├── extras/check_for_update.zsh
|
||
│ └── selfupdate script
|
||
└── useful_commands
|
||
|
||
## Installation
|
||
|
||
### With ansible:
|
||
|
||
```bash
|
||
bash dev/add_community.general.sh # only if community.general is not installed
|
||
ansible-playbook -v -i <hosts file> playbook.yml
|
||
```
|
||
|
||
This playbook can be tested [with a docker container](dev/README.md)
|
||
|
||
### Manually
|
||
|
||
```bash
|
||
git clone https://git.decapod.one/brethil/dotfiles ~/.dotfiles
|
||
cat <<EOF >> .zshrc
|
||
|
||
export DOTFILES=~/.dotfiles
|
||
source \$DOTFILES/brethil_dotfile.sh
|
||
EOF
|
||
|
||
ln -s ~/.dotfiles/vim/vimrc ~/.vimrc
|
||
```
|
||
|
||
## Updating
|
||
|
||
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
|
||
|
||
```bash
|
||
dotfiles_selfupdate
|
||
```
|
||
|
||
This can be disabling by setting the `DISABLE_DOTFILES_AUTO_UPDATE` env var before before sourcing `brethil_dotfile.sh`
|
||
|
||
## Try it out
|
||
|
||
Docker images are regularly built, and they include a full development environment (hence are quite large)
|
||
|
||
```bash
|
||
docker run -it registry.decapod.one/brethil/dotfiles
|
||
```
|
||
|
||
## Theme customization
|
||
|
||
To set a slightly more minimal prompt setup, the environment variable `DOTFILES_MINIMAL` can be set in `~/.zshrc` to reduce the space the path section of the prompt occupies, as well as removing the right prompt:
|
||
|
||
```bash
|
||
export DOTFILES_MINIMAL=true
|
||
```
|