Claude Desktop 1.30096.1
This release provides Claude Desktop version 1.30096.1 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-extraArch Linux (manual package)
# x86_64
sudo pacman -U https://github.com/patrickjaja/claude-desktop-extra/releases/download/v1.30096.1/claude-desktop-extra-1.30096.1-1-x86_64.pkg.tar.zst
# ARM64
sudo pacman -U https://github.com/patrickjaja/claude-desktop-extra/releases/download/v1.30096.1/claude-desktop-extra-1.30096.1-1-aarch64.pkg.tar.zstDebian/Ubuntu (APT Repository — recommended)
curl -fsSL https://patrickjaja.github.io/claude-desktop-extra/install.sh | sudo bash
sudo apt install claude-desktop-extraDebian/Ubuntu (manual .deb)
# x86_64
sudo apt install ./claude-desktop-extra_1.30096.1-1_amd64.deb
# ARM64
sudo apt install ./claude-desktop-extra_1.30096.1-1_arm64.debFedora/RHEL (RPM Repository — recommended)
curl -fsSL https://patrickjaja.github.io/claude-desktop-extra/install-rpm.sh | sudo bash
sudo dnf install claude-desktop-extraFedora/RHEL (manual .rpm)
# x86_64
sudo dnf install ./claude-desktop-extra-1.30096.1-1.x86_64.rpm
# ARM64
sudo dnf install ./claude-desktop-extra-1.30096.1-1.aarch64.rpmNixOS / Nix
nix run github:patrickjaja/claude-desktop-extraAppImage (Any Distro)
# x86_64
chmod +x Claude_Desktop-1.30096.1-x86_64.AppImage
./Claude_Desktop-1.30096.1-x86_64.AppImage
# ARM64
chmod +x Claude_Desktop-1.30096.1-aarch64.AppImage
./Claude_Desktop-1.30096.1-aarch64.AppImageUpdate 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) | 70cfc05bb0f9c328024b578e57877ae6f1daf9e722b9b150460e945a23dd512e
|
| Arch pacman (aarch64) | da7e5adf4f9eb56482e657adc054bb146ff18eb5845dad42be694827f5c2d375
|
| Tarball (x86_64) | ee690037b47cb07a25e6b8dffc371f12b662124c4b0232ab1016ddd5bc3a657d
|
| Tarball (aarch64) | e72afadbede90cd947d3d0488247335290461148b9bf42904cc92f7e1ba67cb4
|
| AppImage (x86_64) | 0cfe7812b05a9e3f443b8a70a8c5f118f834887b61192f66615200cc7c1f4cbf
|
| AppImage (aarch64) | 01c9f86a65ac9d81a532f5e7878ed547bec9b465f93e532136ae11fdd5623771
|
| Debian (amd64) | 1c60e2c4b391299bac3e1726bfaac916f21241b02e0d37a07e977aaa6cd49dfb
|
| Debian (arm64) | 826ed902856617a263dd45c6caec76364b277f11746c415b5ed450146fc2a7ba
|
| RPM (x86_64) | 144fa2679b57b970fb6648abea23caab12cb1e0d3b7277456b35993ad92f47c5
|
| RPM (aarch64) | c03064312f600a5c52baa891b3d725169a1de40272cd6e01fe10f6ec1a1ef8e0
|
Changes since last release
From CHANGELOG.md, 2026-08-14:
Claude Desktop v1.30096.1 - two patches re-fitted, fix_tray_dbus retired as obsolete
The v1.30096.1 auto-release (issue #226) failed on a transient GitHub API rate limit in the version-check step, before any patch ran. The local update run then surfaced the real breaks:
fix_computer_use_linux(1 of 36 sub-patches): the grant-tier rework hoistedallowedApps/grantFlags/userDeniedBundleIdsout of the CU tool-handler's options object into their own bindings feeding the newgrants:tier lookup, which broke the screenshot-note seed anchor. The seed now tolerates interleaved simple declarations; the injection binds to the new names unchanged.fix_tray_icon_theme: upstream extracted the tray icon filename switch into a helper that returns (with a crash-retry fallback parameter), so the assign-and-break anchor got 0 matches. The patch now rewrites thepngcase's return expression; the Linux gap itself is unchanged upstream (a light desktop theme still gets the invisible icon without us).fix_tray_dbusremoved (43 patches now): the destroy-and-recreate-per-update tray architecture it serialized is gone upstream - the tray updates in place viasetImage, destroys only when the tray is disabled, and this release gained its own crash-containment wrapper. That wrapper split exposed the patch as broken: it async-converted the wrapper but injected itsawaitinto the still-synchronous worker, failing the post-patch syntax check while reporting all sub-patches green. With the race structurally gone there is nothing left to inject.
The full audit came back clean: the bundle consolidated from 339 to 104 chunks (no size growth), no new darwin/win32 gate lacks Linux support, no new native modules, the built-in MCP roster and Cowork VM probes are unchanged, ion-dist's patch sites re-verified, and Electron stays 42.7.0. Audit-recipe hardening from this round: bundle-wide greps must span index.pre.js plus both chunk families (index.chunk-* and index2.chunk-*) - a concat missing either produces plausible-looking but wrong counts (the baseline docs now say so).
What upstream added: session export/import as zip bundles (replacing v1.28929.0's local-session scan/import handlers), scheduled-task cron shapes with self-resume wakeups, tray crash containment with a forced-dark fallback icon, structured spawn-error telemetry, GrowthBook targeting by device class and RAM, and the Parka meeting-recording interface moved to its own IPC origin.
Kept in sync with the release: the Extra -> Deployment panel offers the two new OTLP managed-settings keys otlpAuthMode and otlpHeadersHelper (105 keys total); the GrowthBook flag catalog gained 1942337209 (local MCP version-negotiation kill-switch; 168 entries); enable_local_agent_mode dropped the vestigial chillingSlothPool override key; baseline docs (feature flags, platform gates, built-in MCP, ION) re-validated.