Download the official Cursor Linux .deb, install it with apt/dpkg, and relaunch with your Wayland or X11 session environment.
Quick start · Releases · License
Latest release notes: CHANGELOG.md and GitHub Releases. A plain git clone follows the default branch tip unless you check out a tag; prefer a tagged release for day-to-day use.
Cursor ships a Linux .deb, but there is no separate CLI updater for it. You either wait on the in-app prompt or dig through the download page again.
This kit downloads the official package from Cursor's API, installs it with apt/dpkg, and relaunches Cursor the way the app menu would, forwarding your Wayland/X11 session environment.
Safe by default: install does not enable passwordless sudo or replace your cursor.desktop. Run verify first; opt in to launcher integration or NOPASSWD only when you want them.
This is for Ubuntu/Debian users who already installed Cursor from the official .deb (cursor.com/download) and want a terminal or app-grid update path that relaunches with session DPI. GNOME on x64 is validated; arm64 is best-effort.
It is not for AppImage, snap, or Flatpak installs; RPM/Fedora; an official Anysphere product; generic multi-app deb updaters; or linux-app-scale itself. You need the official Cursor .deb already on this machine.
Install puts cursor-deb-updater, cursor-deb-updater-ui, and verify-cursor-deb-updater in ~/.local/bin, plus config under ~/.config/cursor-deb-updater/. Default install writes no sudoers file and no local cursor.desktop. Sudo may prompt when you run an update from a terminal.
Then: Install → Verify layout → Dry-run / first update → Run updater.
Needs: Linux with curl or wget, sudo, and the official Cursor .deb. Prefer a normal terminal (not from inside Cursor if you cannot afford closing all windows).
Stable path: clone or download a release tag from Releases, then run the install script. Tip of the default branch is fine for contributors.
git clone https://github.com/alkitect/cursor-deb-updater.git
cd cursor-deb-updater
# optional: git checkout vX.Y.Z # pin to a release tag
./scripts/install-to-local.shverify-cursor-deb-updaterGlue is installed when that exits 0. If it warns about packaging, install the official Cursor .deb first, or use --strict only when debugging.
A real update runs pkill -x cursor before install, which closes every Cursor window. Preview first:
cursor-deb-updater --dry-runcursor-deb-updaterYou should see a download/install path when an update exists, or "already on latest" when current. If update fails on sudo, run from a TTY terminal or see Configure for passwordless sudo.
User success is running cursor-deb-updater from a terminal when an update exists (or "already on latest" when current), after verify exits 0.
Optional confirmation
verify-cursor-deb-updater
./scripts/ci-check.shQuestions or a stuck install: open a GitHub Issue or see CONTRIBUTING.md.
Tip jar for the next desktop fix. Or a coffee so the next script stays boring on purpose.
./scripts/uninstall-from-local.sh
# optional: --purge-configRemoves glue binaries and an integrated desktop this tool created. The Cursor application stays installed.
Optional flags at install time:
./scripts/install-to-local.sh --enable-passwordless-sudo
./scripts/install-to-local.sh --integrate-launcher
./scripts/install-to-local.sh --integrate-launcher --force # backup foreign cursor.desktop firstUI mode (terminal vs silent background updates):
cursor-deb-updater-ui terminal # or silent / statusConfig file ~/.config/cursor-deb-updater/config supports RELEASE_TRACK=latest or stable.
This is not affiliated with Anysphere or Cursor. It does not relicense Cursor and does not vendor Cursor binaries.
- Platform: official
.debon Debian/Ubuntu; packaging gate refuses snap/AppImage/Flatpak wrappers. - Kill-switch: uninstall glue; optionally
sudo rm /etc/sudoers.d/cursor-deb-updater. - Defaults: HTTPS allowlist on initial and post-redirect download URLs; interactive sudo when NOPASSWD is absent.
- Tradeoff: updates run
pkill -x cursorbefore install (closes every Cursor window); API/CDN shape may change. - This GitHub repo is the release source for tagged releases. See CONTRIBUTING.md.
MIT. See LICENSE.
Optional tip jar: ko-fi.com/alkitect