Detect Flatpak installations of Rider and Visual Studio Code

This commit is contained in:
2022-07-07 15:18:10 +03:00
parent 45dfa52512
commit a66be45e72
2 changed files with 15 additions and 1 deletions

View File

@@ -191,7 +191,6 @@ void RiderCodeEditor::FindEditors(Array<CodeEditor*>* output)
#endif #endif
#if PLATFORM_LINUX #if PLATFORM_LINUX
// TODO: detect Snap installations // TODO: detect Snap installations
// TODO: detect Flatpak installations
// TODO: detect by reading the jetbrains-rider.desktop file from ~/.local/share/applications and /usr/share/applications? // TODO: detect by reading the jetbrains-rider.desktop file from ~/.local/share/applications and /usr/share/applications?
FileSystem::GetChildDirectories(subDirectories, TEXT("/usr/share/rider")); FileSystem::GetChildDirectories(subDirectories, TEXT("/usr/share/rider"));
@@ -202,6 +201,11 @@ void RiderCodeEditor::FindEditors(Array<CodeEditor*>* output)
// Versions installed via JetBrains Toolbox // Versions installed via JetBrains Toolbox
FileSystem::GetChildDirectories(subDirectories, localAppDataPath / TEXT(".local/share/JetBrains/Toolbox/apps/Rider/ch-0")); FileSystem::GetChildDirectories(subDirectories, localAppDataPath / TEXT(".local/share/JetBrains/Toolbox/apps/Rider/ch-0"));
FileSystem::GetChildDirectories(subDirectories, localAppDataPath / TEXT(".local/share/JetBrains/Toolbox/apps/Rider/ch-1")); // Beta versions FileSystem::GetChildDirectories(subDirectories, localAppDataPath / TEXT(".local/share/JetBrains/Toolbox/apps/Rider/ch-1")); // Beta versions
// Detect Flatpak installations
SearchDirectory(&installations,
TEXT("/var/lib/flatpak/app/com.jetbrains.Rider/current/active/files/extra/rider/"),
TEXT("flatpak run com.jetbrains.Rider"));
#endif #endif
for (auto directory : subDirectories) for (auto directory : subDirectories)

View File

@@ -70,6 +70,16 @@ void VisualStudioCodeEditor::FindEditors(Array<CodeEditor*>* output)
return; return;
} }
} }
// Detect Flatpak installations
{
if (Platform::RunProcess(TEXT("/bin/bash -c \"flatpak list --app --columns=application | grep com.visualstudio.code -c\""), String::Empty) == 0)
{
const String runPath(TEXT("flatpak run com.visualstudio.code"));
output->Add(New<VisualStudioCodeEditor>(runPath, false));
return;
}
}
#endif #endif
} }