Claude Desktop 1.24012.11
Claude Desktop 1.24012.11
This release provides Claude Desktop version 1.24012.11 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.24012.11/claude-desktop-extra-1.24012.11-1-x86_64.pkg.tar.zst
# ARM64
sudo pacman -U https://github.com/patrickjaja/claude-desktop-extra/releases/download/v1.24012.11/claude-desktop-extra-1.24012.11-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.24012.11-1_amd64.deb
# ARM64
sudo apt install ./claude-desktop-extra_1.24012.11-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.24012.11-1.x86_64.rpm
# ARM64
sudo dnf install ./claude-desktop-extra-1.24012.11-1.aarch64.rpmNixOS / Nix
nix run github:patrickjaja/claude-desktop-extraAppImage (Any Distro)
# x86_64
chmod +x Claude_Desktop-1.24012.11-x86_64.AppImage
./Claude_Desktop-1.24012.11-x86_64.AppImage
# ARM64
chmod +x Claude_Desktop-1.24012.11-aarch64.AppImage
./Claude_Desktop-1.24012.11-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) | 490e52168588f9056da78bd68adf04f50dc7b0502a058d899cf9a47874c2062f |
| Arch pacman (aarch64) | c16f19f889e49f87347a00ac2fd0ed3a7bcbf18e2eab0056f9eddf6b35bc31ab |
| Tarball (x86_64) | 9f11a4979ec3f6c58dbb3112a1549ce96074749de26476c7b940d06b0839d62b |
| Tarball (aarch64) | 3842eaaf9ae31fe5e292eb347b2e3460e8f089c8da7a462e11956f75378ec604 |
| AppImage (x86_64) | 0842e7afe0919b25697a735bb20f1df8908466928401126e457d505efb09598c |
| AppImage (aarch64) | ecaa4a161964765e379dc8ad9672da4448f4675145a1f19d573a5f18a52c5378 |
| Debian (amd64) | 3dcd48dd832c934fcfc2f1e0ac9cd631cd820042332460c796ef978bdad5c90d |
| Debian (arm64) | dde90257b36c209baf7fec948c9b7ed76f3d1c4df65bb3c86127dba2600028f8 |
| RPM (x86_64) | 374d16d92880f72ff1d9c09ea91bd80ac182948730bf3766496bc580ef1ab592 |
| RPM (aarch64) | 9f2637f91c70fdbf532d89784ed07cc1cccd6bc7c50da63905fe8deb126898dd |
Changes since last release
From CHANGELOG.md, 2026-08-07:
The Code tab's side panels can open as tabs instead of a split
Diff, terminal, browser, files, artifacts and background tasks have always shared the panel area as a fixed split, each one shrinking to make room for its neighbours. A new Panel tabs switch (Settings → Extra → Features → Layout) turns that into a tab strip instead: each panel gets the full width of the panel area. Open panels the way you always have - the app's own toolbar buttons and its Session actions menu - and each one arrives as a new tab. Ctrl+1-9 jump straight to a tab, and closing one replays it through the panel's own close control, so panel teardown itself is unchanged. The chat column is unaffected.
Switching tabs shows and hides panels rather than rebuilding them, so every panel keeps its state: the diff panel's expanded and collapsed files are still expanded and collapsed when you come back, and the terminal keeps its scrollback and its size. Upstream's own layout is never rewritten to switch - the panels you are not looking at are still in it, just hidden - which is also why a switch is instant instead of taking the second a rebuild used to.
The consequence worth knowing: a hidden panel keeps running. A live preview goes on rendering and a browser tab goes on loading in the background, where closing a split pane would have torn them down. That is what makes them instant to come back to, and it costs some CPU for a preview that never stops moving.
The chat/side boundary stays where you put it. The panel area is sized as if it were a two-pane split - chat versus one panel - and that proportion is remembered per session, so opening or closing a panel no longer moves the boundary. Drag the divider between chat and the panel area to resize, exactly as before; where you drop it is where it stays, on every tab and after a reload.
The tab bar carries the expand control, at its right edge. Expanding spans the active panel across the window, and it stays expanded while you switch tabs, so you can flick between two panels at full width. Upstream discards the other panels while one is expanded, so the panel you switch to while expanded comes back fresh - collapse first if you want to keep where you were. With many tabs open the chips scroll sideways while the expand control stays pinned at the right edge, so it is always reachable.
Opening and closing panels does not disturb the layout. A panel the app has only just inserted is hidden before it can paint, rather than appearing as a second split for a few frames and then being tidied away, so the boundary holds still through the whole operation - measured at zero pixels of movement across every frame of an open and a close, where it previously jumped 165 px for around 90 ms each way.
Off by default, and off is a complete retreat: the tab bar and its styling are removed and upstream's real split layout is simply there again, because it was never replaced. Nothing you had open is lost. Only the active tab and the chat/side proportion are remembered per session - which panels are open is upstream's own record, so opening, closing or reordering panels in its UI is reflected in the tabs.
Because the Code tab is remote claude.ai code, the bar degrades rather than fights: if an update moves the internals it drives, it renders no bar and warns once, leaving the layout exactly as the app left it - and since it never rewrites that layout, the degraded state is just the stock split UI. Everything it reaches into is read-only: the only upstream controls it ever presses are the active panel's own close and expand buttons, and only when you press them. The anchors it depends on are inventoried with re-derivation recipes in baseline/PANEL_TABS_ANCHORS.md, which joins the per-release audit checklist.
Designed, built and hardened by @dels07 in #216 - thanks!
Diff views: the scope dropdown no longer survives a panel swap
Upstream reuses a panel's chrome row when one panel replaces another in the same slot, and the diff-views scope dropdown installed on that row could survive the swap and appear on a view it does not apply to. Installed dropdowns are now revalidated against the row's current view and removed when it no longer qualifies. A pre-existing bug, found and fixed in #216 because panel tabs made it easy to hit.
Release pipeline: releases can skip the AUR during an extended outage
The AUR preflight added on 2026-08-03 did its job: when the AUR went into maintenance again, the v1.24012.11 auto-release (run 30868900341) stopped before publishing anything, keeping every channel consistent. The right call for a blip - but this maintenance window has lasted days, freezing all channels behind one that is down. The release workflow now takes a skip_aur dispatch input: the AUR preflight and push are skipped, every other channel (GitHub Release, pacman repo assets, Pages apt/dnf repos, README/Nix versions) publishes normally, and the AUR catches up automatically on the next non-skipped release, since the push diffs the PKGBUILD against whatever the AUR currently holds. Unattended auto-releases keep the default false, so the fail-fast preflight still guards them.