From 117a588df815bc94e8d8ce15cc0ad27fd2a09b4d Mon Sep 17 00:00:00 2001 From: Macbook Date: Sun, 14 Jun 2026 11:26:46 +0900 Subject: [PATCH] =?UTF-8?q?desktop=20=EC=95=B1=20=EC=8B=A4=ED=96=89?= =?UTF-8?q?=EC=8B=9C=20=EC=A2=85=EB=A3=8C=EB=AC=B8=EC=A0=9C=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- desktop/README.md | 10 ++++++++++ desktop/src-tauri/tauri.conf.json | 2 +- scripts/generate-desktop-latest-json.mjs | 4 ++-- scripts/jenkins-desktop-pipeline.sh | 2 +- scripts/prepare-tauri-build.sh | 6 ++++-- scripts/publish-desktop-update.sh | 2 +- scripts/server-install-desktop-jenkins.sh | 2 +- scripts/smoke-test-desktop.sh | 2 +- 8 files changed, 21 insertions(+), 9 deletions(-) mode change 100644 => 100755 scripts/prepare-tauri-build.sh diff --git a/desktop/README.md b/desktop/README.md index 9901fe4..c990d54 100644 --- a/desktop/README.md +++ b/desktop/README.md @@ -60,6 +60,16 @@ export APPLE_TEAM_ID="..." 公証까지 완료되면 Gatekeeper 경고 없이 설치됩니다. +#### 실행 직후 바로 종료되는 경우 + +구버전 dmg(0.1.1 이전)는 Tauri updater가 `http://` 엔드포인트를 release 빌드에서 거부해 **시작 즉시 panic**합니다. +**최신 dmg를 다시 빌드·다운로드**하세요. 터미널에서 확인: + +```bash +/Applications/GoldenChart.app/Contents/MacOS/goldenchart-desktop +# InsecureTransportProtocol / updater 오류 → dmg 재설치 필요 +``` + ## 주요 기능 - **위젯 OS 창**: `WebviewWindow` + `widget.html` diff --git a/desktop/src-tauri/tauri.conf.json b/desktop/src-tauri/tauri.conf.json index 8364b36..98ca7f3 100644 --- a/desktop/src-tauri/tauri.conf.json +++ b/desktop/src-tauri/tauri.conf.json @@ -52,7 +52,7 @@ "plugins": { "updater": { "endpoints": [ - "http://exdev.co.kr/desktop/updates/latest.json" + "https://exdev.co.kr/desktop/updates/latest.json" ], "pubkey": "REPLACE_WITH_TAURI_SIGNER_PUBKEY" } diff --git a/scripts/generate-desktop-latest-json.mjs b/scripts/generate-desktop-latest-json.mjs index fa91008..a276856 100644 --- a/scripts/generate-desktop-latest-json.mjs +++ b/scripts/generate-desktop-latest-json.mjs @@ -6,7 +6,7 @@ * node scripts/generate-desktop-latest-json.mjs \ * --version 0.1.0 \ * --dir dist-desktop/updates \ - * --base-url http://exdev.co.kr/desktop/updates \ + * --base-url https://exdev.co.kr/desktop/updates \ * --notes "Release notes" */ import fs from 'node:fs'; @@ -19,7 +19,7 @@ function arg(name, fallback) { const version = arg('--version', '0.1.0'); const dir = path.resolve(arg('--dir', 'dist-desktop/updates')); -const baseUrl = (arg('--base-url', 'http://exdev.co.kr/desktop/updates')).replace(/\/$/, ''); +const baseUrl = (arg('--base-url', 'https://exdev.co.kr/desktop/updates')).replace(/\/$/, ''); const notes = arg('--notes', `GoldenChart Desktop ${version}`); if (!fs.existsSync(dir)) { diff --git a/scripts/jenkins-desktop-pipeline.sh b/scripts/jenkins-desktop-pipeline.sh index 7f31c49..61157a4 100755 --- a/scripts/jenkins-desktop-pipeline.sh +++ b/scripts/jenkins-desktop-pipeline.sh @@ -55,7 +55,7 @@ fi WORK_TREE="$WORK_TREE" \ ARTIFACT_DIR="$ROOT/dist-desktop" \ -DESKTOP_UPDATE_BASE_URL="${DESKTOP_UPDATE_BASE_URL:-http://exdev.co.kr/desktop/updates}" \ +DESKTOP_UPDATE_BASE_URL="${DESKTOP_UPDATE_BASE_URL:-https://exdev.co.kr/desktop/updates}" \ TAURI_SIGNER_KEY="${TAURI_SIGNER_KEY:-$HOME/.tauri/goldenchart.key}" \ DESKTOP_RELEASE_NOTES="${DESKTOP_RELEASE_NOTES:-Build ${BUILD_NUMBER:-local}}" \ "$ROOT/scripts/publish-desktop-update.sh" diff --git a/scripts/prepare-tauri-build.sh b/scripts/prepare-tauri-build.sh old mode 100644 new mode 100755 index d02000c..1f2905e --- a/scripts/prepare-tauri-build.sh +++ b/scripts/prepare-tauri-build.sh @@ -24,8 +24,10 @@ conf.bundle = conf.bundle || {}; conf.bundle.createUpdaterArtifacts = enable; conf.plugins = conf.plugins || {}; conf.plugins.updater = conf.plugins.updater || {}; -if (!conf.plugins.updater.endpoints?.length) { - conf.plugins.updater.endpoints = ['http://exdev.co.kr/desktop/updates/latest.json']; +conf.plugins.updater.endpoints = (conf.plugins.updater.endpoints || []) + .map((u) => String(u).replace(/^http:\\/\\/exdev\\.co\\.kr\\//, 'https://exdev.co.kr/')); +if (!conf.plugins.updater.endpoints.length) { + conf.plugins.updater.endpoints = ['https://exdev.co.kr/desktop/updates/latest.json']; } if (!conf.plugins.updater.pubkey) { conf.plugins.updater.pubkey = 'REPLACE_WITH_TAURI_SIGNER_PUBKEY'; diff --git a/scripts/publish-desktop-update.sh b/scripts/publish-desktop-update.sh index ef8dcb7..956dcb4 100755 --- a/scripts/publish-desktop-update.sh +++ b/scripts/publish-desktop-update.sh @@ -7,7 +7,7 @@ ARTIFACT_DIR="${ARTIFACT_DIR:-$ROOT/dist-desktop}" UPDATES_SRC="${UPDATES_SRC:-$ARTIFACT_DIR/updates}" UPDATES_DIR="${UPDATES_DIR:-${WORK_TREE:-$ROOT}/frontend/public/desktop/updates}" WEB_STATIC_DIR="${WEB_STATIC_DIR:-$UPDATES_DIR}" -BASE_URL="${DESKTOP_UPDATE_BASE_URL:-http://exdev.co.kr/desktop/updates}" +BASE_URL="${DESKTOP_UPDATE_BASE_URL:-https://exdev.co.kr/desktop/updates}" DESKTOP_RELEASE_DIR="${GC_DESKTOP_APP_RELEASE_DIR:-$ROOT/data/desktop-releases}" KEY_PATH="${TAURI_SIGNER_KEY:-$HOME/.tauri/goldenchart.key}" DESKTOP_DIR="$ROOT/desktop" diff --git a/scripts/server-install-desktop-jenkins.sh b/scripts/server-install-desktop-jenkins.sh index 7c176b7..c414901 100755 --- a/scripts/server-install-desktop-jenkins.sh +++ b/scripts/server-install-desktop-jenkins.sh @@ -57,7 +57,7 @@ export BUILD_NUMBER="\${BUILD_NUMBER}" export TAURI_SIGNER_KEY="\${TAURI_SIGNER_KEY:-\$HOME/.tauri/goldenchart.key}" export DESKTOP_BUMP_ON_CI=1 export DESKTOP_DEPLOY_WEB=0 -export DESKTOP_UPDATE_BASE_URL="${DESKTOP_UPDATE_BASE_URL:-http://exdev.co.kr/desktop/updates}" +export DESKTOP_UPDATE_BASE_URL="${DESKTOP_UPDATE_BASE_URL:-https://exdev.co.kr/desktop/updates}" "${WORK_TREE}/scripts/jenkins-desktop-pipeline.sh" diff --git a/scripts/smoke-test-desktop.sh b/scripts/smoke-test-desktop.sh index 6afe300..2925be4 100755 --- a/scripts/smoke-test-desktop.sh +++ b/scripts/smoke-test-desktop.sh @@ -3,7 +3,7 @@ set -euo pipefail ROOT="$(cd "$(dirname "$0")/.." && pwd)" -BASE_URL="${DESKTOP_UPDATE_BASE_URL:-http://exdev.co.kr/desktop/updates}" +BASE_URL="${DESKTOP_UPDATE_BASE_URL:-https://exdev.co.kr/desktop/updates}" FAIL=0 ok() { echo "[OK] $*"; }