Spaces:
Running
Running
Update start.sh
Browse files
start.sh
CHANGED
|
@@ -3,13 +3,11 @@ set -euo pipefail
|
|
| 3 |
|
| 4 |
PORT="${PORT:-7860}"
|
| 5 |
|
| 6 |
-
# code-server 登录密码:必须在 HF Secrets 里配置
|
| 7 |
if [[ -z "${PASSWORD:-}" && -z "${HASHED_PASSWORD:-}" ]]; then
|
| 8 |
echo "[ERROR] Missing PASSWORD/HASHED_PASSWORD secret."
|
| 9 |
exit 1
|
| 10 |
fi
|
| 11 |
|
| 12 |
-
# Hugging Face 持久化目录支持
|
| 13 |
if [[ -d "/data" ]]; then
|
| 14 |
WORKDIR="/data/workspace"
|
| 15 |
EXT_DIR="/data/code-server/extensions"
|
|
@@ -24,9 +22,7 @@ fi
|
|
| 24 |
|
| 25 |
mkdir -p "$WORKDIR" "$EXT_DIR" "$USER_DATA_DIR" "${HOME}/.config/code-server" "$CODEX_DIR"
|
| 26 |
|
| 27 |
-
# -
|
| 28 |
-
# code-server 配置
|
| 29 |
-
# -------------------------
|
| 30 |
cat > "${HOME}/.config/code-server/config.yaml" <<EOF
|
| 31 |
bind-addr: 0.0.0.0:${PORT}
|
| 32 |
auth: password
|
|
@@ -39,9 +35,7 @@ else
|
|
| 39 |
echo "password: ${PASSWORD}" >> "${HOME}/.config/code-server/config.yaml"
|
| 40 |
fi
|
| 41 |
|
| 42 |
-
#
|
| 43 |
-
# Codex config.toml(默认使用你给的配置)
|
| 44 |
-
# -------------------------
|
| 45 |
: "${CODEX_MODEL_PROVIDER:=sub2api}"
|
| 46 |
: "${CODEX_MODEL:=gpt-5.3-codex}"
|
| 47 |
: "${CODEX_REASONING_EFFORT:=high}"
|
|
@@ -71,9 +65,7 @@ wire_api = "${CODEX_WIRE_API}"
|
|
| 71 |
requires_openai_auth = ${CODEX_REQUIRES_OPENAI_AUTH}
|
| 72 |
EOF
|
| 73 |
|
| 74 |
-
#
|
| 75 |
-
# Codex auth.json(只从 Secrets 生成,不要写死到仓库)
|
| 76 |
-
# -------------------------
|
| 77 |
if [[ -n "${CODEX_AUTH_JSON:-}" ]]; then
|
| 78 |
printf '%s\n' "${CODEX_AUTH_JSON}" > "${CODEX_DIR}/auth.json"
|
| 79 |
elif [[ -n "${OPENAI_API_KEY:-}" ]]; then
|
|
@@ -89,7 +81,6 @@ fi
|
|
| 89 |
chmod 600 "${CODEX_DIR}/config.toml" 2>/dev/null || true
|
| 90 |
chmod 600 "${CODEX_DIR}/auth.json" 2>/dev/null || true
|
| 91 |
|
| 92 |
-
# 若走 /data,软链到 ~/.codex
|
| 93 |
if [[ "${CODEX_DIR}" != "${HOME}/.codex" ]]; then
|
| 94 |
rm -rf "${HOME}/.codex"
|
| 95 |
ln -s "${CODEX_DIR}" "${HOME}/.codex"
|
|
@@ -104,4 +95,6 @@ echo "[INFO] g++: $(g++ --version | head -n1 || true)"
|
|
| 104 |
exec code-server "$WORKDIR" \
|
| 105 |
--extensions-dir "$EXT_DIR" \
|
| 106 |
--user-data-dir "$USER_DATA_DIR" \
|
| 107 |
-
--disable-telemetry
|
|
|
|
|
|
|
|
|
| 3 |
|
| 4 |
PORT="${PORT:-7860}"
|
| 5 |
|
|
|
|
| 6 |
if [[ -z "${PASSWORD:-}" && -z "${HASHED_PASSWORD:-}" ]]; then
|
| 7 |
echo "[ERROR] Missing PASSWORD/HASHED_PASSWORD secret."
|
| 8 |
exit 1
|
| 9 |
fi
|
| 10 |
|
|
|
|
| 11 |
if [[ -d "/data" ]]; then
|
| 12 |
WORKDIR="/data/workspace"
|
| 13 |
EXT_DIR="/data/code-server/extensions"
|
|
|
|
| 22 |
|
| 23 |
mkdir -p "$WORKDIR" "$EXT_DIR" "$USER_DATA_DIR" "${HOME}/.config/code-server" "$CODEX_DIR"
|
| 24 |
|
| 25 |
+
# code-server config
|
|
|
|
|
|
|
| 26 |
cat > "${HOME}/.config/code-server/config.yaml" <<EOF
|
| 27 |
bind-addr: 0.0.0.0:${PORT}
|
| 28 |
auth: password
|
|
|
|
| 35 |
echo "password: ${PASSWORD}" >> "${HOME}/.config/code-server/config.yaml"
|
| 36 |
fi
|
| 37 |
|
| 38 |
+
# Codex config.toml
|
|
|
|
|
|
|
| 39 |
: "${CODEX_MODEL_PROVIDER:=sub2api}"
|
| 40 |
: "${CODEX_MODEL:=gpt-5.3-codex}"
|
| 41 |
: "${CODEX_REASONING_EFFORT:=high}"
|
|
|
|
| 65 |
requires_openai_auth = ${CODEX_REQUIRES_OPENAI_AUTH}
|
| 66 |
EOF
|
| 67 |
|
| 68 |
+
# Codex auth.json
|
|
|
|
|
|
|
| 69 |
if [[ -n "${CODEX_AUTH_JSON:-}" ]]; then
|
| 70 |
printf '%s\n' "${CODEX_AUTH_JSON}" > "${CODEX_DIR}/auth.json"
|
| 71 |
elif [[ -n "${OPENAI_API_KEY:-}" ]]; then
|
|
|
|
| 81 |
chmod 600 "${CODEX_DIR}/config.toml" 2>/dev/null || true
|
| 82 |
chmod 600 "${CODEX_DIR}/auth.json" 2>/dev/null || true
|
| 83 |
|
|
|
|
| 84 |
if [[ "${CODEX_DIR}" != "${HOME}/.codex" ]]; then
|
| 85 |
rm -rf "${HOME}/.codex"
|
| 86 |
ln -s "${CODEX_DIR}" "${HOME}/.codex"
|
|
|
|
| 95 |
exec code-server "$WORKDIR" \
|
| 96 |
--extensions-dir "$EXT_DIR" \
|
| 97 |
--user-data-dir "$USER_DATA_DIR" \
|
| 98 |
+
--disable-telemetry \
|
| 99 |
+
--disable-update-check \
|
| 100 |
+
--log warning
|