From 4967286abb2fc48eb7366be18d3a3e79df6c632d Mon Sep 17 00:00:00 2001 From: FlintyLemming Date: Tue, 31 Mar 2026 11:43:40 +0800 Subject: [PATCH] chore: update setup script configuration and dependencies --- linux-managements/setup.sh | 41 ++++++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 11 deletions(-) diff --git a/linux-managements/setup.sh b/linux-managements/setup.sh index 48f8c76..32b937e 100755 --- a/linux-managements/setup.sh +++ b/linux-managements/setup.sh @@ -195,10 +195,16 @@ install_git() { # ─── Homebrew ───────────────────────────────────────────────────────────────── install_homebrew() { + # Check PATH first, then the well-known linuxbrew location if command -v brew &>/dev/null; then success "Homebrew already installed" return fi + if [ -f /home/linuxbrew/.linuxbrew/bin/brew ]; then + eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" + success "Homebrew already installed (added to PATH)" + return + fi info "Installing Homebrew ..." local install_script install_script="$(mktemp)" @@ -331,8 +337,12 @@ install_docker() { else curl -fsSL https://git.mitsea.com/FlintyLemming/scripts-public/raw/branch/main/linux-managements/install-docker.sh \ -o /tmp/install-docker.sh - psudo sh /tmp/install-docker.sh - success "Docker installed" + if psudo sh /tmp/install-docker.sh; then + success "Docker installed" + else + warn "Docker installation failed (packages may not be available for this release)." + warn "Skipping Docker — please install manually later." + fi fi ;; fedora) @@ -342,14 +352,21 @@ install_docker() { info "Setting up Docker CE repository ..." psudo curl -fsSL https://download.docker.com/linux/fedora/docker-ce.repo \ -o /etc/yum.repos.d/docker-ce.repo - psudo dnf install -y docker-ce docker-ce-cli containerd.io \ - docker-compose-plugin docker-buildx-plugin - success "Docker installed" + if psudo dnf install -y docker-ce docker-ce-cli containerd.io \ + docker-compose-plugin docker-buildx-plugin; then + success "Docker installed" + else + warn "Docker installation failed (packages may not be available for this release)." + warn "Skipping Docker — please install manually later." + fi fi ;; esac - docker_no_root + # Only configure docker group/service if docker was actually installed + if command -v docker &>/dev/null; then + docker_no_root + fi } # Allow current user to run docker without sudo @@ -546,11 +563,13 @@ main() { configure_fish_dotfiles configure_ssh_config - step "Starting Docker" - if psudo systemctl start docker; then - success "Docker started" - else - warn "Could not start Docker — please start it manually" + if command -v docker &>/dev/null; then + step "Starting Docker" + if psudo systemctl start docker; then + success "Docker started" + else + warn "Could not start Docker — please start it manually" + fi fi # Stop sudo keepalive