summaryrefslogtreecommitdiff
path: root/scripts/build-assets.mjs
diff options
context:
space:
mode:
authorMarie <marie@kaifa.ch>2024-02-19 19:05:15 +0000
committerMarie <marie@kaifa.ch>2024-02-19 19:05:15 +0000
commit4246b6434dd1daf4e16a873bee211ce5d43fc4fd (patch)
treee5c680875320237716f8b77381fb14a06f3c9e98 /scripts/build-assets.mjs
parentmerge: Bridged error message for when you try search for a post and it fails ... (diff)
parentfix: icons and update urls (diff)
downloadsharkey-4246b6434dd1daf4e16a873bee211ce5d43fc4fd.tar.gz
sharkey-4246b6434dd1daf4e16a873bee211ce5d43fc4fd.tar.bz2
sharkey-4246b6434dd1daf4e16a873bee211ce5d43fc4fd.zip
merge: Merge upstream from 19th Feburary (!428)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/428 Approved-by: dakkar <dakkar@thenautilus.net> Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Diffstat (limited to 'scripts/build-assets.mjs')
-rw-r--r--scripts/build-assets.mjs19
1 files changed, 17 insertions, 2 deletions
diff --git a/scripts/build-assets.mjs b/scripts/build-assets.mjs
index 6267e5c963..7d0ab2fc80 100644
--- a/scripts/build-assets.mjs
+++ b/scripts/build-assets.mjs
@@ -1,20 +1,34 @@
/*
- * SPDX-FileCopyrightText: syuilo and other misskey contributors
+ * SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
import * as fs from 'node:fs/promises';
import * as path from 'node:path';
+import { fileURLToPath } from 'node:url';
import cssnano from 'cssnano';
+import * as yaml from 'js-yaml';
import postcss from 'postcss';
import * as terser from 'terser';
import { build as buildLocales } from '../locales/index.js';
import generateDTS from '../locales/generateDTS.js';
import meta from '../package.json' assert { type: "json" };
+import buildTarball from './tarball.mjs';
+
+const configDir = fileURLToPath(new URL('../.config', import.meta.url));
+const configPath = process.env.MISSKEY_CONFIG_YML
+ ? path.resolve(configDir, process.env.MISSKEY_CONFIG_YML)
+ : process.env.NODE_ENV === 'test'
+ ? path.resolve(configDir, 'test.yml')
+ : path.resolve(configDir, 'default.yml');
let locales = buildLocales();
+async function loadConfig() {
+ return fs.readFile(configPath, 'utf-8').then(data => yaml.load(data)).catch(() => null);
+}
+
async function copyFrontendFonts() {
await fs.cp('./packages/frontend/node_modules/three/examples/fonts', './built/_frontend_dist_/fonts', { dereference: true, recursive: true });
}
@@ -77,12 +91,13 @@ async function build() {
copyBackendViews(),
buildBackendScript(),
buildBackendStyle(),
+ loadConfig().then(config => config?.publishTarballInsteadOfProvideRepositoryUrl && buildTarball()),
]);
}
await build();
-if (process.argv.includes("--watch")) {
+if (process.argv.includes('--watch')) {
const watcher = fs.watch('./locales');
for await (const event of watcher) {
const filename = event.filename?.replaceAll('\\', '/');