हाल ही में मैंने ASUS Zenbook A16 खरीदा। इसकी performance बहुत अच्छी है और battery से भी मैं काफी संतुष्ट था।

लेकिन इसी बीच मुझे लगा कि GitHub Copilot की नई pricing policy मेरे हिसाब से कुछ खास तर्कसंगत नहीं है, इसलिए मैंने अपना मुख्य coding agent OpenAI Codex की तरफ शिफ्ट करना शुरू किया। Codex CLI, Windows ARM64 को support करता है, इसलिए वह काफ़ी अच्छी तरह चलता है। समस्या Codex ऐप में थी। Microsoft Store के जरिए वितरित Windows version में सिर्फ x64 मिलता है, और Windows ARM64 पर पूरा Electron ऐप emulation में चलता है।

अगर यह सिर्फ “architecture x64 दिख रहा है” जैसी बात होती, तो शायद मैं इसे नज़रअंदाज़ कर देता, लेकिन वास्तव में input lag और UI freeze काफ़ी परेशान कर रहे थे। Codex CLI तो ARM64 पर अच्छे से चलता है, लेकिन Codex ऐप का x64 emulation पर होना भी थोड़ा खटक रहा था।

आख़िरकार यह एक Electron ऐप ही है, और Linux में भी ऐसे workaround के उदाहरण हैं जहाँ upstream ऐप resources को नए Electron runtime पर चढ़ाकर चलाया जाता है। इसलिए मुझे लगा कि Windows ARM64 के लिए भी repackaging संभव हो सकती है। इसी वजह से मैंने एक PowerShell script बनाई, जो आधिकारिक Windows x64 Codex ऐप को installation package से लेकर ARM64 runtime और native modules से बदलती है, फिर उसे self-signed MSIX के रूप में दोबारा पैक करती है।

repository यहाँ है।

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

फ़िलहाल तरीका मोटे तौर पर ऐसा है।

  • Microsoft Store में install किए गए आधिकारिक Codex x64 package को source के रूप में इस्तेमाल किया जाता है।
  • Electron runtime को win32-arm64 से बदला जाता है।
  • Node.js को win-arm64 से बदला जाता है।
  • better-sqlite3, node-pty जैसे in-process native modules को ARM64 के लिए rebuild किया जाता है।
  • codex.exe, codex-command-runner.exe, sandbox setup helper, rg.exe जैसे ARM64 asset वाले helpers को ARM64 version से बदला जाता है।
  • node_repl.exe, tectonic.exe जैसे out-of-process tools, जिनके लिए अभी ARM64 विकल्प नहीं मिला है, उन्हें x64 emulation fallback के रूप में रखा जाता है।
  • windows-updater.node को हटा दिया जाता है, क्योंकि self-signed package में update feature उपयुक्त नहीं है।
  • अंत में makeappx.exe और signtool.exe से ARM64 MSIX बनाया जाता है, और Install.bat certificate trust registration और installation संभालता है।

release में मेरे द्वारा बनाया गया dist.7z भी अपलोड किया गया है। उसे extract करके Install.bat चलाना होगा।

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

इससे संबंधित openai/codex की issue में भी मैंने एक comment छोड़ा है।

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

जब आधिकारिक Windows ARM64 support आ जाएगा, तब इस project के होने की ज़रूरत लगभग ख़त्म हो जाएगी। तब तक Codex ऐप का version जब भी बढ़ेगा, मैं यथासंभव उसके साथ इसे maintain करने की कोशिश करूँगा।

अगर Windows on ARM device पर Codex ऐप का x64 emulation आपको भी धीमा और परेशान करने वाला लगा हो, तो आप इसे एक बार आज़मा सकते हैं।

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.