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 [email protected]: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"
Run $DOTFILES/nvim_install.sh
which installs some dependencies (node, cargo, clipboard),
mostly user-locally. There will be errors on the first couple of starts, complaining about
missing Plugins etc.
Plugins and such will be installed by lazy.nvim
and mason
. There will probably errors
for missing tools, which you then have to add to make the errors go away.
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
.