Welcome! This is your go-to tool for setting up and managing game servers on Linux. If you're looking for a simple solution for setting up a few game servers, this is it. It takes care of the heavy lifting so you can focus on what really matters—playing games with your friends.
KGSM makes it easy to install, update, and manage your game servers with minimal hassle. It's designed to be simple, efficient, and portable, perfect for someone who wants a quick and easy solution without having to spend hours reading documentation or watching tutorials.
As much as I'd like for KGSM to work on every system, unfortunately I don't have that much free time to test everywhere and fix all the potential differences between distributions.
In theory it should work on most GNU/Linux systems as long as the dependencies are met.
Before diving in, make sure your system has the following packages:
These are used throughout KGSM, without them it won't function.
grep jq wget unzip tar sed coreutils findutils steamcmd
These are not required unless you want to enable some features through configuration.
ufw socat
ufw
is used only ifUSE_UFW
is enabled in theconfig.ini
file.socat
is used only ifUSE_EVENTS
is enabled in theconfig.ini
file.
Note
If SteamCMD isn't available through your distro’s package manager, you'll need to set it up manually.
For an even smoother experience, you can integrate KGSM with systemd
and
ufw
with just a few configuration tweaks.
There are a few ways to grab KGSM:
- Clone the repository using
git
- Download the latest Release
- Use this handy install script:
wget -qO - https://raw.githubusercontent.com/TheKrystalShip/KGSM/main/installer.sh | bash
Everything will be contained in a subdirectory KGSM creates, keeping your system clean and organized.
Once you've got KGSM, running it is simple. Just execute:
./kgsm.sh
The first time you run it, KGSM will create a config.ini
file with default
settings. Feel free to tweak this file to suit your needs. After that,
running it again will take you into an interactive menu where you can choose
what to do.
Need help? Either select the Help
option in the menu or run:
./kgsm.sh --help --interactive
For those who love automation, KGSM supports named arguments for all its operations. For a full list of options just run:
./kgsm.sh --help
There's also Documentation for the project which explains how KGSM operates in case you need it.
Updating KGSM is a breeze. Just run:
./kgsm.sh --update
In case you run into issues or lose any files, you can try a repair with:
./kgsm.sh --update --force
This will re-download all the KGSM-specific files while preserving your custom settings.
KGSM is licensed under the terms of GPL-3.0, check the LICENSE file for more information.