This document records the current licensing and release posture for making the repository public and for shipping public release artifacts.
For the fork-rationale document that explains why this repository diverges from
upstream openai/codex, see fork-intent.md.
Current intent: this is a publicly available source repository. Official public Linux binary releases are not currently provided by this document.
There are two separate compliance questions:
- Can the source repository be public?
- Can we distribute public binaries built from this repository?
The answer to the first is mostly a documentation and attribution question. The answer to the second also depends on what third-party code is compiled into the released artifacts.
Repository-authored code is licensed under Apache-2.0, unless a particular file or bundled third-party subtree states otherwise.
The root NOTICE file and license.md document the non-Apache material currently kept in-tree.
The repository currently includes the following notable third-party materials:
- Ratatui-derived file in
codex-rs/tui/src/custom_terminal.rs, with inline MIT notices. - WezTerm-derived Windows PTY files in
codex-rs/utils/pty/src/win/, with inline MIT notices and local-modification notes. - A bundled Meriyah parser asset at
codex-rs/core/src/tools/js_repl/meriyah.umd.min.js, with its license kept atthird_party/meriyah/LICENSE. - A vendored bubblewrap source tree at
codex-rs/vendor/bubblewrap, underLGPL-2.0-or-later.
For a public source repository, the baseline requirements are:
- Keep the root
LICENSEfile. - Keep the root
NOTICEfile accurate when new bundled third-party material is added or removed. - Preserve inline notices on copied or derived files.
- Keep bundled third-party license texts in-tree when referenced by shipped assets.
- Continue running
cargo deny check licensesfor the Rust workspace.
This repository currently meets that baseline more cleanly than before, but it still requires release discipline when third-party code is updated.
Binary distribution needs a stricter release gate than source publication. Public binaries should ship with:
LICENSENOTICE- any third-party license texts required by bundled or compiled components
- release notes that explain material third-party inclusions when relevant
If a release artifact includes code under obligations beyond simple attribution, the release process must explicitly account for that component.
This is the main component that needs product and legal clarity before broad public Linux binary distribution.
Current state:
codex-rs/linux-sandbox/build.rscompiles vendored bubblewrap C sources on Linux targets.codex-rs/linux-sandbox/src/vendored_bwrap.rsexposes that compiled entry point for runtime use.codex-rs/linux-sandbox/README.mddocuments that the helper prefers system/usr/bin/bwrap, but falls back to the vendored build path when needed.
That means vendored bubblewrap is not just present in source form; it can also be part of Linux builds and therefore affects binary-distribution compliance.
Default recommendation: do not ship public Linux release binaries that rely on the vendored bubblewrap fallback until that lane has an explicit legal and release-process owner.
Preferred short-term approach:
- Make public Linux release builds rely on system
bwrap, or otherwise disable the vendored fallback in distributed binaries. - Keep the vendored bubblewrap tree in source if it is still useful for local development, CI, or non-public builds.
- Revisit vendored-bubblewrap distribution only with a dedicated compliance review.
If the project later decides to ship vendored bubblewrap in public binaries, the release process should be updated deliberately rather than relying on the source repository notices alone.
Until a separate decision is recorded, treat these as the default release rules:
- Public source repo: allowed with current notices and license files kept up to date.
- Public Linux binaries using vendored bubblewrap: not allowed by default.
- Public Linux binaries using system bubblewrap only: preferred interim path, subject to normal release review.
- No official public Linux release build pipeline is assumed by this document.