github patrickjaja/claude-desktop-extra v3.6556.2-3
Claude Desktop 3.6556.2 (patch release 3)

latest releases: v3.6556.2-5, v3.6556.2-4
5 hours ago

Claude Desktop 3.6556.2 (patch release 3)

This release provides Claude Desktop version 3.6556.2 pre-patched for Linux.

Installation Options

Arch Linux (pacman Repository - recommended)

curl -fsSL https://patrickjaja.github.io/claude-desktop-extra/install-pacman.sh | sudo bash
sudo pacman -Syu claude-desktop-extra

Arch Linux (manual package)

# x86_64
sudo pacman -U https://github.com/patrickjaja/claude-desktop-extra/releases/download/v3.6556.2-3/claude-desktop-extra-3.6556.2-3-x86_64.pkg.tar.zst
# ARM64
sudo pacman -U https://github.com/patrickjaja/claude-desktop-extra/releases/download/v3.6556.2-3/claude-desktop-extra-3.6556.2-3-aarch64.pkg.tar.zst

Debian/Ubuntu (APT Repository — recommended)

curl -fsSL https://patrickjaja.github.io/claude-desktop-extra/install.sh | sudo bash
sudo apt install claude-desktop-extra

Debian/Ubuntu (manual .deb)

# x86_64
sudo apt install ./claude-desktop-extra_3.6556.2-3_amd64.deb
# ARM64
sudo apt install ./claude-desktop-extra_3.6556.2-3_arm64.deb

Fedora/RHEL (RPM Repository — recommended)

curl -fsSL https://patrickjaja.github.io/claude-desktop-extra/install-rpm.sh | sudo bash
sudo dnf install claude-desktop-extra

Fedora/RHEL (manual .rpm)

# x86_64
sudo dnf install ./claude-desktop-extra-3.6556.2-3.x86_64.rpm
# ARM64
sudo dnf install ./claude-desktop-extra-3.6556.2-3.aarch64.rpm

NixOS / Nix

nix run github:patrickjaja/claude-desktop-extra

AppImage (Any Distro)

# x86_64
chmod +x Claude_Desktop-3.6556.2-x86_64.AppImage
./Claude_Desktop-3.6556.2-x86_64.AppImage
# ARM64
chmod +x Claude_Desktop-3.6556.2-aarch64.AppImage
./Claude_Desktop-3.6556.2-aarch64.AppImage

Update existing AppImage (delta download — only changed blocks):

appimageupdatetool Claude_Desktop-*-x86_64.AppImage
# Or from within the AppImage:
./Claude_Desktop-*-x86_64.AppImage --appimage-update

Checksums

File SHA256
Arch pacman (x86_64) 1a94f6993c93a0bdcc168b5def050604c0fa86cca11bf9c5697191b3ebd3b12e
Arch pacman (aarch64) c720b2d8399449331b666e60de71a8eaeff9b863db5f3eff6246f6b192a858f6
Tarball (x86_64) e60d60c86b5cacce61bdc2e653b0312df4934288650c785047686fb412c96b68
Tarball (aarch64) 096730e77b4efee66442d3b8b739455368faea8075e53797e2b33691b0cef264
AppImage (x86_64) b3eb972a41ad3253e4b727987449187dfb11254b83b9cb14769fbd4c75a8baef
AppImage (aarch64) 2bbf63f04ba4c9080c32a7c78cdcfbb9cdf290badd12b7c2093e6932de65fce9
Debian (amd64) e4c3cfe99bb13767d603c38e036065c568c317735c1c70dda6dfd31cc5f2d125
Debian (arm64) 8c232a98994ce6c5e6441a0001d5a9ac7125b3fc364497321ac7b06b6c78d971
RPM (x86_64) 5e0ad9e2f36fc34970384b8ce983182c74ffa9a7b8ad1b204d75ceee5d82d4f4
RPM (aarch64) 0e3311b0c6907d4498d4e3e8f4d76a20a4221d0f8d97ec67f862ed93b0f95d83

Changes since last release

From CHANGELOG.md, 2026-10-23:

Custom models and the Extra settings page also run on win32 (thanks @stratosjl, #295)

  • No change on Linux. The custom models module and the Extra settings page now load on win32 as
    well as Linux, so a downstream Windows build of this patch set can carry them without editing them
    (stratosjl/claude-desktop-extra builds one). On
    Windows the Extra area shows only the Models panel; the other panels drive Linux-only patches or
    /etc/claude-desktop. When the profile folder has a space (C:\Users\John Smith), which BUN_OPTIONS
    cannot carry, the CLI preload goes through the folder's 8.3 short name; Linux keeps refusing such a
    path as before. A leading ~\ in apiKeyFile is expanded on Windows. Covered by new win32 cases in
    test-custom-models-main.mjs and a Windows scenario in test-extra-settings-dom.mjs.

Claude Desktop v3.6556.2

  • Rebased on the official v3.6556.2 .deb (bundled Electron 44.9.3). Three patches were re-fitted to
    the new code; none of them was absorbed upstream:
    • add_feature_files_quick_open.nim: the worker host now has a per-worker env option, which only the
      new frame-local worker sets. Main's live environment is now inserted ahead of that option, so a
      worker's own env still takes precedence. The file-index and heavy-work workers again receive
      CDB_FILES_QUICK_OPEN and CDB_TRANSCRIPT_LIMITS.
    • fix_marketplace_linux.nim: upstream's local-plugin reader now sorts entries into plugins and
      "other folder" plugins. Personal plugins, which the CLI stores as project scope on $HOME, again list
      under Personal Plugins.
    • fix_update_check_own_releases.nim: the Linux updater init now also starts a restart-enforcement
      ticker. The update-link hook still runs before the poll.
  • Extra -> Deployment lists upstream's new managed-settings keys: installedUpdateEnforcementEnabled
    and installedUpdateEnforcementHours, plus quickEntryScreenshotsEnabled and
    quickEntryFileSharingEnabled, which only the macOS Quick Entry reads. toolPolicyEndpoint, which
    upstream removed, is gone (196 keys).
  • The GrowthBook override template covers the 17 new flags (635 entries).

Computer Use on GNOME Wayland: consent dialog on every action, no restore token, screens timing out (#293)

Three defects in gnome-portal-bridge (github.com/patrickjaja/gnome-bridge), present since its first release:

  • Monitor enumeration never reached Mutter. The bridge's decoder for org.gnome.Mutter.DisplayConfig.GetCurrentState was one field short of Mutter's mode signature, and zbus rejects the whole reply on a mismatch, so screens always fell back to opening a fresh portal session. That is the consent dialog behind screens, and because every pointer and capture command resolves its monitor the same way, a dialog per click and per zoom too, daemon or not. It is also why claude-desktop --diagnose reported screens timing out and why the ids were stream-116 instead of connector names. Fixed, with a unit test pinning the decoder to Mutter's published signature; screens now answers in milliseconds.
  • No restore token was ever stored. The portal only accepts persistence for a combined RemoteDesktop + ScreenCast session through RemoteDesktop.SelectDevices; the library the bridge used asked on ScreenCast.SelectSources as well, the portal refused, and the bridge retried without persistence on every GNOME version. The bridge now builds the session itself and requests persistence the way the portal specifies. Verified on GNOME 48: after the first grant, sessions and one-shot commands run with no dialog.
  • session-end could leave serve-session running (and the screen-sharing indicator on). The daemon now records its pid, session-end waits for it and escalates to SIGTERM and SIGKILL, the daemon bounds its own teardown, and a client killed mid-request (the executor's timeout) no longer takes the daemon down with it. Its stderr goes to $XDG_RUNTIME_DIR/gnome-portal-bridge/daemon.log.

On top: zoom without --display (the executor's fallback when it has no monitor list) now takes global coordinates and clamps the region to the display instead of refusing it on a monitor not at the origin, and the executor no longer caches a failed screens enumeration for the whole process (it retries after 30 s), so one slow reply cannot pin every later capture to global coordinates. The GNOME lifecycle harness covers the retry. Operator notes: in the consent dialog keep "Remember This Selection" on and turn on "Allow Remote Interaction"; gnome-portal-bridge doctor reports restore_token_present.

kwin-portal-bridge (KDE Plasma) had the same restore-token defect: the consent prompt came back for every Computer Use session because the token was never stored. Fixed the same way in our fork and verified on Plasma 6.7.2; the next build picks it up. Keep "Allow restoring on future sessions" on in the KDE prompt.

Computer Use on GNOME Wayland: clicks missing on scaled or multi-monitor setups, frozen screenshots (#293)

  • Clicks on fractionally scaled monitors landed short by the scale factor. The bridge sent logical units where the portal expects stream pixels; points are now converted to stream pixels.
  • The outer band of a scaled monitor was unreachable. xdg-desktop-portal refused those positions; they are now reached with a clamped absolute motion plus a relative motion for the remainder.
  • Screenshots could be up to about a minute old. The bridge returned the oldest queued frame; it now returns the latest.
  • A monitor not shared in the consent dialog is an error, not a silent switch to another monitor. The error names the shared monitors. The new gnome-portal-bridge forget-session clears the remembered selection so the dialog can be answered again with all monitors.
  • The executor defaults screenshots to the shared monitor and honours an explicit display 0 instead of reading it as unset.
  • Session start waits up to about two minutes for the consent dialog.
  • A screenshot right after a click now includes the app's repaint. Mutter skips a frame requested too early and its follow-up redraw does not reach a second monitor, so the shot could show the screen from before the click; after pointer input the bridge now flushes the pending frame with a 1 px pointer nudge.
  • An input request whose caller already timed out is refused instead of executed late, so a click can no longer land after Claude gave up on it.
  • Ending a session is bounded to about 4 s, even when the session daemon is stuck.

Operator note: with several monitors, select all of them in the consent dialog.

Computer Use on X11 HiDPI, sway/Hyprland/river multi-monitor and rotated outputs, KDE session robustness

  • X11 with a scale factor (Xft.dpi via XSETTINGS, GDK_SCALE, --force-device-scale-factor): clicks were sent in Electron DIP while XTest works in root pixels, so at 1.5 a click at the screen centre landed at two thirds of the way. Clicks and the screenshot crop now share one DIP-to-pixel mapping (the same as Electron's dipToScreenPoint), including mixed scales, a primary monitor not at 0,0, displays whose DIP bounds overlap by one column, and XWayland via CLAUDE_USE_XWAYLAND=1.
  • wlroots-bridge (sway, Hyprland, river): absolute pointer motion is now relative to the layout's bounding box, so monitors left of or above the origin are reachable and clicks land exactly. Rotated and flipped outputs (all 8 transforms) give upright screenshots and correct click mapping.
  • KDE Wayland (kwin-portal-bridge): every bridge call has a timeout. Session start waits up to about two minutes for the consent dialog and tells a declined dialog from a slow one. A stuck session daemon is ended (SIGTERM, then SIGKILL) on session end and at quit. Input whose caller already timed out is refused instead of executed late, and screenshots settle after an action.
  • GNOME and KDE: a session daemon left over from a failed session start is now ended as well.

Links

Don't miss a new claude-desktop-extra release

NewReleases is sending notifications on new releases.