fix(install): improve starship installation and oh-my-zsh configuration

- Use direct binary download for starship instead of install script for better reliability
- Add CHSH=no and --unattended flags to oh-my-zsh installation to prevent interactive prompts
- Add manual shell change logic with proper error handling
- Clean up temporary files after starship installation
This commit is contained in:
marvin.dietermann
2026-04-10 12:05:22 +02:00
parent c0be2b9e50
commit de83f9ac30
2 changed files with 12 additions and 3 deletions

View File

@@ -6,7 +6,10 @@ step "3/9 — Installing Starship"
if $IS_ARCH; then if $IS_ARCH; then
$PKG_INSTALL starship $PKG_INSTALL starship
else else
curl -ksS https://starship.rs/install.sh | sh -s -- -y curl -ksSLo /tmp/starship.tar.gz https://github.com/starship/starship/releases/latest/download/starship-x86_64-unknown-linux-musl.tar.gz
tar xzf /tmp/starship.tar.gz -C /tmp
sudo install -m 755 /tmp/starship /usr/local/bin/starship
rm -f /tmp/starship /tmp/starship.tar.gz
fi fi
info "Starship installed/updated" info "Starship installed/updated"

View File

@@ -4,13 +4,19 @@
step "2/9 — Setting up Zsh" step "2/9 — Setting up Zsh"
if [[ ! -d "$HOME/.oh-my-zsh" ]]; then if [[ ! -d "$HOME/.oh-my-zsh" ]]; then
RUNZSH=no KEEP_ZSHRC=yes sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" || RUNZSH=no KEEP_ZSHRC=yes CHSH=no sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended ||
RUNZSH=no KEEP_ZSHRC=yes sh -c "$(curl -kfsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" RUNZSH=no KEEP_ZSHRC=yes CHSH=no sh -c "$(curl -kfsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
info "Oh My Zsh installed" info "Oh My Zsh installed"
else else
info "Oh My Zsh already present" info "Oh My Zsh already present"
fi fi
# Set zsh as default shell if it isn't already
if [[ "$(basename "$SHELL")" != "zsh" ]]; then
sudo chsh -s "$(command -v zsh)" "$USER" 2>/dev/null || true
info "Default shell changed to zsh"
fi
ZSH_CUSTOM="${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}" ZSH_CUSTOM="${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}"
for plugin in zsh-autosuggestions zsh-syntax-highlighting; do for plugin in zsh-autosuggestions zsh-syntax-highlighting; do