fa1e3bd710e67df003a99251b615c7ede10c869a
supersonic
A lightweight desktop client for Subsonic music servers. This is in early development and if you decide to use it now, expect to find a few bugs and missing features.
On first startup, the app will prompt you for your Subsonic server connection. The app currently has a searchable albums grid view, an artist discography view, and individual album view with tracklist.
Features
- Fast, lightweight, native UI
- High-quality gapless audio playback powered by MPV
- Infinite scrolling
- Scrobble plays to server
- Browse, search, and play albums
- Album view with tracklist
- Browse by genre (partial; full support coming soon)
- Browse by artist (partial; full support coming soon)
- View and edit play queue (coming soon)
- Set/unset favorite and browse by favorites (coming soon)
- Browse, create, and edit playlists (coming soon)
- Shuffle and repeat playback modes (planned)
- Set and view five-star rating (planned)
- Browse by folders (planned)
- Multi-server support (planned)
- Download album or playlist (planned)
- Cast to uPnP/DLNA devices (tentatively planned)
Build instructions (Ubuntu)
Install dependencies
sudo snap install --classic gosudo apt install libmpv-devsudo apt install gcc libegl1-mesa-dev xorg-dev
Build
- clone the repo, CD into the repo root, and run
go build . - (note that the first build will take some time as it will download and build the UI library)
Build instructions (Mac OS)
Install dependencies
- install go
- install Xcode command-line tools (
xcode-select --install) - install libmpv (
brew install mpv)
Build
-
Make sure header and library include paths include the dir in which homebrew installs headers/dylibs (may differ dep. on OS/Homebrew version)
export C_INCLUDE_PATH=/opt/homebrew/include:$C_INCLUDE_PATHexport LIBRARY_PATH=/opt/homebrew/lib:$LIBRARY_PATH
-
clone the repo, CD into the repo root, and run
go build . -
(note that the first build will take some time as it will download and build the UI library)
Build instructions (Windows)
Install dependencies
- install go (https://go.dev/doc/install)
- install MSYS2 and the required packages for the Fyne toolkit (follow instructions for Windows at https://developer.fyne.io/started/)
- install libmpv (in the MSYS2 terminal,
pacman -S mingw-w64-x86_64-mpv)
Build
- in the MSYS2 terminal: clone the repo, CD into the repo root, and run
go build . - (note that the first build will take some time as it will download and build the UI library)
Languages
Go
96.7%
Shell
1.1%
C
0.9%
Objective-C
0.8%
Makefile
0.3%
Other
0.2%