diff options
author | Sefa Eyeoglu <contact@scrumplex.net> | 2022-11-05 11:09:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-05 11:09:51 +0100 |
commit | 695734636f9c8668d447edce24dc1b0e3dd00214 (patch) | |
tree | 8c060602834034ad4c4a4a7f49f0820c62fc8beb /launcher/java | |
parent | 5e9b26dbef1c7cf917af17585c4282f58fc5eaef (diff) | |
parent | bdac2a5f4d8b3a87a103fb008b9e790671c0b930 (diff) | |
download | PrismLauncher-695734636f9c8668d447edce24dc1b0e3dd00214.tar.gz PrismLauncher-695734636f9c8668d447edce24dc1b0e3dd00214.tar.bz2 PrismLauncher-695734636f9c8668d447edce24dc1b0e3dd00214.zip |
Merge pull request #294 from piperswe/add-snapcraft-yml
Diffstat (limited to 'launcher/java')
-rw-r--r-- | launcher/java/JavaUtils.cpp | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/launcher/java/JavaUtils.cpp b/launcher/java/JavaUtils.cpp index 6c0c60cd..5efbc7a8 100644 --- a/launcher/java/JavaUtils.cpp +++ b/launcher/java/JavaUtils.cpp @@ -439,19 +439,28 @@ QList<QString> JavaUtils::FindJavaPaths() javas.append(FS::PathCombine(prefix, "bin/java")); } }; + // java installed in a snap is installed in the standard directory, but underneath $SNAP + auto snap = qEnvironmentVariable("SNAP"); + auto scanJavaDirs = [&](const QString & dirPath) + { + scanJavaDir(dirPath); + if (!snap.isNull()) { + scanJavaDir(snap + dirPath); + } + }; // oracle RPMs - scanJavaDir("/usr/java"); + scanJavaDirs("/usr/java"); // general locations used by distro packaging - scanJavaDir("/usr/lib/jvm"); - scanJavaDir("/usr/lib64/jvm"); - scanJavaDir("/usr/lib32/jvm"); + scanJavaDirs("/usr/lib/jvm"); + scanJavaDirs("/usr/lib64/jvm"); + scanJavaDirs("/usr/lib32/jvm"); // javas stored in Prism Launcher's folder - scanJavaDir("java"); + scanJavaDirs("java"); // manually installed JDKs in /opt - scanJavaDir("/opt/jdk"); - scanJavaDir("/opt/jdks"); + scanJavaDirs("/opt/jdk"); + scanJavaDirs("/opt/jdks"); // flatpak - scanJavaDir("/app/jdk"); + scanJavaDirs("/app/jdk"); javas = addJavasFromEnv(javas); javas.removeDuplicates(); return javas; |