From e5021187e96b78b53203bd95d08d6818aea47d17 Mon Sep 17 00:00:00 2001 From: "Thomas F. K. Jorna" Date: Wed, 14 Jul 2021 15:10:31 +0200 Subject: New Ignite 7.0.6 app --- bin/postInstall | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100755 bin/postInstall (limited to 'bin/postInstall') diff --git a/bin/postInstall b/bin/postInstall new file mode 100755 index 0000000..af540d2 --- /dev/null +++ b/bin/postInstall @@ -0,0 +1,40 @@ +#!/usr/bin/env node + +const childProcess = require("child_process") +const os = require("os") + +/** + * Do all things that need to be done after installing packages + * + * Yes, it slows down package installation a little, but it's nice to not + * have to remember these extra steps. + */ +;[ + // Patch all the necessary modules. + { command: "npx patch-package" }, + + // Make sure we're set up correctly + { command: "solidarity" }, + + // Kill the metro bundler if it's running. + { command: 'pkill -f "cli.js start" || set exit 0', onlyPlatforms: ["darwin", "linux"] }, + // Help wanted: Add the windows version here. { command: "????", onlyPlatforms: ["win32"] }, + + // Make sure our native modules are androidX-happy + { command: "jetify" }, + + // on iOS, make sure our native modules are installed + { command: "pod install", cwd: "ios", onlyPlatforms: ["darwin"] }, +] + .filter(({ onlyPlatforms }) => !onlyPlatforms || onlyPlatforms.includes(os.platform())) + .forEach((commandAndOptions) => { + const { command, onlyPlatform: _, ...options } = commandAndOptions + try { + childProcess.execSync(command, { + stdio: "inherit", + ...options, + }) + } catch (error) { + process.exit(error.status) + } + }) -- cgit v1.2.3