What gets installed
Config files
Section titled “Config files”Each file is copied from the repo to the same path under your home folder. An existing file is
backed up first as <file>.bak.<timestamp>.
| Repo file | Installed to | Page |
|---|---|---|
.zshrc, .zshenv, .zprofile |
~/ |
zsh |
.bash_profile, .bashrc, .inputrc |
~/ |
bash |
.aliases, .functions |
~/ |
Aliases, Functions |
.config/nano/nanorc |
~/.nanorc (path rewritten for your OS) |
nano |
.tmux.conf |
~/.tmux.conf |
tmux |
.config/tmux/*.tmux, tmux.conf |
~/.config/tmux/ |
tmux |
.config/kitty/kitty.conf |
~/.config/kitty/kitty.conf |
kitty |
.config/kitty/themes/*.conf |
~/.config/kitty/themes/ (Lasik, Catppuccin Mocha) |
kitty |
.vimrc |
~/.vimrc |
Vim |
.vim/colors/sublimemonokai.vim |
~/.vim/colors/ (Vim’s colour scheme) |
Vim |
.config/nvim/init.lua |
~/.config/nvim/init.lua |
Neovim |
.config/tmuxp/default.yaml |
~/.config/tmuxp/default.yaml |
tmuxp |
.config/peaclock/config |
~/.config/peaclock/config |
peaclock |
.gitignore_global |
~/.gitignore_global |
Git |
.gitconfig |
not copied: its settings are added to yours one by one, and settings you already have are kept | Git |
.config/starship.toml |
~/.config/starship.toml |
Starship |
| (generated) | ~/.config/locale.conf |
Locale |
Both the zsh and the bash files are always installed, whichever login shell you pick — so switching shells later needs no re-install.
Programs and packages
Section titled “Programs and packages”Only installed when missing. Already-installed ones are reported as found: and left alone.
| What | When | Why |
|---|---|---|
| zsh | zsh chosen as login shell | the shell itself |
| starship | always (via brew, or the official starship.rs installer) |
the prompt |
| less | Linux | pager; lesspipe hooks into it |
| bash-completion | Linux | Tab-completion for git, apt, ssh hosts… |
notify-send (libnotify-bin / libnotify) |
Linux desktops only | the alert alias |
kitty terminfo (kitty-terminfo) |
Linux, when kitty itself isn’t installed | so SSH from kitty works — see kitty |
| A Nerd Font (Hasklug by default) | desktops, when it isn’t installed yet | icons in the prompt, tmux and kitty; goes to ~/.local/share/fonts (Linux) or ~/Library/Fonts (macOS), no sudo |
locale (locales, glibc-langpack-*, glibc-locale) |
chosen locale missing | see Locale |
chsh (util-linux-user / shadow) |
Fedora / Alpine, when missing | to change the login shell |
| TPM and Catppuccin for tmux | git is installed |
cloned into ~/.config/tmux/plugins/ |
A desktop here means macOS, or Linux with a graphical session running ($DISPLAY or
$WAYLAND_DISPLAY is set). Over plain SSH and in Docker these are empty.
System changes
Section titled “System changes”| Change | When |
|---|---|
Login shell changed with chsh |
unless you pick keep, or it’s already that shell |
Shell path added to /etc/shells |
only if chsh would refuse it otherwise (e.g. Homebrew’s zsh) |
Locale enabled in /etc/locale.gen and generated |
Debian, Ubuntu, Arch, when the locale is missing |
Full system upgrade (pacman -Syu) |
Arch only, and only when the package database has never been synced (fresh images) |
Not installed
Section titled “Not installed”These are in the repo but the installer doesn’t copy them:
| File | Why it matters | Page |
|---|---|---|
.zshrc.local.example |
template for machine-specific settings | Local files |
docs/ |
this site | Contributing |
kitty, tmux, vim, nvim, tmuxp and peaclock themselves are not installed, only
their configs. You get a
warning with the install command if they’re missing (the kitty warning only appears on desktops,
since kitty is a desktop app).