Claude Desktop su Arch Linux
Perché in Linux, quel che manca puoi fartelo da solo...
⏱️ Lettura: ~10 minuti
☕☕ Caffè necessari: nessuno.
Se hai Arch Linux sarai già fin troppo eccitato.
Nota preliminare (sì, è meglio se la leggi)
Quello che segue è scritto per chi usa Linux a base Arch: EndeavourOS (la mia scelta), Manjaro, CachyOS e qualsiasi altra derivata che abbia accesso all’AUR.
Se usi macOS o Windows: Anthropic distribuisce client nativi ufficiali per entrambi i sistemi. Scaricali direttamente da https://claude.ai/download e chiudi questa finestra.
Se usi un’altra distribuzione Linux, la guida non ti è direttamente applicabile, ma qualcosa esiste anche per te. Il progetto aaddrick produce pacchetti
.debper Debian/Ubuntu,.rpmper Fedora/openSUSE, un Nix flake per NixOS e un’AppImage. L’aggiornamento è manuale in tutti i casi, e nessuno di questi percorsi include l’integrazione Cowork patchata disponibile su Arch. Ma per la chat desktop funzionano.
Il problema
Questo blog non ospita spesso guide e tutorial. Non è per snobismo: è che di tutorial ne esistono già a migliaia, ottimi e meno ottimi, e aggiungerne altri significa principalmente aumentare il rumore. Quando però si tratta di costruire qualcosa che non esiste allora una guida ha senso. Questo è uno di quei casi e probabilmente non sarà l’ultimo.
Una precisazione che diventerà ricorrente: su questo blog le guide sono e saranno sempre per Arch Linux e derivate. Dove rilevante, come in questo caso, verranno indicate le alternative per chi usa altri sistemi operativi. Ma i comandi nel dettaglio e le istruzioni passo per passo, sono e saranno per Arch Linux.
Quella di usare esclusivamente Linux è una scelta personale, basata sul fatto che, oltre ad essere una scelta davvero etica, aiuta a tenere in forma i neuroni. Arch in particolare, ti chiede di capire quello che stai facendo invece di cliccare su “avanti, avanti, installa”, sporcando i tasti di banana. Ancora a proposito di questo, devo aggiungere che se il copia-e-incolla di istruzioni da questo articolo al vostro computer comporterà la totale perdita dei dati, l’incendio del laptop che si propagherà alla casa, una guerra termo-nucleare, un’invasione zombie e la morte di centinaia di cuccioli, la responsabilità sarà solo vostra.
E ora, il problema concreto.
Anthropic distribuisce tre prodotti client: Claude Desktop (macOS e Windows), Claude Code (CLI multipiattaforma, Linux incluso) e Cowork (integrato in Desktop). Su Linux esiste Claude Code — ottimo, potente, e sufficiente per la maggior parte degli usi tecnici. Ma non esiste un client desktop nativo.
Questo significa che chi usa Linux non può accedere a Desktop e Cowork tramite i canali ufficiali. Il che non è un problema per chi lavora esclusivamente da terminale, ma lo diventa se si vuole esplorare l’intero ecosistema degli strumenti di Anthropic — incluso Computer Use, il server MCP per l’automazione del desktop.
La community Arch ha risposto con una serie di pacchetti AUR. Vediamo cosa c’è, cosa vale e cosa evitare. E come installare il meglio.
Pacchetti AUR: analisi comparativa
Nell’AUR esistono oggi quattro percorsi distinti. Li ordino per rilevanza pratica decrescente.
1. claude-desktop-bin — il più completo e raccomandato
Maintainer: patrickjaja (https://github.com/patrickjaja/claude-desktop-bin)
È il progetto più serio, attivo e tecnicamente sofisticato disponibile. Il repository GitHub viene aggiornato automaticamente via GitHub Actions ad ogni nuovo rilascio upstream di Anthropic: quando esce una nuova versione di Claude Desktop per Windows, entro breve il pacchetto AUR è aggiornato in sincronia.
Il meccanismo è quello di patchare il binario ufficiale Windows invece di riscrivere un client da zero: il PKGBUILD scarica l’eseguibile Anthropic, lo modifica tramite script in Nim e Python che intervengono sul file .asar dell’applicazione Electron, e lo rende compatibile con Linux. Non è reverse engineering nel senso classico — è adattamento automatizzato di qualcosa che già funziona.
Funzionalità abilitate su Linux rispetto al client nativo macOS/Windows:
Chat completa, identica all’interfaccia desktop ufficiale
Computer Use MCP server con 27 strumenti per automazione del desktop: screenshot, click, digitazione, scroll, drag, gestione clipboard e altro
Cowork Linux (sperimentale): richiede il daemon
claude-cowork-serviceseparato; comunica tramite Unix domain socket al posto della Named Pipe WindowsImagine/Visualize MCP server: abilitato tramite un flag interno, porta nelle sessioni Cowork gli strumenti
show_widgeteread_me(le stesse visualizzazioni interattive che appaiono in questa interfaccia web)Quick Entry: hotkey globale per aprire Claude da qualsiasi contesto
Tray icon di sistema
Il maintainer è reattivo: risponde ai bug report sulla pagina AUR e rilascia fix rapidi, come testimonia la sequenza di patch -5, -6 etc. visibile nello storico dei commenti AUR.
Installazione:
yay -S claude-desktop-bin2. claude-cowork-service — il daemon compagno per Cowork
Maintainer: patrickjaja (stesso sviluppatore di claude-desktop-bin)
Senza questo pacchetto, claude-desktop-bin funziona normalmente per chat, Computer Use e Quick Entry. Il tab Cowork mostra un messaggio di errore con istruzioni per installarlo. Con il daemon attivo, le sessioni Cowork funzionano end-to-end.
Il daemon gira come systemd user service (claude-cowork.service) e si collega a Claude Desktop tramite un Unix socket collocato in $XDG_RUNTIME_DIR/cowork-vm-service.sock. Questo socket sostituisce la Named Pipe Windows usata dal backend nativo su macOS e Windows.
yay -S claude-cowork-service
systemctl --user enable --now claude-cowork.service3. claude-desktop-appimage — alternativa leggera
Maintainer: aaddrick (https://github.com/aaddrick/claude-desktop-debian)
Questo progetto ripacchettizza l’applicazione Windows ufficiale producendo formati multipli: .deb, .rpm, AppImage e un pacchetto AUR. Il pacchetto AUR installa la build AppImage. Include anche un Nix flake per chi vive in quell’ecosistema.
yay -S claude-desktop-appimageÈ un’alternativa valida se si vuole la chat desktop senza le patch più invasive di claude-desktop-bin. Non implementa il supporto Cowork patchato né il Computer Use MCP, ma è più conservativo nei confronti del binario originale.
4. claude-desktop e claude-desktop-native — da evitare
claude-desktop (maintainer: zxp19821005): è un client Electron basato sul repository GitHub Karenina-na/Claude-Desktop, non il binario ufficiale Anthropic. Si connette all’API come client di terze parti. Non ha rapporto diretto con il prodotto Anthropic reale, non riceve aggiornamenti frequenti.
claude-desktop-native: problemi attivi di checksum (SHA256 mismatch sull’eseguibile upstream), maintainer originale che ha abbandonato il progetto, fork non mergeati. Allo stato attuale: da non installare.
Installazione completa: il percorso consigliato
# Passo 1 — il client desktop
yay -S claude-desktop-bin
# Passo 2 — il daemon Cowork (opzionale ma necessario per la funzionalità completa)
yay -S claude-cowork-service
systemctl --user enable --now claude-cowork.serviceClaude Code CLI, se già installato, non viene toccato. Nel PKGBUILD di claude-desktop-bin, claude-code è dichiarato come optdepends, non come dipendenza obbligatoria. Il daemon lo rileva automaticamente tramite $PATH, risolvendo il binario claude con bash -lc. La tua installazione esistente rimane intatta.
Le dipendenze opzionali: quali installare in base al proprio setup
claude-desktop-bin dichiara una lista di dipendenze opzionali che coprono tutti i possibili ambienti desktop Linux. La scelta giusta dipende dal session type.
Primo passo: identifica il tuo ambiente.
echo $XDG_SESSION_TYPE && echo $XDG_CURRENT_DESKTOPPoi installa solo le dipendenze pertinenti al tuo caso:
X11 (inclusa XWayland pura):
sudo pacman -S --needed xdotool scrot imagemagick wmctrlWayland generico / Sway / Hyprland:
sudo pacman -S --needed ydotool grim jqGNOME Wayland:
sudo pacman -S --needed ydotool gnome-screenshot socatglib2, python-gobject e gst-plugin-pipewire coprono già il percorso primario di screenshot su GNOME 46+ tramite il portale PipeWire. Se sono già installati (molto probabile su un GNOME aggiornato), non è necessario aggiungere altro per quella funzione. gnome-screenshot serve come fallback. socat non aggiunge funzionalità ma riduce la latenza del Quick Entry toggle da circa 25ms a circa 2ms.
KDE Plasma Wayland:
Nessuna dipendenza aggiuntiva necessaria.
Configurare ydotool su GNOME/Wayland
ydotool è il componente critico per Computer Use su qualsiasi compositor Wayland: senza di esso, Claude non può controllare il desktop (click, digitazione, scroll). Il pacchetto da solo non basta — richiede il daemon ydotoold attivo.
systemctl --user enable --now ydotoolVerifica che il socket sia accessibile:
echo $YDOTOOL_SOCKETSe il valore è vuoto, impostalo esplicitamente e aggiungilo al profilo della shell:
export YDOTOOL_SOCKET="/tmp/.ydotool_socket"
# Aggiungilo a ~/.zshenv o ~/.bashrc per renderlo persistenteIl socket deve essere visibile anche al servizio claude-cowork, che non eredita le variabili di sessione utente per default. Verifica che sia presente nell’ambiente systemd:
systemctl --user show-environment | grep YDOTOOLSe manca, propagalo manualmente e riavvia il daemon:
systemctl --user set-environment YDOTOOL_SOCKET="/tmp/.ydotool_socket"
systemctl --user restart claude-cowork.serviceNota finale
L’approccio di patching automatizzato adottato da patrickjaja ha un vantaggio strutturale rispetto a qualsiasi client riscritto da zero: non insegue funzionalità, insegue rilasci. Quando Anthropic aggiunge qualcosa a Desktop, il processo di patch si adatta.
Questo vantaggio comporta un limite speculare: il binario Windows deve continuare ad essere distribuito nella forma attuale. Se Anthropic cambiasse struttura di distribuzione in modo radicale, le patch smetterebbero di funzionare. È un rischio reale, ma nel frattempo questo è il modo più completo per usare Claude Desktop su Linux.


