diff --git a/runtime/src/js/misc.js b/runtime/src/js/misc.js index 2f0661d93..91efa1136 100644 --- a/runtime/src/js/misc.js +++ b/runtime/src/js/misc.js @@ -26,6 +26,10 @@ const createDir = (dirName) => { } }; +export const insideFlatpak = () => { + return platform() === 'linux' && fs.existsSync('/.flatpak-info'); +} + // This function is used to get the python executable path // based on the platform. Use this for deployment. const getPythonPath = () => { @@ -37,8 +41,11 @@ const getPythonPath = () => { case 'darwin': pythonPath = '../../Frameworks/Python.framework/Versions/Current/bin/python3'; break; - case 'linux': - pythonPath = '../venv/bin/python3'; + case 'linux': + pythonPath = '../venv/bin/python3'; + if (insideFlatpak()) { + pythonPath = '/usr/bin/python'; + } break; default: if (platform().startsWith('win')) { diff --git a/runtime/src/js/pgadmin.js b/runtime/src/js/pgadmin.js index 0f3a3ad13..116f51812 100644 --- a/runtime/src/js/pgadmin.js +++ b/runtime/src/js/pgadmin.js @@ -29,6 +29,10 @@ let pythonPath = misc.getPythonPath(); let pgadminFile = '../web/pgAdmin4.py'; let configFile = '../web/config.py'; +if (insideFlatpak()) { + pgadminFile = '/app/pgAdmin4/web/pgAdmin4.py'; +} + // Override the paths above, if a developer needs to if (fs.existsSync('dev_config.json')) { try {