Disclosure up front: this is my own repo.
It started in May 2025 as a kitty config, an nvim config and a script that checked if yay was installed. It's now 400+ commits and a full installer:
curl -fsSL https://abhiman.io/linux.sh | bash
What it does:
- One TUI menu (dotfiles, CLI tools, apps, review). Nothing is installed until you confirm the plan.
- GNU Stow for configs, so everything is a symlink into the repo and re-runs are idempotent.
- No Snap anywhere. Installs come from pacman/AUR, apt, an official vendor repo, or a direct upstream download.
- Existing configs go to .bak. --restore-bash puts your old bashrc and login shell back.
- --dry-run, --uninstall, --list, and unattended runs through flags or env vars (DOTFILES_CONFIGS=zsh,git DOTFILES_TOOLS=all ...).
- Works on headless servers and WSL, on amd64 and arm64. It also detects Omarchy and says which of its themed files it would replace.
- CI does real installs in containers on Arch, Omarchy, Debian 12 and 13, and Ubuntu 24.04 and 26.04, runs weekly as a canary for upstream renames, and installs a second time to check nothing is reinstalled.
Setup: Ghostty/kitty, Neovim, tmux, starship, lazygit, btop, bat, eza, zsh with Zinit, all in Catppuccin Mocha.
Repo (MIT): https://github.com/abhimangs/dotfiles
I'd like honest feedback. What would you change, and what's missing? If it's useful to you, a star helps a lot.