Deploy: exdev sync 2026-08-03 13:59:26

This commit is contained in:
Macbook
2026-08-03 13:59:26 +09:00
parent 39f41d90b0
commit 62604fe1b7
19 changed files with 6505 additions and 10 deletions
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
<true/>
</dict>
</plist>
@@ -0,0 +1,36 @@
EX AI Chatbot — Mac 설치 안내
================================
이 패키지는 Apple 공증(notarization)이 없는 사내/개발용 빌드입니다.
Chrome 등으로 받은 뒤 앱을 바로 열면
「손상되었기 때문에 열 수 없습니다」가 뜰 수 있습니다.
(포터블 zip의 「실행하기.command」는 이 문제를 자동으로 피합니다.)
────────────────────────────────
A. 설치 파일 (.dmg) — 반드시 아래 순서
────────────────────────────────
1. dmg를 연다
2. 「응용 프로그램에 설치하고 실행.command」를 더블클릭
→ Applications에 설치 + 검역 속성 제거 + 실행까지 한 번에 처리
3. (대안) 앱을 Applications로 드래그한 뒤, 아래 C. 터미널 명령을 실행
※ Applications의 앱을 더블클릭만 하면 macOS가 다시 차단할 수 있습니다.
처음 한 번은 반드시 「설치하고 실행.command」또는 터미널(xattr)을 사용하세요.
────────────────────────────────
B. 포터블 (.zip)
────────────────────────────────
1. zip 압축 해제
2. 「실행하기.command」를 더블클릭
3. 차단되면 아래 「터미널 설치」를 사용
────────────────────────────────
C. 터미널 설치 (손상됨 / 차단될 때)
────────────────────────────────
1. Spotlight(⌘+스페이스) → 「터미널」실행
2. 챗봇 설정 화면의 「Mac 설치 명령 복사」붙여넣기(⌘+V) 후 Enter
직접 입력 (Applications에 넣은 경우):
xattr -cr "/Applications/EX AI Chatbot.app" && open "/Applications/EX AI Chatbot.app"
Apple Silicon → mac-silicon / Intel → mac-intel 파일을 받으세요.
@@ -0,0 +1,18 @@
#!/bin/bash
# 주의: 웹에서 받은 .command 는 macOS가 같이 차단할 수 있습니다.
# 차단되면 「설치안내.txt」의 터미널 방법을 사용하세요.
set -euo pipefail
cd "$(dirname "$0")"
APP="EX AI Chatbot.app"
if [[ ! -d "${APP}" ]]; then
osascript -e 'display dialog "같은 폴더에 「EX AI Chatbot.app」이 없습니다.\n압축을 해제한 뒤, 차단되면 터미널 설치 방법을 사용하세요.\n(설치안내.txt 참고)" buttons {"확인"} default button 1 with title "EX AI Chatbot"' >/dev/null 2>&1 || true
exit 1
fi
# 자기 자신·앱 검역 제거 시도 (권한이 되면 성공)
xattr -cr . 2>/dev/null || true
xattr -cr "${APP}" 2>/dev/null || true
open "${APP}"
@@ -0,0 +1,25 @@
#!/bin/bash
# DMG에서 실행: Applications로 복사 + Gatekeeper 검역 제거 후 실행
# (미서명 빌드에서 「손상되었기 때문에 열 수 없습니다」 방지)
set -euo pipefail
cd "$(dirname "$0")"
APP_NAME="EX AI Chatbot.app"
SRC="$(pwd)/${APP_NAME}"
DEST="/Applications/${APP_NAME}"
if [[ ! -d "${SRC}" ]]; then
osascript -e 'display dialog "같은 디스크에 「EX AI Chatbot.app」이 없습니다.\ndmg 창에서 이 스크립트를 실행해 주세요." buttons {"확인"} default button 1 with title "EX AI Chatbot"' >/dev/null 2>&1 || true
exit 1
fi
# 기존 설치 교체
rm -rf "${DEST}"
cp -R "${SRC}" "${DEST}"
# 다운로드/복사로 붙은 quarantine 제거 (손상됨 팝업 핵심 해결)
xattr -cr "${DEST}" 2>/dev/null || true
open "${DEST}"
osascript -e 'display dialog "응용 프로그램에 설치하고 실행했습니다.\n다음에 실행할 때는 Launchpad 또는 응용 프로그램 폴더의 「EX AI Chatbot」을 사용하세요." buttons {"확인"} default button 1 with title "EX AI Chatbot"' >/dev/null 2>&1 || true