diff --git a/common/hellcooling/0001-web-build-local-extensions-as-well.patch b/common/hellcooling/0001-web-build-local-extensions-as-well.patch new file mode 100644 index 0000000..d325d8a --- /dev/null +++ b/common/hellcooling/0001-web-build-local-extensions-as-well.patch @@ -0,0 +1,65 @@ +From 2f2ed36df2c55ca60c7074cf80f97cdc6d53f83e Mon Sep 17 00:00:00 2001 +From: Alyxia Sother +Date: Mon, 22 May 2023 10:14:07 +0200 +Subject: [PATCH] web: build local extensions as well + +--- + web/buildExtension.js | 35 +++++++++++++++++++++++++++++++++++ + 1 file changed, 35 insertions(+) + +diff --git a/web/buildExtension.js b/web/buildExtension.js +index 206408c..4984ab2 100644 +--- a/web/buildExtension.js ++++ b/web/buildExtension.js +@@ -1,7 +1,37 @@ ++const fs = require("fs"); ++const os = require("os"); ++const path = require("path"); + const webpack = require("webpack"); + process.env.BUILD_TYPE = "extension"; + const config = require("./webpack.config.js"); + ++const PATH_TO_EXTS = path.join( ++ os.homedir(), ++ "Library/ApplicationSupport/hh3/ext" ++); ++const HH_EXT_DIR = path.join(__dirname, "../ext"); ++let exts = fs.readdirSync(PATH_TO_EXTS); ++exts = exts.filter((e) => e !== ".git"); ++ ++function deleteF(path) { ++ const isDir = fs.lstatSync(path).isDirectory(); ++ if (isDir) fs.rmSync(path, {recursive: true}); ++ else fs.unlinkSync(path); ++} ++ ++for (const ext of exts) { ++ if (fs.existsSync(path.join(HH_EXT_DIR, ext))) ++ deleteF(path.join(HH_EXT_DIR, ext)); ++ ++ const source = path.join(PATH_TO_EXTS, ext); ++ const dest = path.join(HH_EXT_DIR, ext); ++ ++ fs.cpSync(source, dest, { ++ recursive: true, ++ }); ++ console.log(`${source} -> ${dest}`); ++} ++ + webpack.webpack(config, (err, stats) => { + if (!stats?.compilation) { + console.log(err); +@@ -21,5 +51,10 @@ webpack.webpack(config, (err, stats) => { + }) + ); + } ++ for (let ext of exts) { ++ ext = path.join(HH_EXT_DIR, ext); ++ deleteF(ext); ++ console.log(`✕ ${ext}`); ++ } + } + }); +-- +2.37.1 (Apple Git-137.1) + diff --git a/common/hellcooling/build-local-exts.diff b/common/hellcooling/build-local-exts.diff new file mode 100644 index 0000000..daf5283 --- /dev/null +++ b/common/hellcooling/build-local-exts.diff @@ -0,0 +1,53 @@ +diff --git a/web/buildExtension.js b/web/buildExtension.js +index 206408c..4984ab2 100644 +--- a/web/buildExtension.js ++++ b/web/buildExtension.js +@@ -1,7 +1,37 @@ ++const fs = require("fs"); ++const os = require("os"); ++const path = require("path"); + const webpack = require("webpack"); + process.env.BUILD_TYPE = "extension"; + const config = require("./webpack.config.js"); + ++const PATH_TO_EXTS = path.join( ++ os.homedir(), ++ "Library/ApplicationSupport/hh3/ext" ++); ++const HH_EXT_DIR = path.join(__dirname, "../ext"); ++let exts = fs.readdirSync(PATH_TO_EXTS); ++exts = exts.filter((e) => e !== ".git"); ++ ++function deleteF(path) { ++ const isDir = fs.lstatSync(path).isDirectory(); ++ if (isDir) fs.rmSync(path, {recursive: true}); ++ else fs.unlinkSync(path); ++} ++ ++for (const ext of exts) { ++ if (fs.existsSync(path.join(HH_EXT_DIR, ext))) ++ deleteF(path.join(HH_EXT_DIR, ext)); ++ ++ const source = path.join(PATH_TO_EXTS, ext); ++ const dest = path.join(HH_EXT_DIR, ext); ++ ++ fs.cpSync(source, dest, { ++ recursive: true, ++ }); ++ console.log(`${source} -> ${dest}`); ++} ++ + webpack.webpack(config, (err, stats) => { + if (!stats?.compilation) { + console.log(err); +@@ -21,5 +51,10 @@ webpack.webpack(config, (err, stats) => { + }) + ); + } ++ for (let ext of exts) { ++ ext = path.join(HH_EXT_DIR, ext); ++ deleteF(ext); ++ console.log(`✕ ${ext}`); ++ } + } + }); diff --git a/common/hellcooling/config/discord-laptop-web.json b/common/hellcooling/config/discord-laptop-web.json index f3aad99..b88b168 100644 Binary files a/common/hellcooling/config/discord-laptop-web.json and b/common/hellcooling/config/discord-laptop-web.json differ diff --git a/common/hellcooling/install.sh b/common/hellcooling/install.sh new file mode 100644 index 0000000..e69de29