You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
add a minimal Ubuntu 24.04 Linux desktop validation workflow
build both Linux native player bridges and run the desktop/media-player JVM suites under Xvfb
run the existing Linux DEB tooling fixture tests
document Ubuntu build/runtime dependencies and focused playback diagnostics
allow secret-free builds by leaving the optional local.properties input unset when the file is absent
PR type
Reproducible bug fix
UI glitch/bug fix
Behavior bug/regression fix
Small maintenance only, with no UI or behavior change
Docs accuracy fix
Translation/localization only
Approved larger or directional change
Why
The Linux branch currently has no build/test check. A clean-worktree CI spike also found that generateRuntimeConfigs assigned a nonexistent local.properties file to an optional Gradle input, which made otherwise secret-free desktop tests fail before compilation.
This is the CI job and Linux note Arjun explicitly requested after merging the teardown and EOF replay follow-ups.
Desktop scope
Linux desktop only. The workflow builds the libmpv application bridge and GStreamer media-player bridge, then runs the Linux-relevant desktop JVM suites. The Gradle input fix only makes an already-optional local file genuinely optional; generated values and builds with an existing file are unchanged.
Thanks for building this — a Linux CI job was a real gap.
One thing changed under it: NuvioMedia#295 was merged into Dev as 1654a8c3, so linux-desktop-support has served its purpose.
The better route is straight to NuvioMedia/NuvioDesktop, targeting Dev. Your commits went in with NuvioMedia#295 so you're already a contributor there, and this is your work — it should carry your name into the upstream history rather than arrive through me.
If you retarget it upstream I'll follow it there and answer anything on the Linux side. I'll leave this PR open until you've opened that one, so nothing gets lost.
One small note for when you do, not blocking: the base will need to move from linux-desktop-support to Dev. The Linux bridge is byte-identical between the two, so nothing under composeApp/src/desktopMain/native/linux should conflict.
Thanks — I moved the reviewed CI/docs commit directly upstream as requested: NuvioMedia#474
It targets Dev at exact head faf20aac77000bc90fb359a8802f20817338435f. PR-template validation has passed and the Linux workflow is running. I have left this fork PR open for you to close or retain as you prefer.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
local.propertiesinput unset when the file is absentPR type
Why
The Linux branch currently has no build/test check. A clean-worktree CI spike also found that
generateRuntimeConfigsassigned a nonexistentlocal.propertiesfile to an optional Gradle input, which made otherwise secret-free desktop tests fail before compilation.This is the CI job and Linux note Arjun explicitly requested after merging the teardown and EOF replay follow-ups.
Desktop scope
Linux desktop only. The workflow builds the libmpv application bridge and GStreamer media-player bridge, then runs the Linux-relevant desktop JVM suites. The Gradle input fix only makes an already-optional local file genuinely optional; generated values and builds with an existing file are unchanged.
Issue or approval
Approved/requested in #6 (comment).
UI / behavior impact
Policy check
CONTRIBUTING.md.Scope boundaries
desktop-release.ymlTesting
Linux host, clean worktree based on
78e454cc, with nolocal.properties:generateRuntimeConfigsrejected the missing optional inputxvfb-run --auto-servernum ./gradlew :composeApp:buildLinuxPlayerBridge :composeApp:desktopTest :composeMediaPlayer:jvmTest --no-daemon --stacktrace./scripts/test-linux-deb-tools.sh: passed:composeApp:generateRuntimeConfigs --rerun-taskswith a disposable presentlocal.properties: passedubuntu:24.04containergit diff --check: passedScreenshots / Video
Not a UI change.
Breaking changes
None.
Linked issues
Approved follow-up to NuvioMedia#295; maintainer request linked above.