Skip to content

chore(apps): update NaviBeat for Linux (terminal client, UPnP casting) - #420

Open
nenadjokic wants to merge 1 commit into
navidrome:masterfrom
nenadjokic:navibeat-linux-tui-upnp
Open

chore(apps): update NaviBeat for Linux (terminal client, UPnP casting)#420
nenadjokic wants to merge 1 commit into
navidrome:masterfrom
nenadjokic:navibeat-linux-tui-upnp

Conversation

@nenadjokic

Copy link
Copy Markdown
Contributor

Description

Updates the existing NaviBeat for Linux catalog entry. It predates two features and one distribution channel:

  • A full terminal client. navibeat --tui draws the whole app in a terminal, so it runs over SSH on a headless server or a Raspberry Pi, and it starts that way by itself when there is no display. Same library, queue, downloads and MPRIS integration as the window.
  • Casting to UPnP and DLNA renderers. Speakers, receivers and TVs are found automatically on every network interface, the format is negotiated from the device's own Sink list, and the queue follows the speaker.
  • apt and dnf repositories alongside the AppImage.

Two gallery slots now show the terminal client. Nothing was added to the gallery: the two screenshots they replace were a Now Playing shot the lyrics screenshot already covers, and an artist grid the album grid already covers. Still five images.

Type of change

  • App catalog entry (new app or update) — fill in the section below
  • Documentation
  • Bug fix
  • Styling / layout
  • Other

Checklist

  • Internal links use Hugo's relref shortcode
  • I previewed my changes locally (npm start) when relevant
  • The build passes (npm run build)

No links, layout or templates were touched, and the build needs Docker which was not available here; validate:app and convert:images were both run instead.

📱 Adding or updating an app in the catalog?

Guide: https://www.navidrome.org/docs/developers/adding-apps/

  • App supports the OpenSubsonic, Subsonic, or Navidrome API
  • Folder under assets/apps/ uses kebab-case (e.g. my-awesome-app)
  • index.yaml has all required fields: name, url, platforms, api, description, screenshots.thumbnail
  • Thumbnail is a real screenshot of the app (not a logo or icon)
  • Images are WebP, max 1200px, under 500KB each (npm run convert:images <app-name>)
  • npm run validate:app <app-name> passes
  • I'm the app's author/maintainer, or have permission to submit it

npm run convert:images navibeat-linux reports nothing to do (all six images are WebP, at most 1200px wide, largest 84KB), and npm run validate:app navibeat-linux passes with no errors or warnings.

The entry predates two features and one distribution channel:

- a full terminal client (--tui) that runs over SSH on a headless server or a
  Raspberry Pi, and starts by itself when there is no display
- casting to UPnP and DLNA renderers, with discovery on every interface
- apt and dnf repositories alongside the AppImage

Two gallery slots now show the terminal client, replacing a Now Playing shot the
lyrics screenshot already covered and an artist grid the album grid already
covered. The gallery stays at five images, all WebP under 500KB and no wider
than 1200px; npm run convert:images reports nothing to do and npm run
validate:app passes with no errors or warnings.
@github-actions

github-actions Bot commented Aug 9, 2026

Copy link
Copy Markdown

App Validation Results

Validation run: 2026-08-09 22:23:33 UTC


Validating: navibeat-linux

App: navibeat-linux
Status: PASSED ✅

Validation passed


✅ All validations passed!

@github-actions

github-actions Bot commented Aug 9, 2026

Copy link
Copy Markdown

Preview Deployment

Status URL
✅ Deployed pr-420.navidrome-website.pages.dev

Built from 7128b14

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant