1 Punkte von kck4156 21 일 전 | Noch keine Kommentare. | Auf WhatsApp teilen

Ich habe mir vor Kurzem ein ASUS Zenbook A16 gekauft. Die Leistung ist hervorragend, und auch mit der Akkulaufzeit bin ich sehr zufrieden.

Da ich die neue Preisgestaltung von GitHub Copilot für mich persönlich gerade nicht besonders sinnvoll fand, habe ich begonnen, meinen primären Coding-Agenten von GitHub Copilot zu OpenAI Codex zu wechseln. Die Codex CLI unterstützt Windows ARM64 und läuft ziemlich gut. Das Problem war die Codex-App. Die über den Microsoft Store verteilte Windows-Version gibt es nur als x64, und unter Windows ARM64 läuft dadurch die komplette Electron-App in Emulation.

Wenn es nur darum gegangen wäre, dass einfach „x64“ als Architektur angezeigt wird, hätte ich das noch ignorieren können. Tatsächlich waren aber Eingabeverzögerungen und UI-Hänger recht störend. Dass die Codex CLI nativ auf ARM64 läuft, die eigentliche Codex-App aber in x64-Emulation, war ebenfalls etwas frustrierend.

Da es sich ohnehin um eine Electron-App handelt und es unter Linux ähnlich gelagerte Workarounds gibt, bei denen die Ressourcen der Upstream-App auf eine neue Electron-Runtime gesetzt werden, dachte ich, dass ein Repackaging auch für Windows ARM64 möglich sein müsste. Deshalb habe ich ein PowerShell-Skript erstellt, das die offizielle Windows-x64-Codex-App aus der installierten Version übernimmt, die Runtime und nativen Module durch ARM64-Varianten ersetzt und das Ganze anschließend als selbst signiertes MSIX neu bündelt.

Das Repository ist hier.

https://github.com/airtaxi/codex-app-windows-arm64

Aktuell funktioniert der Ansatz grob so.

  • Das offiziell über den Microsoft Store installierte Codex-x64-Paket wird als Quelle verwendet.
  • Die Electron-Runtime wird durch win32-arm64 ersetzt.
  • Node.js wird durch win-arm64 ersetzt.
  • In-Process-Nativmodule wie better-sqlite3 und node-pty werden für ARM64 neu gebaut.
  • Helper mit vorhandenen ARM64-Assets wie codex.exe, codex-command-runner.exe, sandbox setup helper und rg.exe werden durch ARM64-Versionen ersetzt.
  • Out-of-Process-Tools wie node_repl.exe und tectonic.exe, für die ich noch keinen ARM64-Ersatz gefunden habe, bleiben als x64-Emulations-Fallback erhalten.
  • windows-updater.node wird entfernt, weil die Update-Funktion bei selbst signierten Paketen nicht passt.
  • Abschließend wird mit makeappx.exe und signtool.exe ein ARM64-MSIX erstellt, und Install.bat übernimmt das Vertrauenswürdigmachen des Zertifikats und die Installation.

In den Releases habe ich auch ein von mir gebautes dist.7z hochgeladen. Man muss es nur entpacken und Install.bat ausführen.

https://github.com/airtaxi/codex-app-windows-arm64/…

Dazu habe ich auch im zugehörigen Issue bei openai/codex einen Kommentar hinterlassen.

https://github.com/openai/codex/issues/17491#issuecomment-4369034462

Sobald es offizielle Windows-ARM64-Unterstützung gibt, verliert dieses Projekt fast vollständig seinen Zweck. Bis dahin möchte ich es aber nach Möglichkeit an neue Versionen der Codex-App anpassen und weiter pflegen.

Wenn euch die x64-Emulation der Codex-App auf Windows-on-ARM-Geräten ausgebremst hat, lohnt sich vielleicht ein Blick darauf.

Noch keine Kommentare.

Noch keine Kommentare.