-
-
Notifications
You must be signed in to change notification settings - Fork 6
Installation
coe0718 edited this page May 23, 2026
·
4 revisions
Deskbrid is a single static binary with auto-detecting backends for multiple desktop environments.
Download the latest release from the GitHub releases page:
# Pick your version — replace v0.6.0 with the latest tag
curl -LO https://github.com/coe0718/deskbrid/releases/download/v0.6.0/deskbrid
chmod +x deskbrid
sudo mv deskbrid /usr/local/bin/git clone https://github.com/coe0718/deskbrid
cd deskbrid
cargo build --release
sudo cp target/release/deskbrid /usr/local/bin/# System dependencies
sudo apt install -y grim wl-clipboard
# Install GNOME Shell extension
deskbrid setup
# Or manually:
cp -r extensions/deskbrid@deskbrid ~/.local/share/gnome-shell/extensions/
gnome-extensions enable deskbrid@deskbridIf gnome-extensions enable fails on newer GNOME versions:
# Check your GNOME version
gnome-shell --version
# If your version isn't in metadata.json, either:
# 1. Update shell-version in metadata.json, or
# 2. Disable version validation temporarily:
gsettings set org.gnome.shell disable-extension-version-validation "true"# System dependencies (Arch)
sudo pacman -S grim wl-clipboard ydotool
# System dependencies (Debian - ydotool may need to be built from source)
sudo apt install grim wl-clipboard
# Fix /dev/uinput permissions (ydotool needs write access)
echo 'KERNEL=="uinput", GROUP="input", MODE="0660"' | sudo tee /etc/udev/rules.d/99-input.rules
sudo udevadm control --reload-rules
sudo chmod 0660 /dev/uinput && sudo chgrp input /dev/uinput
sudo usermod -aG input $USER # log out and back inAdd to your Hyprland config (~/.config/hypr/hyprland.conf):
exec-once = ydotoold
# System dependencies (Debian)
sudo apt install spectacle imagemagick wl-clipboard ydotool
# System dependencies (Arch)
sudo pacman -S spectacle imagemagick wl-clipboard ydotoolAdd ydotoold to KDE autostart (~/.config/autostart/ydotoold.desktop):
[Desktop Entry]
Type=Application
Name=ydotoold
Exec=ydotoold
Terminal=false
X-KDE-autostart-phase=2Fix /dev/uinput permissions (same as Hyprland):
echo 'KERNEL=="uinput", GROUP="input", MODE="0660"' | sudo tee /etc/udev/rules.d/99-input.rules
sudo udevadm control --reload-rules
sudo chmod 0660 /dev/uinput && sudo chgrp input /dev/uinput
sudo usermod -aG input $USER # log out and back in# System dependencies
sudo apt install xdotool wmctrl xclip scrot # Debian
sudo pacman -S xdotool wmctrl xclip scrot # Arch# Start in background
deskbrid daemon &
# Or with verbose logging
deskbrid daemon --verbose &
# Or with MCP server on TCP port
deskbrid daemon --mcp-port 18796 &# Check daemon status
deskbrid status
# List windows
deskbrid windows list
# Get system info
deskbrid system info# Build with MCP support included by default
cargo build --release
# Start MCP server on stdio
deskbrid mcpAdd to your AI coding tool's MCP config:
{
"mcpServers": {
"deskbrid": {
"command": "deskbrid",
"args": ["mcp"]
}
}
}Claude Desktop (~/.config/Claude/claude_desktop_config.json):
{
"mcpServers": {
"deskbrid": {
"command": "/usr/local/bin/deskbrid",
"args": ["mcp"],
"env": {
"PATH": "/usr/local/bin:/usr/bin:/bin"
}
}
}
}Cursor (.cursor/mcp.json):
{
"mcpServers": {
"deskbrid": {
"command": "deskbrid",
"args": ["mcp"]
}
}
}- Accessibility
- Apps
- Audio
- Backlight (LED driver)
- Bluetooth
- Clipboard
- Color Picker
- Desktop Portal
- Desktop Settings
- Files
- Hotkeys
- Input
- Keyboard Layouts
- Media (MPRIS)
- Monitors
- Network
- Notifications
- Print (CUPS)
- Screenshots
- Screen Recording
- Screencast
- Self-Update
- System
- System Tray
- Systemd Units & Timers
- Terminals (PTY)
- Windows & Workspaces