Compare commits

..

No commits in common. "aerocord" and "v4.0.0" have entirely different histories.

3 changed files with 43 additions and 68 deletions

View File

@ -13,7 +13,7 @@ Aerocord is a [Vesktop](https://github.com/Vencord/Vesktop) fork meant for Windo
- Aerocord has its own updater separate from vesktop, the updater is also consent-only meaning it wont update without permission - Aerocord has its own updater separate from vesktop, the updater is also consent-only meaning it wont update without permission
- Extension support - Extension support
### Plans for the future: ### Plans for the future (v4.0.1):
- Use CoolWPR electron, [this](https://git.randomserver.top/administrator/electron7) project in question - Use CoolWPR electron, [this](https://git.randomserver.top/administrator/electron7) project in question
- Improve the updater - Improve the updater

View File

@ -1,6 +1,6 @@
{ {
"name": "aerocord", "name": "aerocord",
"version": "4.0.1", "version": "4.0.0",
"private": true, "private": true,
"description": "aerocord", "description": "aerocord",
"keywords": [], "keywords": [],

View File

@ -6,17 +6,14 @@
* Copyright (c) 2023 Vendicated and Vencord contributors * Copyright (c) 2023 Vendicated and Vencord contributors
*/ */
import { BuildContext, BuildOptions, context } from "esbuild"; import { BuildOptions, build } from "esbuild";
import { copyFile } from "fs/promises";
import vencordDep from "./vencordDep.mjs";
const isDev = process.argv.includes("--dev"); const isDev = process.argv.includes("--dev");
const CommonOpts: BuildOptions = { const CommonOpts: BuildOptions = {
minify: !isDev, minify: true,
bundle: true, bundle: true,
sourcemap: "linked", sourcemap: "inline",
logLevel: "info" logLevel: "info"
}; };
@ -31,64 +28,42 @@ const NodeCommonOpts: BuildOptions = {
} }
}; };
const contexts = [] as BuildContext[]; async function buildUnpacked() {
async function createContext(options: BuildOptions) { await Promise.all([
contexts.push(await context(options)); build({
} ...NodeCommonOpts,
entryPoints: ["src/main/index.ts"],
async function copyVenmic() { outfile: "dist/js/main.js",
if (process.platform !== "linux") return; footer: { js: "//# sourceURL=VCDMain" }
}),
return Promise.all([ build({
copyFile( ...NodeCommonOpts,
"./node_modules/@vencord/venmic/prebuilds/venmic-addon-linux-x64/node-napi-v7.node", entryPoints: ["src/preload/index.ts"],
"./static/dist/venmic-x64.node" outfile: "dist/js/preload.js",
), footer: { js: "//# sourceURL=VCDPreload" }
copyFile( }),
"./node_modules/@vencord/venmic/prebuilds/venmic-addon-linux-arm64/node-napi-v7.node", build({
"./static/dist/venmic-arm64.node" ...NodeCommonOpts,
) entryPoints: ["src/updater/preload.ts"],
]).catch(() => console.warn("Failed to copy venmic. Building without venmic support")); outfile: "dist/js/updaterPreload.js",
} footer: { js: "//# sourceURL=VCDUpdaterPreload" }
}),
await Promise.all([ build({
copyVenmic(), ...CommonOpts,
createContext({ globalName: "Vesktop",
...NodeCommonOpts, entryPoints: ["src/renderer/index.ts"],
entryPoints: ["src/main/index.ts"], outfile: "dist/js/renderer.js",
outfile: "dist/js/main.js", format: "iife",
footer: { js: "//# sourceURL=VCDMain" } inject: ["./scripts/build/injectReact.mjs"],
}), jsxFactory: "VencordCreateElement",
createContext({ jsxFragment: "VencordFragment",
...NodeCommonOpts, external: ["@vencord/types/*"],
entryPoints: ["src/preload/index.ts"], footer: { js: "//# sourceURL=VCDRenderer" }
outfile: "dist/js/preload.js",
footer: { js: "//# sourceURL=VCDPreload" }
}),
createContext({
...CommonOpts,
globalName: "Vesktop",
entryPoints: ["src/renderer/index.ts"],
outfile: "dist/js/renderer.js",
format: "iife",
inject: ["./scripts/build/injectReact.mjs"],
jsxFactory: "VencordCreateElement",
jsxFragment: "VencordFragment",
external: ["@vencord/types/*"],
plugins: [vencordDep],
footer: { js: "//# sourceURL=VCDRenderer" }
})
]);
const watch = process.argv.includes("--watch");
if (watch) {
await Promise.all(contexts.map(ctx => ctx.watch()));
} else {
await Promise.all(
contexts.map(async ctx => {
await ctx.rebuild();
await ctx.dispose();
}) })
); ]);
} }
buildUnpacked().catch(err => {
console.error("Build failed:", err);
process.exit(1);
});