Commit 19568a364975

Vincent Demeester <vincent@sbr.pm>
2026-07-02 12:01:33
feat(emacs): added empv for Subsonic music
Added empv package with Subsonic integration and keybindings under C-c M prefix for playback control and queue management.
1 parent 40a87bb
Changed files (2)
dots
config
emacs
home
common
dots/config/emacs/init.el
@@ -3423,6 +3423,30 @@ With \\[universal-argument] \\[universal-argument]: always prompt with completio
   :commands (ytr)
   :bind ("C-c m y" . ytr))
 
+(use-package empv
+  :commands (empv-subsonic-search
+             empv-subsonic-artists
+             empv-subsonic-albums
+             empv-subsonic-playlists
+             empv-subsonic-songs)
+  :bind (("C-c M s" . empv-subsonic-search)
+         ("C-c M a" . empv-subsonic-albums)
+         ("C-c M SPC" . empv-toggle)
+         ("C-c M i" . empv-display-current)
+         ("C-c M n" . empv-playlist-next)
+         ("C-c M p" . empv-playlist-prev)
+         :prefix "C-c M q"
+         :prefix-map empv-queue-map
+         ("s" . empv-playlist-select)
+         ("c" . empv-playlist-clear)
+         ("r" . empv-playlist-shuffle)
+         ("l" . empv-playlist-loop-on)
+         ("L" . empv-playlist-loop-off))
+  :config
+  (setq empv-subsonic-url "https://music.sbr.pm"
+        empv-subsonic-username (passage-get "home/music.sbr.pm/username")
+        empv-subsonic-password (passage-get "home/music.sbr.pm/password")))
+
 (use-package ready-player
   :init
   (declare-function ready-player-mode "ready-player")
home/common/dev/emacs.nix
@@ -107,6 +107,7 @@ let
       rg
       ready-player
       pkgs.ytr
+      empv
       ghostel
       scopeline
       shr-tag-pre-highlight