I dislike having the raw escape byte in these scripts. Unfortunately `sed` does not support interpreting it via an escape sequence, so use printf for that. To remain POSIX compatible use `\033` and not `\e` or `\x1b` since I couldn't find these in the printf(1p) manpage. Unfortunately this brings a second layer of escaping.
My dotfiles
This is a collection of the configuration files and scripts I use for various tools and environments.
Although some files support macOS, most of them assume that they are used on a GNU/Linux system. The systems I use include an Artix, a Manjaro and an Ubuntu installation. All of them running i3wm and the arch-based systems without a DE. I use kitty as terminal, zsh as shell and neovim as text editor.
The repository mimics my $HOME, trying to conform to the XDG Base Directory
Specification as close as possible. An exception is etc/ -> /etc/, as well
as meta/ and some other files in the root of the repository (e.g. this README
or the LICENSE) which are not in my $HOME.
The most interesting files are probably in .config/zsh, .config/vim and .config/tmux.
Installation
The repository content can be installed via dotbot. All existing files which would be overwritten are first packed into an archive for backup (see meta/archive) and then dotbot places symlinks in the appropriate places for the different files and folders in this repository.
To start the installation run:
$ ./meta/install