Based on claude-desktop-linux-flake, discovered via reddit, Claude built this all inclusive bash script to build the desktop client for Linux on Ubuntu. I would guess that it works on Debian, but I haven't tested it.
The build script assumes that you already have node, pnpm, rust, and cargo installed. If you don't, you'll need to install them first. I'm not going to include how to do that here, because it's pretty easy to find that information elsewhere.
- First, install the required dependencies:
# Install system packages
sudo apt-get install p7zip-full imagemagick icoutils
# Install electron globally via npm
sudo pnpm install -g electron
- Run the build script:
./build-claude-desktop.sh
The script will:
- Check for required dependencies
- Create a stub native module using Rust and NAPI-RS
- Download and extract the Windows client
- Process icons for Linux
- Modify and repackage the app.asar
- Create desktop entries and launcher scripts
The built application will be in the claude-desktop
directory. You can run it using ./claude-desktop/bin/claude-desktop
.
A few notes:
- The script creates stub implementations for the native functions, which means some features might not work (like global shortcuts)
- Global shortcuts are confirmed to work on Ubuntu/X11 24.04
- It includes Wayland support via environment variables
- Global shortcuts may not be available on Wayland due to lack of implementations
- The build process requires quite a bit of disk space for intermediary files
- You might want to add the binary directory to your PATH or copy the files to system locations
The build script in this repository is dual-licensed under the terms of the MIT license and the Apache License (Version 2.0). This follows the licensing of the original repository (claude-desktop-linux-flake).
See LICENSE-MIT and LICENSE-APACHE for details.
The Claude Desktop application, not included in this repository, is likely covered by Anthropic's Consumer Terms.