A simple terminal UI player for di.fm
Find a file
Adriano Caloiaro dea89f2692
Revert "Remove post-release step"
This reverts commit d285916451.
2024-01-15 18:41:38 -07:00
.github/workflows Revert "Remove post-release step" 2024-01-15 18:41:38 -07:00
app Simpler album art fetching 2024-01-08 21:35:52 -03:00
components Simpler album art fetching 2024-01-08 21:35:52 -03:00
config Add support for color themes 2023-07-08 15:07:03 -06:00
context Improve connection quality and latency resilience 2023-06-01 19:57:47 -06:00
difm Improve connection quality and latency resilience 2023-06-01 19:57:47 -06:00
player Fix leaky stream on channel switch bug 2023-06-20 16:41:48 -06:00
views feat: Add pause with space keybinding 2023-10-14 08:57:40 -06:00
.gitignore packaging: Add nix flake 2023-08-24 09:16:52 +02:00
.goreleaser.yml Fix typo in goreleaser config 2023-08-05 09:24:35 -06:00
CHANGELOG.md Official first release 2020-04-10 00:01:31 -04:00
default.nix Update default.nix with latest version number 2024-01-16 01:26:26 +00:00
flake.lock Add gomod2nix config/post-release.yml 2024-01-15 15:54:23 -07:00
flake.nix Add gomod2nix config/post-release.yml 2024-01-15 15:54:23 -07:00
go.mod Simpler album art fetching 2024-01-08 21:35:52 -03:00
go.sum Simpler album art fetching 2024-01-08 21:35:52 -03:00
gomod2nix.toml Add gomod2nix config/post-release.yml 2024-01-15 15:54:23 -07:00
LICENSE Initial commit 2020-02-23 21:48:39 -05:00
main.go feat: Add pause with space keybinding 2023-10-14 08:57:40 -06:00
README.md Update app screenshot 2023-09-15 09:57:22 +02:00
shell.nix Add gomod2nix config/post-release.yml 2024-01-15 15:54:23 -07:00

di-tui

A simple terminal UI player for di.fm Premium

App Screenshot

Dependencies

PulseAudio

Both linux and MacOS depend on pulseaudio to be running.

MacOS

By default, pulseaudio on MacOS runs as "root", which is not ideal. PulseAudio is best run by non-root users. By symbolically linking the pulseaudio plist file into your user's ~/Library/LaunchAgents/, it runs as your user.

brew install pulseaudio
ln -s $(brew info pulseaudio | grep "/usr/local/Cellar" | awk '{print $1}')//homebrew.mxcl.pulseaudio.plist ~/Library/LaunchAgents
brew services start pulseaudio

Debian / Ubuntu

apt install pulseaudio

Install

Binary Releases

There are binary builds available in releases.

With go install

go install github.com/acaloiaro/di-tui@latest

If $GOPATH/bin is not on your $PATH (modify accordingly for ZSH users ~/.zshrc)

echo "export PATH=$PATH:$GOPATH/bin" >> ~/.bashrc
source ~/.bashrc

Run with nix run

nix run github:acaloiaro/di-tui

Authenticate

There are two authentication options

  • Enter your username and password directly into di-tui
  • If you're justifiably uncomfortable with entering your username/password into this application, copy your "Listen Key" from (https://www.di.fm/settings) and create the following file:

~/.config/di-tui/config.yml

token: <YOUR LISTEN KEY>
album_art: <BOOLEAN>
key description
token Your di.fm authentication "Listen Key" found at https://www.di.fm/settings
album_art Turn album art on or off

Configuration

Themes

By default, di-tui respects your terminal's color scheme. However, there are four color settings that one can change by adding a theme to config.yml.

Tomorrow-Night inspired theme

theme:
  primary_color: "#81a2be"
  background_color: "#2a1f1a"
  primary_text_color: "#969896"
  secondary_text_color: "#81a2be"

Run

di-tui