From c297715875d317ba9290293e8b6e78bfc2b8f0fd Mon Sep 17 00:00:00 2001 From: ProgrammerIn-wonderland <30693865+ProgrammerIn-wonderland@users.noreply.github.com> Date: Tue, 10 Mar 2026 13:21:05 -0700 Subject: [PATCH] add support for building with custom icons (#2635) --- src/gui/build.js | 20 +++++++++++++++++++- src/gui/src/.gitignore | 1 + 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 src/gui/src/.gitignore diff --git a/src/gui/build.js b/src/gui/build.js index 86707ba6d..e9992c13a 100644 --- a/src/gui/build.js +++ b/src/gui/build.js @@ -17,5 +17,23 @@ * along with this program. If not, see . */ import { build } from './utils.js'; +import { hideBin } from 'yargs/helpers'; +import yargs from 'yargs'; +import fs from 'node:fs'; +import { execSync } from 'node:child_process'; +import { Buffer } from 'node:buffer'; -build(); \ No newline at end of file +// eslint-disable-next-line no-undef +const argv = yargs(hideBin(process.argv)).parse(); +if ( argv.icons_url ) { + console.log('Extracting icons...'); + const iconsTar = Buffer.from(await fetch(argv.icons_url).then(r => r.arrayBuffer())); + await fs.promises.writeFile('icons.tar.gz', iconsTar); + if ( fs.existsSync('src/icons') ) { + fs.promises.rename('src/icons', 'src/icons.old'); + } + execSync('tar -xzvf icons.tar.gz'); + fs.promises.rm('icons.tar.gz'); +} + +build(); diff --git a/src/gui/src/.gitignore b/src/gui/src/.gitignore new file mode 100644 index 000000000..f0fd487c1 --- /dev/null +++ b/src/gui/src/.gitignore @@ -0,0 +1 @@ +icons.old/ \ No newline at end of file