-
-
Notifications
You must be signed in to change notification settings - Fork 6
Installation
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.10.0 with the latest tag
curl -LO https://github.com/coe0718/deskbrid/releases/download/v0.10.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
⚠️ Notification daemon required. Standalone Wayland compositors (Hyprland, Sway, Niri, Wayfire, Labwc, COSMIC) don't ship a notification daemon. Deskbrid'snotify sendwill time out after 30 seconds without one. Install one of:
- dunst — lightweight, highly configurable (
sudo pacman -S dunst)- mako — minimal, Wayland-native (
sudo pacman -S mako)- swaync — Sway-style notification center (
sudo pacman -S swaync)Then add it to your compositor's autostart (e.g.
exec-once = dunstfor Hyprland). Deskbrid'ssystem.healthcheck will warn if no notification daemon is detected.
# 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