These are my settings shared between different UNIX systems. The programs and shells, that I have settings for are:
- Neovim
- shells
- zsh
- bash
- terminal mulitplexers / emulators
- tmux
- kitty
- htop
- oh-my-posh (command prompt styling)
To get started, clone this repo into your $HOME
with
git clone git@github.com:akriese/dotfiles.git
Depending on if you're using bash or zsh as your main shell, you have to create / adjust your local config files. For bash:
SHELL="$(which bash)"
export DOTFILES="$HOME/dotfiles" # or wherever else you cloned it to
source "$DOTFILES/.allbashrc"
For zsh:
~/.zshenv
export DOTFILES="$HOME/dotfiles"
ZDOTDIR="$DOTFILES/zsh/.config/zsh"
SHELL="$(which zsh)"
~/.zshrc
export PATH="path/to/neovim:$HOME/.local/bin:$PATH"
After setting up the config files, reload your shell session to make sure you have all the important changes.
For this you need to have the tool stow
installed. It maps this repo's tree
structure to the system's home folder structure using symlinks, thus placing config files where the programs (htop, tmux, nvim) are searching for them.
If stow is installed, run the setup.sh script. It automatically runs stow on all necessary subdirectories of this repo.
bash "$DOTFILES/setup.sh"
Firstly, neovim must be installed. Visit neovim's page to find help on that.
After installing Neovim, run it. There will be errors on the first couple of starts, complaining about missing Plugins etc.
Run :PlugInstall
to install all configured plugins. Also run :TSUpdate
to get the latest syntax files for treesitter.
oh-my-posh is a tool that beautifies the command prompt. This config includes a theme which shows
- distro pictogram
- current path (shortened or displayed as some emoji)
- git status
- python env and version
- node version
- last command's execution status (fail or success)
- time (the last command ended on)
- execution time (of the last command)
- battery status
I have chosen oh-my-posh as it also works on powershell. If you have a better alternative, feel free to contact me :)
Install the tool into ~/.local/bin/
with the script omp_setup.sh by running
bash "$DOTFILES/omp_setup.sh"
This automatically adds the installation path to PATH and the oh-my-posh
eval command in either your local ~/.bashrc
or ~/.zshrc
.
To make use of the git config in gitconfig.toml
, include the following in your global git config file:
[include]
path = "~/path/to/dotfiles/gitconfig.toml"