1 points par kck4156 21 일 전 | Aucun commentaire pour le moment. | Partager sur WhatsApp

J’ai récemment acheté un ASUS Zenbook A16. Les performances sont excellentes et l’autonomie est vraiment très satisfaisante.

Mais au même moment, j’ai eu l’impression que la nouvelle politique tarifaire de GitHub Copilot n’avait pas vraiment de sens selon mes critères, donc j’ai commencé à déplacer mon principal agent de codage vers OpenAI Codex. Codex CLI prend en charge Windows ARM64 et fonctionne plutôt bien. Le problème, c’était l’app Codex. La version Windows distribuée via le Microsoft Store n’est proposée qu’en x64, et sur Windows ARM64, toute l’app Electron tourne en émulation.

Si ce n’avait été qu’une simple question du type « l’architecture affichée apparaît en x64 », j’aurais pu passer outre, mais en pratique la latence à la saisie et les gels de l’interface étaient assez agaçants. Le fait que Codex CLI tourne correctement en ARM64 alors que l’app Codex reste en émulation x64 était aussi un peu frustrant.

Comme il s’agit de toute façon d’une app Electron, et qu’il existe aussi côté Linux des contournements consistant à réinjecter les ressources de l’app upstream dans un nouveau runtime Electron, je me suis dit qu’un reconditionnement pour Windows ARM64 serait peut-être possible également. J’ai donc créé un script PowerShell qui récupère l’app officielle Codex Windows x64 depuis son installation, remplace le runtime et les modules natifs par leurs équivalents ARM64, puis reconditionne le tout en MSIX auto-signé.

Le dépôt est ici.

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

La méthode actuelle fonctionne globalement comme suit.

  • Le paquet officiel Codex x64 installé depuis le Microsoft Store est utilisé comme source.
  • Le runtime Electron est remplacé par win32-arm64.
  • Node.js est remplacé par win-arm64.
  • Les modules natifs in-process comme better-sqlite3 et node-pty sont recompilés pour ARM64.
  • Les helpers disposant d’assets ARM64, comme codex.exe, codex-command-runner.exe, le sandbox setup helper et rg.exe, sont remplacés par leurs versions ARM64.
  • Les outils out-of-process pour lesquels je n’ai pas encore trouvé d’alternative ARM64, comme node_repl.exe et tectonic.exe, restent en fallback via l’émulation x64.
  • windows-updater.node est supprimé, car la fonction de mise à jour ne convient pas à un paquet auto-signé.
  • Enfin, un MSIX ARM64 est créé avec makeappx.exe et signtool.exe, et Install.bat se charge d’ajouter le certificat aux autorités de confiance et de lancer l’installation.

Dans les releases, j’ai aussi publié le dist.7z que j’ai compilé. Il suffit de le décompresser puis d’exécuter Install.bat.

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

À ce sujet, j’ai également laissé un commentaire sur une issue du dépôt openai/codex.

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

Quand une prise en charge officielle de Windows ARM64 arrivera, la raison d’être de ce projet disparaîtra presque complètement. D’ici là, je vais essayer de le maintenir autant que possible à chaque montée de version de l’app Codex.

Si l’émulation x64 de l’app Codex vous frustravait sur une machine Windows on ARM, cela vaut peut-être le coup d’essayer.

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.