aboutsummaryrefslogtreecommitdiff
path: root/launcher
diff options
context:
space:
mode:
authorSefa Eyeoglu <contact@scrumplex.net>2022-11-05 11:09:51 +0100
committerGitHub <noreply@github.com>2022-11-05 11:09:51 +0100
commit695734636f9c8668d447edce24dc1b0e3dd00214 (patch)
tree8c060602834034ad4c4a4a7f49f0820c62fc8beb /launcher
parent5e9b26dbef1c7cf917af17585c4282f58fc5eaef (diff)
parentbdac2a5f4d8b3a87a103fb008b9e790671c0b930 (diff)
downloadPrismLauncher-695734636f9c8668d447edce24dc1b0e3dd00214.tar.gz
PrismLauncher-695734636f9c8668d447edce24dc1b0e3dd00214.tar.bz2
PrismLauncher-695734636f9c8668d447edce24dc1b0e3dd00214.zip
Merge pull request #294 from piperswe/add-snapcraft-yml
Diffstat (limited to 'launcher')
-rw-r--r--launcher/java/JavaUtils.cpp25
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;