DEV Community

Cover image for Run the Real ChatGPT Desktop App on Ubuntu Linux (Not a Wrapper)
johnohhh1
johnohhh1

Posted on

Run the Real ChatGPT Desktop App on Ubuntu Linux (Not a Wrapper)

TL;DR: OpenAI ships a Windows MSIX binary. You can unpack it, patch three platform assumptions, and run the actual official app natively on Ubuntu — same binary Windows users get. No Electron wrapper, no web view in a box.


The Problem With Every Other Guide

Search "ChatGPT desktop Ubuntu" and you'll find two things:

  1. Articles pointing you at lencx/ChatGPT — a third-party Electron wrapper that loads chatgpt.com in a window. It's not the real app.
  2. Articles pointing you at other wrappers doing the same thing.

These work, but you're getting a community-built shell around a website — not the app itself. The real ChatGPT Desktop (the one in the Windows Store) has features, update hooks, and auth flows that wrapper apps can't replicate cleanly.

This guide unpacks the official binary and runs it on Ubuntu 26.04. Tested on kernel 7.0.0, RTX 5070, NVIDIA 580/CUDA 13.0, both X11 and Wayland via XWayland.


What the Script Actually Does

  1. Extracts the x64 MSIX from the official .msixbundle
  2. Pulls out the official app.asar (the real app logic)
  3. Patches three platform assumptions so it boots on Linux:
    • Routes the platform chooser through the macOS-style implementation (Linux is close enough)
    • Disables macOS-only setVibrancy() calls
    • Skips the macOS ioreg device ID path
  4. Stages Linux Electron around the official app resources
  5. Packages everything as a proper .debchatgpt-desktop-native

You end up with a system package you can install, update, and uninstall like anything else.


Prerequisites

System packages

sudo apt-get install -y dpkg-dev nodejs python3 file
Enter fullscreen mode Exit fullscreen mode

Local Electron tooling

mkdir ~/chatgpt-windows-deb && cd ~/chatgpt-windows-deb
npm install electron @electron/asar --no-save
Enter fullscreen mode Exit fullscreen mode

Get the Official MSIX Bundle

You need the official Windows package from OpenAI. Download OpenAI.ChatGPT-Desktop_<version>.Msixbundle from the Microsoft Store or OpenAI's distribution endpoint and drop it in your working directory.

The repo includes the version current at time of writing as an example payload.


Build

cd ~/chatgpt-windows-deb
git clone https://github.com/johnohhh1/chatgpt_desktop_ubuntu .
npm install electron @electron/asar --no-save
./build-chatgpt-native-deb.sh --exe ./OpenAI.ChatGPT-Desktop_2026.212.2039.0.Msixbundle
Enter fullscreen mode Exit fullscreen mode

Output lands in dist/:

dist/chatgpt-desktop-native_2026.212.2039.0_amd64.deb
Enter fullscreen mode Exit fullscreen mode

Install

sudo apt-get install ./dist/chatgpt-desktop-native_2026.212.2039.0_amd64.deb
Enter fullscreen mode Exit fullscreen mode

Rebuilding without a version bump? Force refresh:

sudo apt-get install --reinstall ./dist/chatgpt-desktop-native_2026.212.2039.0_amd64.deb
Enter fullscreen mode Exit fullscreen mode

Register Auth Callback Handlers

The package installs a helper that registers your desktop session as the handler for the chatgpt: and chatgpt-alt: URL schemes (used for the login flow):

chatgpt-desktop-native-register
Enter fullscreen mode Exit fullscreen mode

Verify it took:

xdg-mime query default x-scheme-handler/chatgpt
xdg-mime query default x-scheme-handler/chatgpt-alt
Enter fullscreen mode Exit fullscreen mode

Both should return chatgpt-desktop-native.desktop.


Launch

chatgpt-desktop-native
Enter fullscreen mode Exit fullscreen mode

The desktop entry sets the WM class to electron so GNOME binds the running window to the ChatGPT icon instead of the generic gear icon.


Known Quirks

  • The terminal will print Electron/NVIDIA/VA-API noise. This is normal — ignore it.
  • The success signal is functional login and working chat, not a clean terminal.
  • If GNOME still shows the generic icon after first launch: close the app fully and relaunch once. Stubborn shell? Log out and back in.
  • If OpenAI updates the Windows app significantly, the patch targets in build-chatgpt-native-deb.sh may need updating. PR welcome.

Reproducing on Another Machine

  1. Clone the repo to the target machine
  2. Drop a real ChatGPT .msix, .msixbundle, .appx, or .appxbundle in the directory
  3. npm install electron @electron/asar --no-save
  4. ./build-chatgpt-native-deb.sh --exe <your-payload>
  5. Install the generated .deb
  6. Run chatgpt-desktop-native-register
  7. Launch chatgpt-desktop-native

Repo

github.com/johnohhh1/chatgpt_desktop_ubuntu

Issues and PRs open. If a new MSIX version breaks the patches, open an issue with the version string and I'll update the patch targets.


Tested on Ubuntu 26.04 "Noble" with kernel 7.0.0-10, RTX 5070, NVIDIA driver 580, CUDA 13.0.

Top comments (0)