Skip to content

Releases: Mendior/on-air-plasmoid

On Air 2026.4

Choose a tag to compare

@Mendior Mendior released this 06 Jul 12:15

Widget resizing fixed (#1), four dead default stations replaced, and a big stability & accessibility round.

Resizing (#1): a hardcoded maximum size clamped every resize attempt back to ~576×648 px, which looked exactly like "the widget always returns to its original size". The cap is gone — resize freely, the size sticks, extra height goes into the cover art, and an undersized popup scrolls instead of clipping the buttons. Thanks @Driglu4it for the report.

Default stations: Radio Mirchi, #1980s Zoom, NRJ and .977 Country had died over the years (403/404/hang). All four replaced with live, stable streams; every bundled station was probe-tested. Existing installs keep their own list, this only affects fresh setups.

Stability: MPRIS cleanup no longer leaves helper processes/files behind; the media-keys watcher can't fork-spin on a missing file; two instances no longer race each other's daemon; a finished local track clears the header; play/space toggles correctly after previews; starring a search result no longer stops the music; REC can't start during the stop fade.

Security & data safety: last remaining HTML-injection spot in the download bar closed; web-search URLs restricted to http(s); logo re-fetch keeps hand-entered URLs; stations export survives all shells; titles starting/ending with an apostrophe parse correctly; the metadata reader gets a hard OS-level runtime cap and copes with missing python-requests.

Accessibility: rows, buttons and the panel icon are now screen-reader friendly and fully keyboard-reachable; volume popup works with arrow keys; shortcuts stay quiet while typing.

Full details in the CHANGELOG.

Install: download on-air-2026.4.plasmoidkpackagetool6 --type Plasma/Applet --install on-air-2026.4.plasmoid (or --upgrade if already installed).

On Air 2026.3 — Stream recording

Choose a tag to compare

@Mendior Mendior released this 05 Jul 18:22

The recording release — instant + scheduled stream recording, plus 24 bug fixes from a second deep audit.

⏺ New: Stream recording

  • One-click REC on the Now Playing page — bit-exact stream copy (original quality) into ~/Music/OnAir, visible in My Music immediately, with a .tracks.txt track log.
  • Scheduled recordings (once / daily / weekly) on the My Music page — records in the background even while nothing is playing; a partially missed window records the remainder.
  • Format choice: Original (bit-exact, recommended) / MP3 (compatibility re-encode) / WAV (uncompressed).
  • Red REC indicators (footer timer, My Music bar, panel-icon dot), hard duration cap, orphan cleanup, one recording at a time.
  • Personal use only — see the README's Recording section.

🛠 24 confirmed fixes

Playback races (delayed auto-bitrate hijack, stop-restart), MPRIS wakeup race + instance startup race, '::' titles, HTML injection via station names (PlainText everywhere), ~ in download dir, #/dots in file names, keyboard (numpad Enter, Esc, focusable web results), settings-dialog data races, and more — full list in CHANGELOG.md.

Install: download on-air-2026.3.plasmoid below → kpackagetool6 --type Plasma/Applet --install on-air-2026.3.plasmoid (or upgrade with --upgrade). Requires ffmpeg for recording (optional).

On Air 2026.2

Choose a tag to compare

@Mendior Mendior released this 05 Jul 08:14

Changelog

2026.2

Hardening & polish release, based on a full code audit.

Security

  • Track-title AI cleanup is now sandboxed. The untrusted ICY stream title is passed to the optional claude CLI via stdin with --allowedTools "" --strict-mcp-config, so a malicious station name can no longer trigger any tool/command execution.

Accessibility

  • Custom round buttons are now exposed to screen readers (Orca) and are keyboard-reachable (Tab) and activatable (Space/Enter), with a visible focus ring.

Fixes

  • MPRIS: Stop/Pause no longer start playback — only PlayPause toggles.
  • MPRIS: state/command files and the D-Bus bus name now derive from the stable per-applet id instead of a timestamp — no more orphaned "ghost" media entries after a Plasma restart, and two widget instances no longer collide.
  • Downloads: a missing yt-dlp now shows a clear "yt-dlp is not installed" message instead of a confusing generic error.

New settings (now exposed in the config UI)

  • Follow system accent color — opt in to recolor the whole UI with your Plasma accent instead of the built-in emerald theme (off by default).
  • Download format (best / mp3 / opus / mp4), download folder, and the optional title cleanup toggle are now all configurable from Settings.

Housekeeping

  • All source comments translated to English.
  • Cleaned up package metadata (license, authors, removed stale localized descriptions); default download folder is ~/Music/OnAir.

2026.1

First public release. Modern animated UI, worldwide station search (radio-browser.info), live track info with album art, one-click track downloads (yt-dlp) with an offline library, recently-played history, MPRIS media keys, sleep timer, and more. Based on Advanced Radio Player by Yuri Saurov.

On Air 2026.1

Choose a tag to compare

@Mendior Mendior released this 04 Jul 12:26

First public release 🎉

On Air — beautiful internet radio widget for KDE Plasma 6.

  • 2026 UI: aurora backdrop, vinyl art, equalizers, emerald design
  • Worldwide station search (radio-browser.info, ~50 000 stations)
  • One-click track downloads at max quality (yt-dlp)
  • Offline library + recently-played history
  • MPRIS media keys, sleep timer, live track info + album art

Install: download on-air-2026.1.plasmoid below, then:

kpackagetool6 --type Plasma/Applet --install on-air-2026.1.plasmoid

Based on Advanced Radio Player by Yuri Saurov (LGPL-2.0-or-later).