From 62b2acebe6806c7b0e2ca6a43c6b2419a627b8dc Mon Sep 17 00:00:00 2001 From: A user Date: Fri, 2 Dec 2022 12:55:53 -0300 Subject: Add support for Flatpak for Git updating (#274) Co-authored-by: Ven --- src/ipcMain/updater/git.ts | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'src/ipcMain') diff --git a/src/ipcMain/updater/git.ts b/src/ipcMain/updater/git.ts index 07c94cb..20cc5b1 100644 --- a/src/ipcMain/updater/git.ts +++ b/src/ipcMain/updater/git.ts @@ -28,10 +28,13 @@ const VENCORD_SRC_DIR = join(__dirname, ".."); const execFile = promisify(cpExecFile); +const isFlatpak = Boolean(process.env.FLATPAK_ID?.includes("discordapp") || process.env.FLATPAK_ID?.includes("Discord")); + function git(...args: string[]) { - return execFile("git", args, { - cwd: VENCORD_SRC_DIR - }); + const opts = { cwd: VENCORD_SRC_DIR }; + + if (isFlatpak) return execFile("flatpak-spawn", ["--host", "git", ...args], opts); + else return execFile("git", args, opts); } async function getRepo() { @@ -61,9 +64,13 @@ async function pull() { } async function build() { - const res = await execFile("node", ["scripts/build/build.mjs"], { - cwd: VENCORD_SRC_DIR - }); + const opts = { cwd: VENCORD_SRC_DIR }; + + let res; + + if (isFlatpak) res = await execFile("flatpak-spawn", ["--host", "node", "scripts/build/build.mjs"], opts); + else res = await execFile("node", ["scripts/build/build.mjs"], opts); + return !res.stderr.includes("Build failed"); } -- cgit