Jose Henrique 896e31039d Add idempotent install.sh (Debian + Alpine)
Bootstraps a fresh host: detects apt vs apk, installs base + extra
packages (htop/neofetch/fzf), installs oh-my-zsh + zsh-autosuggestions,
deploys the matching server/<host> dotfiles by hostname, and runs
Vundle :PluginInstall. Flags: --host --no-zsh --chsh --dry-run.
2026-07-20 09:01:02 -03:00

dotfiles

Personal and server dotfiles. Kept in two areas:

  • server/ — configs pulled from the homelab servers (iris, vega, nebula, nexus)
  • (personal dotfiles live at the repo root, kept separate from server/)

Layout

server/<host>/
  .zshrc                      zsh config (oh-my-zsh, agnoster theme)
  .vimrc                      vim config (dracula + lightline + Vundle)
  .bashrc                     bash config (where present)
  .config/htop/htoprc         htop config
  .config/neofetch/config.conf neofetch config (where present)

What is NOT included (and why)

These are intentionally excluded from the repo:

  • .ssh/, .kube/, .docker/, .ansible/ — secrets / infra credentials
  • .zsh_history, .viminfo, .zcompdump*, .netrwhist — ephemeral caches
  • .oh-my-zsh/ — upstream framework (2532M); reinstall instead of vendoring
  • .vim/bundle/* — Vundle-managed third-party plugins
  • backup.sh, clean.sh, crontab.bak*, talosctl, places — local utility scripts / binaries specific to each host

Reinstalling the frameworks on a fresh server

# oh-my-zsh (theme used: agnoster)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

# zsh-autosuggestions plugin
git clone https://github.com/zsh-users/zsh-autosuggestions \
  ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

# vim plugins (dracula, lightline, vim-gitbranch) via Vundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
vim +PluginInstall +qall

After cloning server/<host>/ contents into /root, source .zshrc (or re-login) and run :PluginInstall once in vim.

Description
No description provided
Readme 73 KiB
Languages
Shell 100%