SongRec for Omarchy
Identify the song playing on your computer or around you from the Omarchy bar, like Shazam in iOS Control Center.
Click the waveform icon to start listening. It uses the theme accent and pulses while SongRec runs. On a match, a notification shows album art, title, and artist. Click the notification to play the track in Spotify (or open Shazam if no Spotify link is available).
Tap again while listening to cancel. After about 20 seconds with no match, listening stops and a “No match found” notification appears.
Requirements
If SongRec is missing, the first click (or the hotkey) installs songrec with pkexec pacman. Omarchy’s polkit dialog asks for your fingerprint or password. After it succeeds, listening starts automatically.
By default it listens to computer playback (the default speaker/headphone monitor) and the microphone at the same time, and uses whichever match arrives first. Set audioDevice to force a single device from songrec recognize -l.
Optional: the official Spotify desktop client, so notification clicks can play the match in the running app.
Install
omarchy plugin add https://github.com/cempack/SongRec.git --enable
Usage
- Left click the bar icon — start or cancel listening
- Super+Shift+Z — same toggle, if you bind it (see below)
omarchy-shell io.github.cempack.songrec toggle
Settings
Inline on the bar layout entry in ~/.config/omarchy/shell.json:
| Key | Default | Meaning |
|---|---|---|
audioDevice |
"" |
Device from songrec recognize -l. Empty listens to playback and the microphone. |
timeoutSec |
20 |
Seconds to listen before giving up (5–60). |
omarchy bar move io.github.cempack.songrec --section right
Keyboard shortcut
o.bind("SUPER + SHIFT + Z", "Identify song", "omarchy-shell io.github.cempack.songrec toggle")
Privileges and external commands
This plugin runs inside the Omarchy shell (your user session, unsandboxed). It may run:
songrec recognize --jsonto identify audiopkexec pacman -S --noconfirm --needed songreconly when SongRec is not installedcurlto download cover art into~/.cache/omarchy/songrecomarchy-notification-sendfor match and status toastsbusctl/omarchy-launch-spotify/spotify --uri=/xdg-openwhen you click a match notification
It does not change system files except the optional polkit-authorized songrec package install.
Tests
./tests/run
Remove
omarchy plugin remove io.github.cempack.songrec
License
MIT. See LICENSE.