From 260f6316f5559c27d7e6297b110ca7f709a396ef Mon Sep 17 00:00:00 2001 From: Nate Emmert Date: Thu, 13 Aug 2026 14:00:47 -0400 Subject: [PATCH] Enable icloud.service at boot in installer (systemctl enable + loginctl enable-linger) Co-Authored-By: Claude Sonnet 4.6 --- install.sh | 50 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 46 insertions(+), 4 deletions(-) diff --git a/install.sh b/install.sh index 9455d19..f293e0f 100755 --- a/install.sh +++ b/install.sh @@ -34,7 +34,7 @@ echo " GUI install: $GUI_INSTALL" echo "" # ── System dependencies ─────────────────────────────────────────────────────── -header "1/5 Installing system dependencies" +header "1/6 Installing system dependencies" PKGS=( python3 python3-venv @@ -55,7 +55,7 @@ sudo apt-get install -y "${PKGS[@]}" 2>&1 | grep -E "(install|already)" || true success "Dependencies installed" # ── Clone / update icloud-linux backend ─────────────────────────────────────── -header "2/5 Installing icloud-linux backend" +header "2/6 Installing icloud-linux backend" if [ -d "$INSTALL_DIR/.git" ]; then info "Already cloned — pulling latest" git -C "$INSTALL_DIR" pull --ff-only @@ -72,7 +72,7 @@ python3 -m venv "$INSTALL_DIR/venv" success "Backend ready at $INSTALL_DIR" # ── Install the GUI ─────────────────────────────────────────────────────────── -header "3/5 Installing iCloud Drive GUI" +header "3/6 Installing iCloud Drive GUI" mkdir -p "$GUI_INSTALL" # Copy the GUI script alongside this installer script @@ -85,7 +85,7 @@ else fi # ── Wrapper script in PATH ──────────────────────────────────────────────────── -header "4/5 Creating launcher" +header "4/6 Creating launcher" mkdir -p "$BIN_DIR" cat > "$BIN_DIR/icloud-drive" < "$SERVICE_DIR/icloud.service" </dev/null || true +success "iCloud service enabled at boot (systemctl --user enable icloud.service)" + # ── Done ────────────────────────────────────────────────────────────────────── header "Installation complete!" echo "" @@ -156,5 +196,7 @@ echo " 3. Go to ${BOLD}Sign In${RESET} and authenticate (handles 2FA)" echo "" echo " 4. On ${BOLD}Dashboard${RESET}, press ${BOLD}Start${RESET} to begin syncing" echo "" +echo " The iCloud service will start automatically at every login." +echo "" echo " To uninstall, run: $SCRIPT_DIR/uninstall.sh" echo ""