Claude Desktop 4.23118.0 (patch release 6)
This release provides Claude Desktop version 4.23118.0 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/v4.23118.0-6/claude-desktop-extra-4.23118.0-6-x86_64.pkg.tar.zst
# ARM64
sudo pacman -U https://github.com/patrickjaja/claude-desktop-extra/releases/download/v4.23118.0-6/claude-desktop-extra-4.23118.0-6-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_4.23118.0-6_amd64.deb
# ARM64
sudo apt install ./claude-desktop-extra_4.23118.0-6_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-4.23118.0-6.x86_64.rpm
# ARM64
sudo dnf install ./claude-desktop-extra-4.23118.0-6.aarch64.rpmNixOS / Nix
nix run github:patrickjaja/claude-desktop-extraAppImage (Any Distro)
# x86_64
chmod +x Claude_Desktop-4.23118.0-x86_64.AppImage
./Claude_Desktop-4.23118.0-x86_64.AppImage
# ARM64
chmod +x Claude_Desktop-4.23118.0-aarch64.AppImage
./Claude_Desktop-4.23118.0-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) | 27be4acda39bf01e29c9cacb74bd95df7bfb2fdca7a6d045c7475661f284cf70
|
| Arch pacman (aarch64) | 819914cfaa172988da0a6e8c5ea622ba0240fed87d775cae8d6de3ccfed141cc
|
| Tarball (x86_64) | eee74603bbd0690ea58038dd7430e724842e9c75fb1b96d1d46133a18ec228d8
|
| Tarball (aarch64) | 6c639a744e1d4fa799ac53728c063f3061d6d0e31d4dc7bba85a53d8ba4c0cd2
|
| AppImage (x86_64) | e6c0db13daf130d44b3dcfd3a3e30f36021bcbf95ef31a0ef1edec1601cff2fb
|
| AppImage (aarch64) | f56e0a4fa412e282e8408e217cec0e177b5f1d696df359a560222584717ada8b
|
| Debian (amd64) | 0597716fdeff62f5048075083746e243b48d0dfb131ee5c911d78bcc552a9b23
|
| Debian (arm64) | 1dd36d90fb1459d3669c489cbef1da842c2139785acc26ddeab05e95bb43f9b6
|
| RPM (x86_64) | 8617038f3294a935d81d6ef3d884b21239d9986156dce7fb5fc6258641f2874a
|
| RPM (aarch64) | d40edd10fed9a900167bc71ecd85e356429529b4136da83ef96b1b20a0d32edb
|
Changes since last release
From CHANGELOG.md, 2026-11-06:
Cowork on Linux: two backends, Enable KVM access, a "Cowork (Linux)" page and a device icon in every chat
- Cowork has two backends. Cloud Cowork (claude.ai accounts) needs no KVM; for desktop tools (Computer Use, files) this computer must be a keyed device, which needs TPM access. The local Cowork VM (optional with a claude.ai account, the only Cowork in 3P) needs
/dev/kvm,/dev/vhost-vsock, QEMU, OVMF and virtiofsd. README, landing page, docs/cowork.md, Computer Use docs, troubleshooting,--diagnose(sections "Cloud Cowork device key" and "Local Cowork VM") and the pacman install note now say which needs what. - Enable KVM access (opt-in, one administrator prompt): a udev rule gives the logged-in desktop user access to
/dev/kvmand/dev/vhost-vsock, andvhost_vsockloads at boot. No relogin; restart the app so it probes again. Disable KVM access removes it. NixOS:programs.claude-desktop-extra.kvmAccess.enable = true;. The.deb,.rpm, pacman, AppImage and Nix packages ship the helper; the VM tools stay soft dependencies. - Settings -> Extra -> Cowork (Linux) (was "Computer Use") shows Cloud Cowork (device key), Local Cowork VM (KVM, vsock, tools, VM state) and Computer Use, with the Enable actions, plus a collapsible "How Cowork chooses where a task runs" block (cloud vs local, how to switch, the admin settings; also in docs/cowork.md).
- Every claude.ai chat and Cowork session header (
/chat/...,/cowork/...) now has a device icon on Linux: the upstream icon plus a "Linux details" row when the chat is linked to this computer or runs locally, a laptop with an X when this desktop has no device key ("No device key": cloud tasks get no Computer Use here, files and commands still work), an amber dot when it is keyed but the chat is not linked, a plain laptop while the key state is not known. Each popover says where the chat runs (cloud; for a linked chat, files and commands run in the linked computer's local Cowork VM, with its state; or the local VM), and each opens the matching section of the Cowork (Linux) page. It replacesfix_ion_dist_linuxsub-patch C (the keyless hint in the 3P SPA header), which is retired: that SPA serves only 3P, where cloud Cowork does not exist, so the hint never rendered for claude.ai accounts (new patchfix_cowork_device_icon_web).
Settings -> Extra -> Models works in 3P mode (#318)
- In Community Features, the Custom models row's "Settings > Extra > Models" is now a link that opens the Models page in the same dialog, in the note and in the "no model configured yet" state line. Keyboard-reachable; the search box still finds the row.
- Landing page: a searchable patch catalogue - every one of the 66 patches with its tier (core: Linux fix or plumbing; community) and the description from docs/patches.md, filterable by name or description, so the whole catalogue can be read before installing. The block is generated from that file (
scripts/gen-site-patch-catalog.py --write) and CI fails when the two drift. - Landing page (patrickjaja.github.io/claude-desktop-extra) now follows the README: every feature section (Extra settings, the Code tab as an IDE, custom models, Computer Use per session type, 3P inference), a filterable list of the 16 community features in the app's own groups, the patch counts with the two tiers (core: where Anthropic lacks compatibility; community: improvements and features), an "Add your use case" block, install commands and notes matching the README, and the page works without JavaScript. The Extra settings screenshot in the README is re-shot from the current page.
- Docs: the Opper gateway cookbook starts with a "Which route?" chooser and covers the 1P route (Models page, Opper (EU) preset, Fetch models) next to the 3P route; it names the current location of the Allow non-Anthropic models switch (Community Features, group Models and 3P) and carries a fresh screenshot of it. docs/custom-models.md states that custom models reach the Code picker only with a claude.ai login: in 3P mode the picker is the gateway's model list, while the Models page and the routing files still work there.
- The Models page now loads in 3P (managed / gateway) deployments, where the main window is served from
app://localhost; before, it showed an error instead of the provider list. The sender check that every page script of ours applies to its IPC calls is now one shared implementation (js/sender_guard.js), so all of them accept the same senders.
PR auto-archive delay: remaining time and keep button also with a claude.ai login
- With a nonzero PR auto-archive delay, the line with the time left below upstream's auto-archive hold notice and the Keep this session button in the session rail now also appear in 1P mode, where the Code tab is claude.ai's page. Upstream's notice text is unchanged; with the delay at Immediately the page only reads the setting once. If claude.ai's markup moves,
[archive-grace-ui]lines inclaude.ai-web.logsay which part was not found and upstream's UI stays as it is.