diff --git a/app/src/lib/helpers/linux.ts b/app/src/lib/helpers/linux.ts index fbe3c7742e2..9a2f88c21f4 100644 --- a/app/src/lib/helpers/linux.ts +++ b/app/src/lib/helpers/linux.ts @@ -22,7 +22,7 @@ export function convertToFlatpakPath(path: string) { return path } - if (path.startsWith('/opt/')) { + if (path.startsWith('/opt/') || path.startsWith('/var/lib/flatpak')) { return path } @@ -31,6 +31,13 @@ export function convertToFlatpakPath(path: string) { export function formatWorkingDirectoryForFlatpak(path: string): string { return path.replace(/(\s)/, ' ') } + +export function formatPathForFlatpak(path: string): string { + if (path.startsWith('/var/lib/flatpak/app')) { + return path.replace('/var/lib/flatpak/app/', '') + } + return path +} /** * Checks the file path on disk exists before attempting to launch a specific shell * @@ -84,12 +91,13 @@ export function spawnEditor( options: SpawnOptions ): ChildProcess { if (isFlatpakBuild()) { + const actualpath = formatPathForFlatpak(path) const EscapedworkingDirectory = formatWorkingDirectoryForFlatpak( workingDirectory ) return spawn( 'flatpak-spawn', - ['--host', path, EscapedworkingDirectory], + ['--host', actualpath, EscapedworkingDirectory], options ) } else {