From 55b34169571fa5fed4e30c4d27f4bc030d4b8c12 Mon Sep 17 00:00:00 2001 From: Rory& Date: Tue, 23 Dec 2025 22:06:11 +0100 Subject: [PATCH] Add server name config option for use in client redirects --- src/util/config/types/GeneralConfiguration.ts | 1 + src/util/util/Config.ts | 13 +++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/util/config/types/GeneralConfiguration.ts b/src/util/config/types/GeneralConfiguration.ts index beafe01c1..f4f764410 100644 --- a/src/util/config/types/GeneralConfiguration.ts +++ b/src/util/config/types/GeneralConfiguration.ts @@ -20,6 +20,7 @@ import { Snowflake } from "@spacebar/util"; export class GeneralConfiguration { instanceName: string = "Spacebar Instance"; + serverName: string | null = null; instanceDescription: string | null = "This is a Spacebar instance made in the pre-release days"; frontPage: string | null = null; tosPage: string | null = null; diff --git a/src/util/util/Config.ts b/src/util/util/Config.ts index 1ca455ff7..e31b541f2 100644 --- a/src/util/util/Config.ts +++ b/src/util/util/Config.ts @@ -184,10 +184,15 @@ function validateFinalConfig(config: ConfigValue) { } } - assertConfig("api_endpointPublic", (v) => v != null, 'A valid public API endpoint URL, ex. "http://localhost:3001/api/v9"'); - assertConfig("cdn_endpointPublic", (v) => v != null, 'A valid public CDN endpoint URL, ex. "http://localhost:3003/"'); - assertConfig("cdn_endpointPrivate", (v) => v != null, 'A valid private CDN endpoint URL, ex. "http://localhost:3003/" - must be routable from the API server!'); - assertConfig("gateway_endpointPublic", (v) => v != null, 'A valid public gateway endpoint URL, ex. "ws://localhost:3002/"'); + assertConfig( + "general_serverName", + (v) => v != null, + 'A valid domain hosting your .well-known (defaulting to https at port 443), eg. "spacebar.chat" or "http://localhost:3001"', + ); + assertConfig("api_endpointPublic", (v) => v != null, 'A valid public API endpoint URL, eg. "http://localhost:3001/api/v9"'); + assertConfig("cdn_endpointPublic", (v) => v != null, 'A valid public CDN endpoint URL, eg. "http://localhost:3003/"'); + assertConfig("cdn_endpointPrivate", (v) => v != null, 'A valid private CDN endpoint URL, eg. "http://localhost:3003/" - must be routable from the API server!'); + assertConfig("gateway_endpointPublic", (v) => v != null, 'A valid public gateway endpoint URL, eg. "ws://localhost:3002/"'); if (hasErrors) { console.error("[Config] Your config has invalid values. Fix them first https://docs.spacebar.chat/setup/server/configuration");