diff --git a/doc/.vitepress/config.mts b/doc/.vitepress/config.mts index 170f2189832..c96fa3bd363 100644 --- a/doc/.vitepress/config.mts +++ b/doc/.vitepress/config.mts @@ -32,6 +32,7 @@ export default defineConfig({ { text: 'Stats', link: '/stats.md' }, {text: 'Skins', link: '/skins.md' }, {text: 'Demo', link: '/demo.md' }, + {text: 'CLI', link: '/cli.md'}, ] }, { diff --git a/settings.json.docker b/settings.json.docker index bbe96fc5194..109f36bfd6c 100644 --- a/settings.json.docker +++ b/settings.json.docker @@ -194,6 +194,15 @@ }, */ + + /* + * Enables the use of a different server. We have a different one that syncs changes from the original server. + * It is hosted on GitHub and should not be blocked by many firewalls. + * https://etherpad.org/ep_infos + */ + + "updateServer": "https://etherpad.org/ep_infos", + /* * The type of the database. * diff --git a/settings.json.template b/settings.json.template index 66c9a7df2fd..fe10e51b9cc 100644 --- a/settings.json.template +++ b/settings.json.template @@ -271,6 +271,14 @@ "pageDown": true }, + /* + * Enables the use of a different server. We have a different one that syncs changes from the original server. + * It is hosted on GitHub and should not be blocked by many firewalls. + * https://etherpad.org/ep_infos + */ + + "updateServer": "https://etherpad.org/ep_infos", + /* * Should we suppress errors from being visible in the default Pad Text? */ diff --git a/src/node/utils/Settings.ts b/src/node/utils/Settings.ts index 00b9c2981f9..4ff117ad367 100644 --- a/src/node/utils/Settings.ts +++ b/src/node/utils/Settings.ts @@ -107,6 +107,7 @@ exports.ttl = { RefreshToken: 1 * 24 * 60 * 60, // 1 day in seconds } +exports.updateServer = "https://static.etherpad.org" /* diff --git a/src/node/utils/UpdateCheck.ts b/src/node/utils/UpdateCheck.ts index 534c5c640fa..de7d2eea62f 100644 --- a/src/node/utils/UpdateCheck.ts +++ b/src/node/utils/UpdateCheck.ts @@ -20,7 +20,7 @@ const loadEtherpadInformations = () => { return infos; } - return axios.get('https://static.etherpad.org/info.json', {headers: headers}) + return axios.get(`${settings.updateServer}/info.json`, {headers: headers}) .then(async (resp: any) => { infos = await resp.data; if (infos === undefined || infos === null) { diff --git a/src/static/js/pluginfw/installer.ts b/src/static/js/pluginfw/installer.ts index effed768a80..c605378e1bd 100644 --- a/src/static/js/pluginfw/installer.ts +++ b/src/static/js/pluginfw/installer.ts @@ -171,7 +171,7 @@ export const getAvailablePlugins = (maxCacheAge: number|false) => { return resolve(availablePlugins); } - await axios.get('https://static.etherpad.org/plugins.json', {headers}) + await axios.get(`${settings.updateServer}/plugins.json`, {headers}) .then((pluginsLoaded:AxiosResponse>) => { availablePlugins = pluginsLoaded.data; cacheTimestamp = nowTimestamp;