Autowire
by nidszxh
Automatically route audio when devices connect
About
Autowire is a lightweight, set-and-forget audio profile manager for GNOME. Define a profile once — link a hardware device (USB dock, Bluetooth headset, HDMI monitor) to a set of default audio inputs and outputs — and Autowire silently applies it every time that device connects. No more manually switching four dropdowns in Settings every time you move between your desk and your laptop. Autowire runs as a background service and reacts to PipeWire/WirePlumber hardware events instantly, before you even play a sound. Features: - Create named Audio Profiles linked to any USB, Bluetooth, or HDMI device - Automatically switch default output (speakers, headphones) and input (microphone) - Event-driven daemon — near-zero resource usage at idle - Clean Libadwaita interface that matches GNOME Settings - Runs as a systemd user service — works even when the UI is closed - Force high-quality Bluetooth codecs (AAC, LDAC, aptX) instead of mSBC - Multiple profiles per device — switch between Music and Call modes - Auto-switch for calls — daemon detects active mic streams and switches between HSP/HFP and A2DP automatically - Import and Export profiles via JSON files - Desktop notifications on routing events - Profiles stored locally in a simple JSON file - Keyboard shortcuts: Ctrl+N, Ctrl+Q, F5
Permissions
3 permissions weaken the sandbox. Flatsonar asks before installing.
- unrestricted access to the session D-Bus (all your running apps)
--socket=session-bus - sandbox escape: can run commands on the host via flatpak-spawn
--talk-name=org.freedesktop.Flatpak - talks to system service org.freedesktop.WirePlumber
--system-talk-name=org.freedesktop.WirePlumber - inter-process communication (needed for X11)
--share=ipc - Wayland display
--socket=wayland - X11 display, only when Wayland is unavailable
--socket=fallback-x11 - GPU acceleration
--device=dri - audio
--socket=pulseaudio - access to xdg-run/pipewire-0
--filesystem=xdg-run/pipewire-0 - talks to org.freedesktop.WirePlumber
--talk-name=org.freedesktop.WirePlumber - access to ~/.config/autowire
--filesystem=~/.config/autowire:create
Who publishes this
The creator demonstrably controls this app id: Flathub verification, the hosting account owns the namespace, or a well-known file on their domain.
- hosted by github.com/nidszxh, which owns the io.github namespace of io.github.nidszxh.Autowire
publisher:namespace
Maintenance
Recent activity on the upstream repository, or built and reviewed by Flathub.
No staleness signals: recent activity, or built and reviewed by Flathub.