From 9773ae0d24ef7bb232c23584c9c09b39a134fd14 Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Sat, 13 Jul 2019 08:18:23 -0700 Subject: [PATCH] Packaging: Linux AppImage - Part 1 (#405) * Update script * Copy desktop file * Add icon512 * Create AppImage * Add AppRun --- .gitignore | 1 + assets/images/icon512.png | Bin 0 -> 10120 bytes scripts/linux/AppRun | 6 ++++++ scripts/linux/Onivim2.desktop | 6 ++++++ scripts/linux/package-linux.sh | 31 +++++++++++++++++++++++++++++++ scripts/release.js | 6 ++++-- 6 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 assets/images/icon512.png create mode 100755 scripts/linux/AppRun create mode 100644 scripts/linux/Onivim2.desktop create mode 100755 scripts/linux/package-linux.sh diff --git a/.gitignore b/.gitignore index 059ed02a17..49d257b8d8 100644 --- a/.gitignore +++ b/.gitignore @@ -65,6 +65,7 @@ typings/ _build/ _esy/ _release/ +_staging/ .DS_Store setup.txt diff --git a/assets/images/icon512.png b/assets/images/icon512.png new file mode 100644 index 0000000000000000000000000000000000000000..87a703f3c62deb115dd2f13ad31a75239a6363ed GIT binary patch literal 10120 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 { return path.join(rootDirectory, "vendor", nodeDir, "linux-x64", "node"); } } - -if (process.platform == "darwin") { +if (process.platform == "linux") { + const result = cp.spawnSync("esy", ["scripts/linux/package-linux.sh"], { cwd: process.cwd(), env: process.env, stdio: 'inherit'}); +console.log(result.output.toString()); +} else if (process.platform == "darwin") { const executables = [ "Oni2",