The Game Server Admin (GSA) now supports user-specific configuration
through a Nickel (.ncl) configuration file. This allows you to:
-
Set a default server IP and port
-
Maintain a list of favorite servers
-
Customize UI preferences
-
Configure connection settings
The user configuration is stored in user-config.ncl, which is
gitignored to ensure your server credentials and preferences remain
private.
To create a default configuration file:
./gsa config initThis creates user-config.ncl from the template
user-config.ncl.template.
The configuration file uses Nickel language syntax and includes the following sections:
{
# Default server connection
default_server = {
host = "localhost", # Hostname or IP address
port = 25565, # Port number
profile_id = "minecraft-java", # Optional: game profile ID
rcon_password = "", # Optional: RCON password
},
# Favorite servers list
favorites = [
{
name = "My Minecraft Server",
host = "mc.example.com",
port = 25565,
profile_id = "minecraft-java",
rcon_password = "",
},
# Add more favorites as needed
],
# UI preferences
ui = {
theme = "system", # "light", "dark", or "system"
default_panel = "gsa-browser",
show_advanced = false,
},
# Connection settings
connection = {
timeout_ms = 5000, # Timeout in milliseconds
max_retries = 3, # Maximum retries
verbose_logging = false,
},
# VeriSimDB settings
verisimdb = {
url = "http://localhost:8090",
auto_submit = true,
},
}./gsa config set-default <host> <port>Example:
./gsa config set-default mc.example.com 25565./gsa config add-favorite <name> <host> <port>Example:
./gsa config add-favorite "My Minecraft" mc.example.com 25565
./gsa config add-favorite "CS2 Server" cs2.example.com 27015When you run commands without specifying a server, the default server from your configuration will be used:
# Uses the default server from user-config.ncl
./gsa probe-
user-config.nclis gitignored and will never be committed to version control -
The file is added to
.gitignoreto prevent accidental commits -
Sensitive information like RCON passwords should be handled with care
-
The template file (
user-config.ncl.template) contains no sensitive data
-
Never commit your config: The
.gitignorefile prevents this, but double-check -
Use strong passwords: If storing RCON passwords, use strong, unique passwords
-
Backup your config: Consider backing up your config file separately
-
Review before sharing: If sharing your project, ensure
user-config.nclis not included
You can manually edit user-config.ncl to: - Add multiple favorite
servers - Customize UI preferences - Adjust connection timeouts -
Configure VeriSimDB settings
The configuration system respects these environment variables:
-
GSA_VERISIMDB_URL: Override the VeriSimDB URL -
GSA_PROFILES_DIR: Override the profiles directory
✗ No config file found. Run `gsa config init` to create one.Solution: Run ./gsa config init to create the configuration file.
✗ Config file already exists at user-config.nclSolution: Either edit the existing file or back it up before re-initializing.