CoolFace
Apppublic

xmeta-dev/agent-base

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
0likes
install-codex.sh43 linesDownload Raw Back to scripts
1#!/bin/sh2set -e3 4# ============================================================5# Codex CLI 安装脚本6# 安装 OpenAI Codex CLI - 本地运行的编码智能体7# 依赖: curl, ca-certificates8#9# 在部分 Linux 环境(含 Debian 12)上,官方安装器可能错误地将目标10# 三元组检测为 *-linux-musl,但其 SHA256SUMS 文件只有 *-linux-gnu11# 的摘要,导致校验失败。本脚本通过先下载、再修正检测逻辑来解决。12# ============================================================13 14echo ">>> Installing Codex CLI ..."15 16INSTALLER_URL="https://chatgpt.com/codex/install.sh"17INSTALLER_PATH="/tmp/codex-install.sh"18 19echo "==> Downloading official installer from ${INSTALLER_URL} ..."20curl -fsSL -o "${INSTALLER_PATH}" "${INSTALLER_URL}"21 22# 在 Linux 上修正目标三元组检测:23# - 对于 x86_64 / aarch64 Linux, 将 musl → gnu24# - 具体做法是替换 shell 检测 libc 的表达式,强制结果为 gnu25case "$(uname -s)" in26    Linux)27        echo "==> Patching installer for Linux (force gnu target) ..."28        # 替换形如: ldd --version 2>&1 | grep -q musl && echo musl || echo gnu29        # 为直接输出 gnu30        sed -i 's/ldd --version 2>\&1 | grep -qi musl.*/echo "gnu"/i' "${INSTALLER_PATH}"31        # 也处理单引号版本或缺失 -q 的情况32        sed -i 's/grep.*[Mm][Uu][Ss][Ll].*echo "musl"/echo "gnu"/g' "${INSTALLER_PATH}"33        sed -i 's/grep.*[Mm][Uu][Ss][Ll].*echo musl/echo gnu/g' "${INSTALLER_PATH}"34        # 替换任何直接赋值为 musl 的变量35        sed -i 's/="musl"/="gnu"/g' "${INSTALLER_PATH}"36        ;;37esac38 39echo "==> Running patched installer ..."40sh "${INSTALLER_PATH}"41 42echo ">>> Codex CLI installation completed."43