Skip to content

Repository files navigation

le fipindicateur

fipindicateur · l'antenne de nuit, à portée de cadran

CI

A tiny system-tray app for FIP (Radio France) webradios. L'antenne de nuit, à portée de cadran.

What it is

Pick one of the 13 FIP stations from your tray, see who you're hearing, and play / pause from the menu, your media keys, or playerctl. On the main antenna the tray also knows the émission on air (Club Jazzafip, Transe Fip Express…) and what comes next. Turn on the opt-in, 100% local listening log and fipindicateur stats renders « Fin d'émission », a self-contained offline report of your nights: hours, a night clock, session lengths, a Markov graph of your zapping, release-year epochs, a 2D artist constellation, and the émissions you kept company with. Like or dislike the current track straight from the tray. Diffuser sur… casts the antenna to a Chromecast speaker on your network: devices are discovered automatically, local playback pauses so the sound never doubles, and « Sur cet appareil » brings it back. On Linux, « Le panneau » IS the interface: a slick popup drawer with the current track, play/pause, a real volume slider, the « Sortie » output picker, the crossfade and réglages, the programme à venir, your history, and the 13 stations as colored chips; while casting, the slider drives the device's own volume (your amp's master level, read from the device, never guessed). The tray icon speaks gestures: left-click opens the panel (under GNOME's appindicator extension that is a double-click, its constraint, not ours), middle-click toggles play/pause, scroll adjusts the volume, right-click opens the réglages. macOS and Windows keep the classic tray menu. Nothing ever leaves your machine.

Unofficial client. Linux (Ubuntu 24.04, GNOME/X11) is the supported target; macOS and Arch are kept buildable.

Quick start

sudo apt install libmpv2 libmpv-dev   # Ubuntu/Debian runtime + build deps
make install                          # user-level install (binary, launcher, icons)
fipindicateur                         # or launch from GNOME activities (Super, "fip")
fipindicateur stats                   # open your listening report (after opting in)
fip status                            # drive the running app from a terminal (fip pause, fip station jazz)

The report

Rapport « Fin d'émission » (données fictives)

The report above is rendered from fictional fixture data, not anyone's real listening. Top to bottom: the headline totals and tuner-dial gauge, the night clock and weekday grid, and the Markov graph of station zapping (arrow thickness = frequency). The full page continues with release-year epochs, the artist constellation, label economics, taste verdicts, and an Achievements wall. It is theme-aware (dark and light).

Les émissions

FIP's main antenna carries named programmes between stretches of free rotation. The tray follows them: the émission on air shows in the menu, a Calendrier submenu lists the next ones (a single metadata poll carries two to three days of programming), and a desktop notification can announce a programme starting, once, at its start. Two settings in Réglages, both on by default: émission notifications and the calendar. The webradios have no programmes; everything simply stays hidden there.

With the local history log on, tracks remember the émission they aired within, and the report gains « Tes rendez-vous », your most-listened programmes counted across nights, plus a pass of 26 émission insignia: fidelity to a rendez-vous, consecutive evenings, time and titles heard in émission, the Sunday-evening listener…

Palmarès avec les insignes d'émissions (données fictives)

Also fictional fixture data: twelve simulated evenings, three programmes. Locked insignia state their progress; nothing is ever teased that the data cannot substantiate.

Privacy by design. Analytics are opt-in and default off. Events are appended to ~/.local/share/fipindicateur/events.jsonl; the report is a self-contained offline HTML page (no network, no CDN). See it, open the data folder, or erase it (two-click confirm) from the same submenu. Deleting the stats log never touches your track history, a separate consent and a separate file.

Docs

  • Features : the full feature list, the FIP station colors, verified streams, and credits.
  • Install & usage : dependencies, platforms, autostart, updates, media keys, GNOME notifications.
  • Development : make targets, house style, the telemetry-by-design architecture, the report toolchain, tools/enrich. make selftest drives 350 scripted interactions through the real panel in the real webkit, headless (xvfb); CI publishes light and dark screenshots of every panel view on each push.
  • Design system and Product : the « Fin d'émission » tokens, typography, and voice.
  • Changelog and Contributing.

License

GPL-3.0-or-later. See LICENSE. The player / MPRIS code derives from WTFPL-licensed work, which is GPL-compatible. FIP streams and metadata are the property of Radio France; please support FIP through their official channels.

Releases

Packages

Contributors

Languages