This guide will help you set up Caspian on Linux (Ubuntu/Debian).
# Update package list
sudo apt update
# Install required system libraries
sudo apt install -y \
libwebkit2gtk-4.1-dev \
build-essential \
curl \
wget \
file \
libxdo-dev \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
pkg-config# Using NodeSource repository (recommended for latest version)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
# Verify installation (should be 20.19+ or 22.12+)
node --version
npm --version# Install Rust using rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Reload your shell or run:
source ~/.cargo/env
# Verify installation
rustc --version
cargo --versionFollow the official Claude Code CLI installation instructions for Linux.
# Clone the repository
git clone https://github.com/TheCaspianAI/Caspian.git
cd Caspian
# Install Node.js dependencies
npm install
# Run in development mode
npm run tauri:dev:linux# Build for production
npm run tauri:build:linux
# Or use the convenience script
./scripts/build-linux.shThe built application will be available in src-tauri/target/release/bundle/.
-
WebKit2GTK not found
sudo apt install libwebkit2gtk-4.1-dev
-
Build tools missing
sudo apt install build-essential pkg-config
-
SSL/TLS errors
sudo apt install libssl-dev
-
AppIndicator issues
sudo apt install libayatana-appindicator3-dev
- Linux builds may have different performance characteristics compared to macOS
- Window transparency and effects are handled differently on Linux
- Some visual effects available on macOS may not be available on Linux
- GTK-based window management provides standard Linux desktop integration
The Linux build includes:
.desktopfile for application menu integration- System notification support
- Standard GTK window decorations
- File association support
The Linux build will create:
.debpackage for Debian/Ubuntu systems.AppImagefor universal Linux compatibility- Raw binary in the
bundledirectory
- Window vibrancy effects (available on macOS) are not supported on Linux
- Some native integrations may behave differently
- System notifications may vary based on desktop environment
If you encounter issues specific to Linux, please:
- Check this troubleshooting guide
- Ensure all system dependencies are installed
- Report Linux-specific issues on the GitHub repository