Skip to content

hakerdefo/pmrp-ng

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

📻 PMRP-NG

The ultimate, lightweight, and resilient terminal internet radio player for Linux and macOS.

PMRP-NG is the next-generation successor to the classic pmrp script (featured in distros like antiX Linux). After 11 years, PMRP has been completely rewritten from the ground up to utilize modern tools, leaving behind hardcoded stations for a vast, dynamically updated global directory.

✨ Features

  • 🌍 Infinite Stations: Powered by the open Radio-Browser API, giving you instant access to over 40,000 global radio stations.
  • ⚡ Blistering Fast Interface: Uses fzf and jq for instant, fuzzy-searchable, and beautifully aligned columnar menus.
  • 🛡️ Resilient Connections: Automatically shuffles and pings multiple API directory servers on startup, locking onto the fastest available one to ensure the app never breaks if a server goes down.
  • ⭐ Star Map (Favorites): Bookmark stations directly after listening with a single keystroke. Access them instantly from the main menu.
  • 🎵 MPV Powered: Relies on the incredibly stable mpv engine for seamless background buffering and playback.

🛠️ Installation and Usage

1. Install Dependencies

PMRP-NG relies on a few standard, highly optimized terminal utilities. Install them via your package manager:

Debian/Ubuntu/antiX:

sudo apt-get install curl jq mpv fzf bsdmainutils

(Note: bsdmainutils provides the column command on most Debian-based systems).

Arch Linux:

sudo pacman -S curl jq mpv fzf util-linux

macOS (Homebrew):

brew install curl jq mpv fzf

2. Installation Methods

Download pmrp-ng zip, extract its contents and copy the file pmrp-ng to /usr/local/bin directory:

sudo cp pmrp-ng /usr/local/bin/

Next make it executable,

sudo chmod 755 /usr/local/bin/pmrp-ng

Or use the good ol' git directly:

git clone https://github.com/hakerdefo/pmrp-ng.git
cd pmrp-ng
sudo cp pmrp-ng /usr/local/bin/
sudo chmod 755 /usr/local/bin/pmrp-ng

3. Usage

Open terminal, run pmrp-ng, select a station according to your mood and don't forget to turn up the volume.

🕹️ Controls

Once a station is playing, mpv handles the stream.

  • Space or p : Pause the playback.
  • q or Ctrl+C : Stop playback and return to the menu.
  • 9 and 0 : Decrease / Increase volume.

📜 A Note on Legacy

The original pmrp was created over a decade ago, relying on mpg123 and hardcoded station lists. It holds a proud legacy, serving thousands of users. If you are looking for that classic, ultra-minimal version, you can find the legacy repository here. This Next-Gen version brings dynamic search and modern API integration while maintaining the lightweight spirit of the original.

🙏 Support

If you like pmrp-ng, please consider supporting it, even the smallest contribution goes a long way. It is quick & easy via PayPal, Buy Me a Coffee or Liberapay:

Support via PayPal
"Buy Me A Coffee"
Support via Liberapay

🪪 License

License: MIT

PMRP-NG is released under the MIT License.


Created with ❤️ and 🎼 by hakerdefo.

Contributors

Languages