A simple terminal UI player for di.fm
Find a file
2023-06-20 16:41:48 -06:00
.github/workflows Bump golang version / workflow versions 2022-11-27 11:40:02 -05:00
app Improve connection quality and latency resilience 2023-06-01 19:57:47 -06:00
components Add favorite toggle support 2023-05-23 17:40:32 -06:00
config Improve connection quality and latency resilience 2023-06-01 19:57:47 -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 Updated label for keyboard controls to be more user friendly 2022-11-27 11:17:48 -05:00
.gitignore UI Improvements 2020-03-01 17:41:04 -05:00
.goreleaser.yml Replace oto with pulseaudio 2020-11-18 10:47:46 -07:00
CHANGELOG.md Official first release 2020-04-10 00:01:31 -04:00
go.mod Update 'pulse' dependency 2023-05-30 16:21:01 -06:00
go.sum Update 'pulse' dependency 2023-05-30 16:21:01 -06:00
LICENSE Initial commit 2020-02-23 21:48:39 -05:00
main.go Improve connection quality and latency resilience 2023-06-01 19:57:47 -06:00
README.md Update README.md 2022-01-17 11:14:25 -08: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

Linux

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

If your $GOPATH is not set, see https://github.com/golang/go/wiki/SettingGOPATH

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

Run

di-tui