diff --git a/apps/desktop/scripts/download-ollama.sh b/apps/desktop/scripts/download-ollama.sh index 8c863f3..135b04a 100644 --- a/apps/desktop/scripts/download-ollama.sh +++ b/apps/desktop/scripts/download-ollama.sh @@ -14,8 +14,8 @@ ARCH="$(uname -m)" case "$OS" in Darwin) - # macOS는 .tgz 형식 (ollama-darwin.tgz) - ASSET="ollama-darwin.tgz" + # macOS는 단일 바이너리 asset (v0.5.x 기준 tgz 없음 — GitHub API로 확인) + ASSET="ollama-darwin" ;; Linux) if [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then @@ -45,17 +45,25 @@ echo "=== Ollama ${OLLAMA_VERSION} ${OS} ${ARCH} 다운로드 ===" echo "URL: $URL" curl -L --fail --retry 3 -o "$TMP/$ASSET" "$URL" -tar -xzf "$TMP/$ASSET" -C "$TMP" -# tgz 구조: bin/ollama + lib/ (ROCm/CUDA 등). 필요한 것만 복사. -if [ -f "$TMP/bin/ollama" ]; then - cp "$TMP/bin/ollama" "$DEST_DIR/ollama" - chmod +x "$DEST_DIR/ollama" -fi - -# 라이브러리 동봉(CUDA/ROCm 런타임용) -if [ -d "$TMP/lib" ]; then - cp -R "$TMP/lib" "$DEST_DIR/" -fi +case "$ASSET" in + *.tgz) + tar -xzf "$TMP/$ASSET" -C "$TMP" + # tgz 구조: bin/ollama + lib/ (ROCm/CUDA 등). 필요한 것만 복사. + if [ -f "$TMP/bin/ollama" ]; then + cp "$TMP/bin/ollama" "$DEST_DIR/ollama" + chmod +x "$DEST_DIR/ollama" + fi + # 라이브러리 동봉(CUDA/ROCm 런타임용) + if [ -d "$TMP/lib" ]; then + cp -R "$TMP/lib" "$DEST_DIR/" + fi + ;; + *) + # darwin: 단일 실행 바이너리 + cp "$TMP/$ASSET" "$DEST_DIR/ollama" + chmod +x "$DEST_DIR/ollama" + ;; +esac echo "Ollama 설치 완료: $DEST_DIR"