feat(installers): consolidate app installers into host-aware install-apps
Fold macinstaller + install-apt-pkgs + install-tools + install-zellij into a single host-aware lk-installers/install-apps (macOS->Homebrew, bootstrapping Homebrew if absent; Linux->apt + upstream installers). Installs the tools the configs assume (bat, fd, fzf, zoxide, zellij, nvim, btop, htop, tldr) plus the fzf-git.sh helper and fzf shell integration; idempotent. link-dotfiles gains --apps to install then link in one shot. .zshrc drops the redundant brew/system zsh-autosuggestions source (zinit already loads it), fixing the missing-file error on a fresh box. README documents the new flow.
This commit is contained in:
+9
-1
@@ -15,6 +15,14 @@ set -euo pipefail
|
||||
repo="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
cd "$repo"
|
||||
|
||||
# `--apps`: install all host CLI tools first, then link. Without it, this only
|
||||
# links (fast + idempotent). App install is delegated to the host-aware
|
||||
# lk-installers/install-apps.
|
||||
if [ "${1:-}" = "--apps" ]; then
|
||||
echo "Installing apps first (--apps)…"
|
||||
"$repo/lk-installers/install-apps"
|
||||
fi
|
||||
|
||||
ensure_stow() {
|
||||
command -v stow >/dev/null 2>&1 && return
|
||||
|
||||
@@ -22,7 +30,7 @@ ensure_stow() {
|
||||
case "$(uname -s)" in
|
||||
Darwin)
|
||||
if ! command -v brew >/dev/null 2>&1; then
|
||||
echo "error: Homebrew is required on macOS. Run ./lk-installers/macinstaller first." >&2
|
||||
echo "error: Homebrew is required on macOS. Run ./lk-installers/install-apps (or ./link-dotfiles --apps) first." >&2
|
||||
exit 1
|
||||
fi
|
||||
brew install stow
|
||||
|
||||
Reference in New Issue
Block a user