mirror of
https://github.com/hanzo-studio/studio-desktop.git
synced 2026-10-30 18:54:12 +00:00
41 lines
1.4 KiB
JavaScript
41 lines
1.4 KiB
JavaScript
import fs from 'fs-extra';
|
|
import { spawnSync } from 'node:child_process';
|
|
import * as os from 'node:os';
|
|
import process from 'node:process';
|
|
|
|
/** @param {{ appOutDir, packager, outDir }} arg0 */
|
|
const preMake = () => {
|
|
const firstInstallOnToDesktopServers = process.env.TODESKTOP_CI && process.env.TODESKTOP_INITIAL_INSTALL_PHASE;
|
|
// Do NOT run on CI
|
|
if (process.env.CI || firstInstallOnToDesktopServers) return;
|
|
|
|
const isNvidia = process.argv.at(-1) === '--nvidia';
|
|
|
|
console.log(`<BUILDING COMFYCLI ON ${os.platform()} ${isNvidia && 'Nvidia Ver'}>`);
|
|
|
|
// If this folder is here assume comfy has already been installed
|
|
if (fs.existsSync('./assets/Hanzo Studio')) {
|
|
console.log('>COMFYUI ALREADY BUILT<');
|
|
return;
|
|
}
|
|
|
|
if (os.platform() === 'darwin') {
|
|
spawnSync('pnpm run make:assets', [''], { shell: true, stdio: 'inherit' });
|
|
}
|
|
|
|
if (os.platform() === 'win32') {
|
|
const result = spawnSync(
|
|
`python -c "import os,sysconfig;print(sysconfig.get_path(""scripts"",f""{os.name}_user""))"`,
|
|
[''],
|
|
{ shell: true, stdio: 'pipe' }
|
|
).stdout.toString();
|
|
const localPythonModulePath = `PATH=${result.replaceAll('\\', '\\\\').trim()};%PATH%`;
|
|
spawnSync(`set ${localPythonModulePath} && pnpm run make:assets`, [''], {
|
|
shell: true,
|
|
stdio: 'inherit',
|
|
});
|
|
}
|
|
console.log('>PREMAKE FINISH<');
|
|
};
|
|
export default preMake;
|