Crates.io | angry-duiker |
lib.rs | angry-duiker |
version | 0.14.1 |
created_at | 2025-04-08 18:12:14.04668+00 |
updated_at | 2025-08-10 16:03:11.749766+00 |
description | A TUI DLNA music player |
homepage | |
repository | https://gitlab.com/fizzizist/angry-duiker-2 |
max_upload_size | |
id | 1625781 |
size | 2,909,358 |
A TUI DLNA music player. Allows you to stream your music from any DLNA server on your network such as Plex or MiniDLNA. This project was inspired by termusic. It's meant to be more lightweight and designed to stream from a media server rather than from disk.
OS | Kitty | Ghostty | Alacritty |
---|---|---|---|
Ubuntu | ✅ | ✅ | ✅ |
Arch | untested | ✅ | untested |
Windows | untested | untested | untested |
MacOS | untested | ✅ | untested |
DLNA Server | Status |
---|---|
Plex | ✅ |
MiniDLNA | untested |
cargo install angry-duiker
angry-duiker
Press c
when you open the app.
The album art is finicky and specific to the terminal emulator and font that you are using. This, and some other options, are configurable via the auto-generated config file at $HOME/.config/angry-duiker/config.toml
. page_size
refers to how many rows you jump down when using the page up/down keys.
Options with the last_
prefix refer to the last.fm integration. The user must supply a key and secret, but the session key will be automatically generated.
image_protocol_type = "halfblocks"
image_width = 10
page_size = 10
last_api_key = "<your last.fm api key>"
last_api_secret = "<your last.fm api secret>"
Different terminals use different packages for image rendering.
Option | Description |
---|---|
"" | Disables album art rendering completely. |
halfblocks | Blurry, but renders in most terminal emulators. |
kitty | Renders in Kitty and Ghostty (that I know of). |
sixel | Probably renders in Alacritty (with Sixel support). |
iterm2 | Probably renders in iTerm2 (I haven't tested this). |
Depending on the width of your font, you may want to customize how many columns you allocate for the album art.
To set up the last.fm integration, you will need to complete a couple of steps:
config.toml
file.L
, this will open a browser and have you authenticate with last.fm.config.toml
file.This project is fully open source and welcomes contributions 🙂. Every MR should have a corresponding issue. No AI slop please 🙏.