codex-desktop-linux  by ilysenko

Enabling OpenAI Codex Desktop on Linux

Created 2 months ago
393 stars

Top 73.0% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides an automated installer and build system for running OpenAI's macOS-only Codex Desktop application on Linux. It targets Linux users who need access to Codex Desktop, offering a streamlined process to convert the official macOS DMG into a functional Linux Electron app. The primary benefit is enabling Codex Desktop usage on Linux with native packaging and integrated local auto-updates, abstracting away the complexities of cross-platform Electron app adaptation.

How It Works

The project employs a multi-step build pipeline: it extracts the macOS .dmg using 7z, then unpacks and patches the app.asar JavaScript bundle to make it compatible with Linux. It recompiles necessary Node.js native modules for the Linux environment and downloads a suitable Linux Electron runtime. A custom Linux launcher script (start.sh) is generated, which also initiates a local Python web server for the app's webview. For installed applications, a codex-update-manager service, built with Rust, runs as a systemd user service to monitor for new upstream DMGs and automatically rebuild Linux packages locally.

Quick Start & Requirements

  • Primary install/run: Clone the repo, run bash scripts/install-deps.sh (which installs system packages and bootstraps Rust), then make build-app to generate the local app, and make run-app to execute it. For native packages, use make package (auto-detects distro) or make deb, make rpm, make pacman.
  • Prerequisites: Node.js 20+, npm, npx, python3, 7z, curl, unzip, make, g++, Rust and cargo.
  • NixOS: nix run github:ilysenko/codex-desktop-linux or nix develop github:ilysenko/codex-desktop-linux.
  • Links: Repository: https://github.com/ilysenko/codex-desktop-linux.git, 7-Zip downloads: https://www.7-zip.org/download.html.

Highlighted Details

  • Automates the conversion of macOS Codex Desktop DMG to a runnable Linux Electron app.
  • Builds and installs native Linux packages (.deb, .rpm, pacman) with a systemd user service for local auto-updates.
  • Includes Linux-specific fixes for "Open in File Manager" functionality and defaults sidebar transparency to opaque.
  • Supports using a custom DMG path via make build-app DMG=/path/to/Codex.dmg.

Maintenance & Community

This project appears to be a community-driven effort. No specific maintainers, sponsorships, or community channels (like Discord/Slack) are detailed in the README.

Licensing & Compatibility

  • License: MIT.
  • Compatibility: The MIT license is highly permissive, allowing for commercial use and integration into closed-source projects without significant restrictions.

Limitations & Caveats

This is an unofficial community project. Its functionality relies on the internal structure of the upstream macOS DMG, meaning significant changes by OpenAI could break the conversion process. The Linux-specific patches for file manager integration and UI elements may also become outdated. NixOS users might encounter temporary hash mismatch errors immediately following new upstream releases, requiring a short waiting period for automated updates. Some graphical issues may necessitate specific command-line flags to disable GPU acceleration or select X11 over Wayland.

Health Check
Last Commit

13 hours ago

Responsiveness

Inactive

Pull Requests (30d)
18
Issues (30d)
13
Star History
257 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.