summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-08-23 21:43:22 -0500
committerroot <root@alpha.trunkmasters.com>2026-08-23 21:43:22 -0500
commitbd212c316cf95a827cf5c287650b4dc50d44ebc9 (patch)
tree02cc6cb1b7d9112d3ab6bf1f29615587a27189db /dev-util
parentcdcbdbc2768a2b227ed7d980ebcec51a492bd53f (diff)
downloadbaldeagleos-repo-bd212c316cf95a827cf5c287650b4dc50d44ebc9.tar.gz
baldeagleos-repo-bd212c316cf95a827cf5c287650b4dc50d44ebc9.tar.xz
baldeagleos-repo-bd212c316cf95a827cf5c287650b4dc50d44ebc9.zip
Adding metadata
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/codex/Manifest5
-rw-r--r--dev-util/codex/codex-0.139.0.ebuild154
-rw-r--r--dev-util/codex/codex-0.149.0.ebuild2
3 files changed, 159 insertions, 2 deletions
diff --git a/dev-util/codex/Manifest b/dev-util/codex/Manifest
index 9bc80b5b44e8..dfd0f6821b84 100644
--- a/dev-util/codex/Manifest
+++ b/dev-util/codex/Manifest
@@ -1,7 +1,10 @@
DIST cloudflare-zlib-sys-0.3.6.crate 147199 BLAKE2B b7089d328048b838fd9003f14cd9bddb720507a3426bd3a99ab70aa32dabee44078d6e9f9cc0171d7674ebf084fdd60776063e6976d5bd9ae61b2943c94c00d1 SHA512 c0064ab7dda47088450b3abd0ac12981e1db44564e7acf03af0836f9a9c54310cac5f93dd0cbc64c32749ea9cfe899ead81533f630dd00f5e29e9c6ef7150e6e
+DIST codex-0.139.0.tar.gz 8504781 BLAKE2B 1e2afd3cd83f0fca38169e9761b39e2a3fec3ca2524e89ce0860013f19a8aa7af37dfa61ddefd70d5e379dc235d66a19b91d659fa15d08af29a5754bf1d2305d SHA512 d923968f9a0d0d7d4fe085fb8c14aed5628bd682fc6685cd731127d41a8a846478f91d9e3c074a4fe0c83919fd0e1c3666e9bffc17aa277ba49d8063d6fd169b
DIST codex-0.149.0.tar.gz 12118986 BLAKE2B 34067f32a75e29106fba7500be2f74b27ddd9405baa1a60c84d21a025157193bc057f86e5337071787c6b008f2b5df1f3c13e9345d401dde96d4426784feaf7a SHA512 d7e7262cbf5a3d897385a1a8679b28be73017580abef878a1475b4b28fe22cd9538458e61ac8b4178e7580618b4eef14da0522b4b073e8b09615a9d303674b19
+DIST codex-rust-v0.139.0-crates.tar.xz 121089128 BLAKE2B 7df8955f20e3b6ba5ab9e29aff78b6575d38c57f44b97866a74fa8c2204dbdc2daa767711f0b325eb5f286ded104bf6fdbc763acfc5eae4078fbcc3794f06b98 SHA512 83c391afb959521483a0640a4f9fbef63ed0d19ba89015fb5b7a0544cc2de30b0c32d806b84e3ff627dd7fc0c39aed5f6b55c7dcfd728b61267440b9114c87a6
DIST codex-rust-v0.149.0-crates.tar.xz 132472572 BLAKE2B 04857da60bd97112a7ee22a6248bbd3a61649b805c6fb7e6a479ac92384746a28871e8caffc3c3e007b77a93d9b81dce66fd1dc1e4c0f271912fbacb5cb00cc7 SHA512 ec4b3602701ac691953c5ac095472504e1aacf957343a0ec2dbf78ab33f6b0e41a6be033ea30ae68b1bd953f7afcafa696303f73b4af1fcfcca71c6c5ddb3a65
-DIST crossterm-f69a4a0499f2fdc7d5d222df32373ffffe9ba3f5.gh.tar.gz 135086 BLAKE2B a9a4ec3b3702f42f838b60a83f204f0b136fbf0c8edd3648cb42c70d09a33fb431395e7739fca0af06a7d1091d41cc261ce3e14a159cbd2ec6e5688463c2df5d SHA512 223bb495075668436414530209400033cde83b059212edada6c0a17d0d84d43d180a077b4f75a2fdd98f7287c8a532bbb1fb8982b3f5a7385179cc6cf7e3eee9
+DIST crossterm-45fecb9508105988f42fe6ff0441783ed3717f92.gh.tar.gz 144786 BLAKE2B 18577acd2586a50723657e77b304d7bd309208d7ce597d315d13d7e36c90ac08f15510053ad1e927798b0edabc75fc8e54f1f2ac4978215084c0cf84573193e8 SHA512 aa5fd475a306000032fa0a68c758d81056920c68fd001ce632e0fbc11d70efd37def5786a677f3f4cd2e17b76672eda6bb53a517ba90a18e8dc312c390987786
+DIST crossterm-87db8bfa6dc99427fd3b071681b07fc31c6ce995.gh.tar.gz 129254 BLAKE2B 414dacc3a682c7a6dc5c9e43f185966255205d18f0522ee7eae73b5f113b4c3ea9b132e6dee81783d4ce160e4bf95aab784cf3601d666265bef4f889d5e46e68 SHA512 9dc7247d081a25d18776c9c0fd7fe3373f372950728b7fcf5ff43aaa6f7d69f11e1dbd91f92991cbe73007eb9e78c9a901b2388c27ddd6898553fdcef7fdaf44
DIST libz-ng-sys-1.1.16.crate 478122 BLAKE2B 7c1be97251029732cd3a8c77dad8a492193282b5fddf40df480ef3a35a49f5d25c7dc183d81aa267722276156c8b97243742117686d078f2d3a566546fa83d58 SHA512 c7d1b062a06b283ee2d398ff456f13634ed1d2d436ea2b8a55f19fbbad47bc419e068b0f9e805221321062b8c5ad309dd3e5d466741780549ae3e5299eee06e1
DIST libz-sys-1.1.20.crate 830422 BLAKE2B 26265b1faf04f7d0cfd751ddf003585b1be59fcf8fde3ddfd86f18cc3e2d5c3b62a808f47c01329a57759d14fe6283cd94a72eda46d5c5031249df0f1696ab03 SHA512 9b537e7c01553e782be145223c6d174601ade3a950bfd0eb4ea09658da5b8910cf0d0c5984672f9d198f73d5aa63d21e0c20c4c44ff7d0a017ee11ae4ecf4859
DIST nucleo-4253de9faabb4e5c6d81d946a5e35a90f87347ee.gh.tar.gz 86782 BLAKE2B a812a2d2f08df818ac7b13b800f51c4229ea1f968668b1224fbc1fd82fb4e045f6b2c536ec6d2647a579097efbddaf041f4b7b356107679156aaa3ca5a9d4068 SHA512 354061278efce55defb30b9ee2ef5cdab745ab56d7d113f6f47a8ac174b4215ec6efe15c15bef0e3d907350182c0d189071e9d7d17d40e807d4db5361682f4e0
diff --git a/dev-util/codex/codex-0.139.0.ebuild b/dev-util/codex/codex-0.139.0.ebuild
new file mode 100644
index 000000000000..6aa69863ccab
--- /dev/null
+++ b/dev-util/codex/codex-0.139.0.ebuild
@@ -0,0 +1,154 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# NOTE: This package uses a pre-built crate tarball instead of listing individual
+# crates in CRATES="". This approach is required because:
+# 1. Codex has 800+ crate dependencies, which triggers Portage QA warnings:
+# "QA Notice: This package uses a very large number of CRATES. Please provide
+# a crate tarball instead and fetch it via SRC_URI."
+# 2. Stricter ebuild QA checks (e.g., in CI pipelines) fail with too many crates.
+#
+# The crate tarball is auto-generated by GitHub Actions at:
+# https://github.com/gentoo-zh-drafts/codex/
+# Workflow source code for auditing:
+# https://github.com/gentoo-zh-drafts/codex/blob/crate-dist/.github/workflows/crates.yml
+# This allows anyone to review and verify the crate packaging process.
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [crossterm]='https://github.com/nornagon/crossterm;87db8bfa6dc99427fd3b071681b07fc31c6ce995;crossterm-%commit%'
+ [libwebrtc]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/libwebrtc'
+ [livekit-protocol]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/livekit-protocol'
+ [livekit-runtime]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/livekit-runtime'
+ [nucleo-matcher]='https://github.com/helix-editor/nucleo;4253de9faabb4e5c6d81d946a5e35a90f87347ee;nucleo-%commit%/matcher'
+ [nucleo]='https://github.com/helix-editor/nucleo;4253de9faabb4e5c6d81d946a5e35a90f87347ee;nucleo-%commit%'
+ [ratatui]='https://github.com/nornagon/ratatui;9b2ad1298408c45918ee9f8241a6f95498cdbed2;ratatui-%commit%'
+ [runfiles]='https://github.com/dzbarsky/rules_rust;b56cbaa8465e74127f1ea216f813cd377295ad81;rules_rust-%commit%/rust/runfiles'
+ [tokio-tungstenite]='https://github.com/openai-oss-forks/tokio-tungstenite;132f5b39c862e3a970f731d709608b3e6276d5f6;tokio-tungstenite-%commit%'
+ [tungstenite]='https://github.com/openai-oss-forks/tungstenite-rs;9200079d3b54a1ff51072e24d81fd354f085156f;tungstenite-rs-%commit%'
+ [webrtc-sys-build]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/webrtc-sys/build'
+ [webrtc-sys]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/webrtc-sys'
+)
+
+RUST_MIN_VER="1.95.0"
+
+# python3 .github/scripts/rusty_v8_bazel.py resolved-v8-crate-version
+RUSTY_V8_TAG="147.4.0"
+
+inherit cargo check-reqs toolchain-funcs
+
+CHECKREQS_MEMORY="15G"
+CHECKREQS_DISK_BUILD="20G"
+
+DESCRIPTION="Codex CLI - OpenAI's AI-powered coding agent"
+HOMEPAGE="https://github.com/openai/codex"
+
+# The crate tarball URL uses ${PV} so it auto-updates when bumping versions.
+# This tarball is generated by: https://github.com/gentoo-zh-drafts/codex/
+# See .github/workflows/crates.yml for the generation process.
+SRC_URI="
+ https://github.com/openai/${PN}/archive/rust-v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/gentoo-zh-drafts/codex/releases/download/rust-v${PV}/codex-rust-v${PV}-crates.tar.xz
+ amd64? (
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/librusty_v8_release_x86_64-unknown-linux-musl.a.gz
+ -> rusty_v8_${RUSTY_V8_TAG}_librusty_v8_release_x86_64-unknown-linux-musl.a.gz
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/src_binding_release_x86_64-unknown-linux-musl.rs
+ -> rusty_v8_${RUSTY_V8_TAG}_src_binding_release_x86_64-unknown-linux-musl.rs
+ )
+ arm64? (
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/librusty_v8_release_aarch64-unknown-linux-musl.a.gz
+ -> rusty_v8_${RUSTY_V8_TAG}_librusty_v8_release_aarch64-unknown-linux-musl.a.gz
+ https://github.com/openai/codex/releases/download/rusty-v8-v${RUSTY_V8_TAG}/src_binding_release_aarch64-unknown-linux-musl.rs
+ -> rusty_v8_${RUSTY_V8_TAG}_src_binding_release_aarch64-unknown-linux-musl.rs
+ )
+ ${CARGO_CRATE_URIS}
+"
+
+S="${WORKDIR}/${PN}-rust-v${PV}/codex-rs"
+
+LICENSE="Apache-2.0"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD Boost-1.0
+ CC0-1.0 CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 ZLIB
+"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+# Tests fail due to ring crate conflicts with system OpenSSL
+RESTRICT="test"
+
+DEPEND="
+ dev-libs/openssl:=
+ sys-apps/dbus
+"
+RDEPEND="${DEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+# rust does not use *FLAGS from make.conf, silence portage warning
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+pkg_pretend() {
+ check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ check-reqs_pkg_setup
+ rust_pkg_setup
+ if tc-is-lto; then
+ export CARGO_PROFILE_RELEASE_LTO=thin
+ else
+ export CARGO_PROFILE_RELEASE_LTO=false
+ fi
+}
+
+gen_git_crate_dir() {
+ # https://github.com/gentoo/gentoo/blob/b09dd88412fe2d5eee5a8891e08bfa2d67848da3/eclass/cargo.eclass#L442
+ IFS=';' read -r crate_uri commit crate_dir <<<"${GIT_CRATES[$1]}"
+ echo "${WORKDIR}/${crate_dir//%commit%/${commit}}"
+}
+
+src_prepare() {
+ default
+
+ # Fix tokio-tungstenite's git dependency on tungstenite
+ sed -i '/^\[dependencies\.tungstenite\]/,/^$/{
+ s|git = "https://github.com/openai-oss-forks/tungstenite-rs"|path = "'"$(gen_git_crate_dir tungstenite)"'"|
+ /^rev = /d
+ }' "$(gen_git_crate_dir tokio-tungstenite)/Cargo.toml" || die
+
+ # Remove the [patch.crates-io] section and add path-based patches
+ sed -i '/^\[patch\.crates-io\]/,/^$/d' "${S}/Cargo.toml" || die
+ sed -i '/^\[patch\."ssh:\/\/git@github\.com/,/^$/d' "${S}/Cargo.toml" || die
+
+ # Add new patch section with local paths
+ cat >> "${S}/Cargo.toml" <<-EOF || die
+
+ [patch.crates-io]
+ crossterm = { path = "$(gen_git_crate_dir crossterm)" }
+ ratatui = { path = "$(gen_git_crate_dir ratatui)" }
+ tokio-tungstenite = { path = "$(gen_git_crate_dir tokio-tungstenite)" }
+ tungstenite = { path = "$(gen_git_crate_dir tungstenite)" }
+ EOF
+}
+
+src_compile() {
+ local rusty_v8_triple
+ use amd64 && rusty_v8_triple=x86_64-unknown-linux-musl
+ use arm64 && rusty_v8_triple=aarch64-unknown-linux-musl
+
+ # codex-core trait resolution overflows rustc's default 8MiB stack
+ export RUST_MIN_STACK=16777216
+
+ RUSTY_V8_ARCHIVE="${DISTDIR}/rusty_v8_${RUSTY_V8_TAG}_librusty_v8_release_${rusty_v8_triple}.a.gz" \
+ RUSTY_V8_SRC_BINDING_PATH="${DISTDIR}/rusty_v8_${RUSTY_V8_TAG}_src_binding_release_${rusty_v8_triple}.rs" \
+ cargo_src_compile --package codex-cli
+}
+
+src_install() {
+ dobin "$(cargo_target_dir)/codex"
+ einstalldocs
+}
diff --git a/dev-util/codex/codex-0.149.0.ebuild b/dev-util/codex/codex-0.149.0.ebuild
index eacaf6c29069..63b651f7851d 100644
--- a/dev-util/codex/codex-0.149.0.ebuild
+++ b/dev-util/codex/codex-0.149.0.ebuild
@@ -23,7 +23,7 @@ CRATES="
"
declare -A GIT_CRATES=(
- [crossterm]='https://github.com/openai-oss-forks/crossterm;f69a4a0499f2fdc7d5d222df32373ffffe9ba3f5;crossterm-%commit%'
+ [crossterm]='https://github.com/openai-oss-forks/crossterm;45fecb9508105988f42fe6ff0441783ed3717f92;crossterm-%commit%'
[libwebrtc]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/libwebrtc'
[livekit-protocol]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/livekit-protocol'
[livekit-runtime]='https://github.com/juberti-oai/rust-sdks;e2d1d1d230c6fc9df171ccb181423f957bb3c1f0;rust-sdks-%commit%/livekit-runtime'