A minimal radio player for the terminal.
Use Nix to execute:
nix run github:pascalj/rdo
Normal mode:
Enter: play selected stationSpace: stop playingj/kor↓/↑: select stationsJ/K: move selected station down / upn: new statione: edit selected stationd: delete selected station (asks to confirm)q: quit
Edit / add mode:
Tab: switch between the name and URL fieldEnter: saveEsc: cancel
Delete confirmation:
Enter: confirmEsc: cancel
Stations are saved as CSV in $XDG_CONFIG_HOME/rdo/stations.csv, e.g.:
name,url
detektor.fm - Wort,https://streams.detektor.fm/wort/mp3-256/website/
radio lclhst,http://radio.lclhst.net/listen.m3u
Fields containing commas, quotes, or newlines are quoted per RFC 4180.
The flake exposes a home-manager module for declaring stations from your NixOS / home-manager config:
{imports=[inputs.rdo.homeManagerModules.default];# Apply the overlay so pkgs.rdo resolves, or set programs.rdo.package# explicitly.nixpkgs.overlays=[inputs.rdo.overlays.default];programs.rdo={enable=true;stations=[{name="detektor.fm - Wort";url="https://streams.detektor.fm/wort/mp3-256/website/";}{name="radio lclhst";url="http://radio.lclhst.net/listen.m3u";}];};}While stations is non-empty the CSV file is a symlink into the Nix store.
