Raga (राग) is Sanskrit for "melody": the melody you were looking for.
raga is youTube music and video for Vyom: one keyboard-driven panel that opens instantly, with live data, a preview and a key for everything. It runs on any compositor with the layer-shell protocol (sway, Hyprland, river, niri, Wayfire, labwc…). In Vayu, the desktop it was built for, it replaces music-search.py.
#Features
- Search as you type (yt-dlp, no Invidious), with thumbnails, durations, channels and views.
- Music plays in nāda (the music player: it lines up what comes next, shows the lyrics,
Ddownloads it), or without nāda goes into MPD's queue through rmpc; video opens in mpv, capped at 1080p. Shift+Enterplays the other way;Ctrl+Enteronly queues the music.- With rmpc, which queue entry plays is read from the queue itself, before and after adding:
rmpc addytexits 0 even when its download failed. - Keyboard first: every action has a key, shown in the footer; the mouse works too.
- Never freezes the panel: slow commands run in the background.
#Install
#Requirements
- Vyom 0.2.5 or newer (Python 3.11+, PyGObject, GTK 4, gtk4-layer-shell, a Nerd Font)
yt-dlp- optional: nāda, or rmpc + MPD (music)
- optional: mpv (video)
#Install
git clone https://github.com/Theyashsawarkar/raga ~/.local/share/vyom/plugins/raga
vyom reload # pick it up (or log out and in)
vyom raga # open it; run it again to close
Give it a key in your compositor, e.g. sway:
bindsym $mod+<key> exec vyom raga
#Update and uninstall
git -C ~/.local/share/vyom/plugins/raga pull && vyom reload # update
rm -rf ~/.local/share/vyom/plugins/raga && vyom reload # uninstall
#Usage
Open it with vyom raga (or your key). Type to search; the footer always shows the keys for what's selected.
| Key | Action |
|---|---|
Enter | Play the selected result (music: in nāda, or MPD via rmpc; video: in mpv) |
Shift+Enter | Play it the other way (as video / as music) |
Ctrl+Enter | Add the music to the queue without playing it |
Ctrl+M | Switch between music and video |
Esc | Close the panel |
Every Vyom panel also has Up/Down (or Ctrl+K/Ctrl+J) to move, Page Up/Page Down to jump and Tab to switch to the next tool.
#Configuration
Everything is optional, in ~/.config/vyom/config.toml under [plugin.raga]:
| Setting | Default | What it does |
|---|---|---|
mode | music | Music or video to start in |
nada_command | nada | The music player music goes to (empty: use rmpc) |
player_command | (none) | With rmpc: opened after music starts (e.g. your rmpc launcher) |
Run vyom reload after editing.
#Troubleshooting
- Nothing opens.
vyom listshows every installed tool, and why one is skipped (a missing requirement, or a Vyom that's too old). - It opened, then something failed. Look for a
Tracebackin~/.local/state/vyom/daemon.log, and open an issue with it. - No blur or rounded corners. That's the compositor: on SwayFX, add
layer_effects "vyom" { blur enable; corner_radius 20; shadows enable }.
#The Vyom family
Each tool is its own repository, so you install only the ones you want:
| Tool | What it does | |
|---|---|---|
| dvara | द्वार, gateway | The app launcher |
| ganit | गणित, mathematics | The calculator and converter |
| smriti | स्मृति, memory | Clipboard history |
| bhava | भाव, feeling, emotion | The emoji picker |
| tarang | तरंग, wave | Wi‑Fi and the hotspot |
| setu | सेतु, bridge | Bluetooth |
| doot | दूत, messenger | Your phone, through KDE Connect |
| patra | पात्र, vessel | Docker containers |
| suchana | सूचना, notice | Notifications |
| raga (this one) | राग, melody | YouTube music and video |
| mudra | मुद्रा, gesture | Keybinding search |
| urja | ऊर्जा, energy | The battery at a glance |
| vishram | विश्राम, rest | The power menu |
| kendra | केन्द्र, centre | Quick settings |
#Contributing
Bug reports, ideas and pull requests are welcome: see CONTRIBUTING.md for the development setup and the few rules every tool follows, and CHANGELOG.md for what changed in each release. Please report security issues privately (SECURITY.md).
#License
MIT.