import * as fs from 'fs-extra' ; import * as path from 'path' ; import { chdir } from 'process' ; import { exec } from './util' ; interface Target { name : 'appImage' | string ; } interface Context { appOutDir : string ; outDir : string ; targets : [ Target ] ; } export default async function ( context ) { console . log ( context ) ; const isLinux = context . targets . find ( target => target . name === 'appImage' ) ; if ( ! isLinux ) { return ; } const originalDir = process . cwd ( ) ; const dirname = context . appOutDir ; chdir ( dirname ) ; await exec ( 'mv' , [ 'mqtt-explorer' , 'mqtt-explorer.bin' ] ) ; const wrapperScript = `#!/bin/bash
    "\${BASH_SOURCE%/*}"/mqtt-explorer.bin "$@" --no-sandbox
  ` ; fs . writeFileSync ( 'mqtt-explorer' , wrapperScript ) ; await exec ( 'chmod' , [ '+x' , 'mqtt-explorer' ] ) ; chdir ( originalDir ) ; }