Switchyard
A rules-based browser launcher for Linux.
Features#
- Rule-based routing: Automatically open URLs in specific browsers based on powerful patterns.
- Multi-condition rules: Combine multiple conditions with AND/OR logic for precise control.
- Multiple pattern types: Exact Domain, URL Contains, Wildcard, and Regex matching.
- Custom URI scheme: Create links that specify browser preferences directly with
switchyard://URLs. - Quick browser picker: When no rule matches, quickly select a browser with keyboard or mouse.
- Keyboard shortcuts: Press Ctrl+1-9 to instantly select a browser.
- Lightweight: Runs only when needed, no background processes.
- GTK4 + libadwaita: Native GNOME look and feel.
Installation#
Flatpak (Recommended)#
Switchyard is available on Flathub:
flatpak install flathub io.github.alyraffauf.Switchyard
Nix Flake#
nix run github:alyraffauf/switchyard
Building from Source#
For non-Flatpak builds, requires Go 1.24+, GTK4/libadwaita development libraries, and just.
just install-deps # For Fedora
just build
sudo just install # To /usr/local
Building Flatpak#
just flatpak # Build and install
Documentation#
- Using - Set as default browser, usage examples.
- Configuration - Config file format, rules, and settings.
- URI Scheme - Custom
switchyard://URLs for specifying browser preferences. - Prior Art - Similar tools that inspired Switchyard.