Skip to content

Linthra v0.1.14

Choose a tag to compare

@github-actions github-actions released this 05 Aug 19:40
· 94 commits to main since this release
75de789

Linthra v0.1.14 release notes

Linthra is an Android music player for local files and self-hosted music servers. v0.1.14 improves album browsing, fixes compilation and collaboration grouping, adds full light/dark appearance support, and makes first-time server synchronization clearer.

  • Version: 0.1.14 (versionName), versionCode 114999
  • Platform: Android
  • Application ID: io.github.thezupzup.linthra
  • License: MPL-2.0

What's new

Compilation and collaboration albums stay together

  • Linthra now prefers a provider-namespaced album ID when grouping tracks.
  • Tracks from the same album remain grouped even when each track credits a different artist or collaborator.
  • Jellyfin and Plex also use their album-artist metadata when available; local files use an embedded album-artist tag when present.
  • Navidrome/Subsonic albums use the server-provided album ID without guessing an album artist.
  • Existing catalogs and settings are preserved by an additive database migration.
  • Allow or start a library sync after updating so existing tracks receive the new album metadata.

A responsive album grid

  • The Albums tab now shows two cover-focused columns on phones instead of one full-width row per album.
  • Wider screens gain additional columns only when enough space is available.
  • Album artwork remains square, while long titles and artist names are safely truncated.
  • Tap and long-press behavior remains unchanged, including album navigation and bulk playlist actions.
  • Layout and semantics adapt to larger text sizes and accessibility tools.

System, Light, and Dark appearance modes

  • Linthra now follows the phone's light or dark setting by default.
  • Settings → Appearance includes explicit System, Light, and Dark choices.
  • The selected mode is restored before the first frame, avoiding a theme flash at startup.
  • Light palettes were retuned and tested for readable contrast while preserving Linthra's visual identity.

Clearer first synchronization

  • Empty-library screens now recognize active Jellyfin, Navidrome/Subsonic, and Plex synchronization.
  • Linthra names the source being synchronized when one source is active, and uses a general message when several are active.
  • Plex users are no longer shown the unrelated local-folder prompt while their server library is scanning.
  • Navidrome/Subsonic users no longer see a misleading empty-catalog message while the first sync is still filling the library.

Release and F-Droid reliability

  • The release version remains fully defined in pubspec.yaml, with the matching in-app version enforced by tests.
  • F-Droid can detect the v0.1.14 tag automatically and derive the three per-ABI version codes: 1149991, 1149992, and 1149993.
  • Dependency resolution remains locked through the committed pubspec.lock and flutter pub get --enforce-lockfile.
  • Pull-request CI validates the Android release lint path before the immutable stable tag is created.
  • The stable publisher verifies the universal APK, AAB, and all three signed per-ABI APKs on the GitHub Release.

Upgrade and distribution notes

  • Normal in-place updates preserve accounts, settings, playlists, catalog, favorites, and cache.
  • Run or allow one server-library sync after updating to populate the new album identifiers for existing tracks.
  • Do not mix GitHub and F-Droid installations because the APKs use different signing keys and cannot update one another.
  • F-Droid builds and signs its own APKs from the source tag; GitHub Release APKs are signed by the upstream project.

No ads, no tracking, no analytics, no telemetry. Linthra plays music you already own or that your own server provides.