[3.0.x backport] bluray: add a custom JAVA_HOME setting for BD-J
Merge request reports
Activity
added MRStatus::Reviewable label
At least for VLC we need that option. libbluray is using an old version of java with a lot of deprecated stuff. I can't even build it on my Debian with the default JDK (see !5355). It's possible at some point some of these deprecated things will be gone from the current JDK and we need a way to point VLC to a more compliant Java version.
The environment variable won't work in some cases, for example I'm not sure you can make an alias of a program on macOS and changing its environment. And even if you could IMO it's more user hostile than setting the value inside the VLC options.
To run BD-J content, libbluray looks for an installed JRE in the most likely locations. This search can currently only be guided by changing the
JAVA_HOME
environment variable. But this is system wide change, and cause problem when multiple JRE are present (ping pong variable definitions each time switching between VLC and any other Java app). As Steve Lhomme points out, this will be an even more serious issue when OpenJDK 8 support will end.The purpose of this advanced option is to allow the user to definitively specify the
JAVA_HOME
he wants the libbluray to use directly in VLC without modifying the environment variable (which is imo more user friendly than this external parameter, as it is not even documented in VLC). By default this option is not set, which means that the default (current) auto-detection behavior is used (it is indicated in the help bubble), so no change for unaware users.If people want bluray menus, they already have to know they need to install a JRE. So either they don't have one and there's nothing to do after they instal one. But maybe later they install one that doesn't work anymore with bluray and we need a way to point (just) VLC to the old JRE still installed.
Either they have one, but in the far future it doesn't work with libbluray either. We also need a way to point (just) VLC to the old JRE still installed.
It may not be necessary now, but it might in the future. It will be too late to make a release just for that.
added MRStatus::InReview label and removed MRStatus::Reviewable label
added Component::Input: optical media label
changed milestone to %3.0.x maintenance
added MRStatus::Stale label and removed MRStatus::InReview label