termsonic - a TUI Subsonic client (latest release)
This project implements a terminal-based client for any Subsonic-compatible server.
It currently supports the following:
- Browsing of Subsonic library organised by Artists and Albums
- Playback of OGG, FLAC and MP3 files
- Playlist support
- Play queue management
Installing
Termsonic is currently packaged and readily available for the following operating systems:
OpenBSD
# pkg_add termsonic
The OpenBSD package is maintained by Russ Sharek.
NixOS
$ nix-shell -p termsonic
Archlinux
Termsonic is available in the Archlinux User Repository (AUR), under the termsonic-git package name. You can install it manually, or using one of the many AUR helpers.
$ yay -S termsonic-git
Other Linux, Windows
If Termsonic isn't packaged for your distribution, you can download the latest release and run it directly.
Building
This application requires Go version 1.19 at minimum.
$ git clone https://git.sixfoisneuf.fr/termsonic && cd termsonic
$ go build ./cmd/termsonic/
Linux notes
Please note that Linux builds additionally need a working C compiler in their PATH. This is due to faiface/beep, used for audio playback.
You will also need the ALSA development libraries for your system. On
Debian, this is libasound2-dev
.
Configuration
The application reads its configuration from
$XDG_CONFIG_DIR/termsonic.toml
, or
~/.config/termsonic.toml
if XDG_CONFIG_DIR
doesn't exist.
On Windows, it reads its configuration from
%APPDATA%\\Termsonic\\termsonic.toml
.
You can edit the configuration from inside the app, or by hand using
a text editor. See the example
configuration file, and the TOML
reference. It is possible to specify another configuration file with
the -config
command-line argument.
Reporting bugs
Please report any bug you find to bugs+termsonic@sixfoisneuf.fr. I'll gladly accept patches, as long as they follow the git-send-email format.