GurotopiaGurotopia
Installation

Linux Installation

Step-by-step guide to install and run Gurotopia on Linux

Linux Installation

This guide covers installing Gurotopia on various Linux distributions.

Prerequisites

You'll need a terminal and sudo/root access to install dependencies.

Install Dependencies

Choose your distribution and run the appropriate commands:

Arch Linux

sudo pacman -S base-devel openssl sqlite

Debian / Ubuntu

sudo apt-get update
sudo apt-get install build-essential libssl-dev openssl sqlite3

Fedora

sudo dnf groupinstall "Development Tools"
sudo dnf install openssl-devel sqlite-devel

The build-essential or base-devel package includes GCC, G++, and Make.

Clone the Repository

git clone https://github.com/gurotopia/Gurotopia.git
cd Gurotopia

Compile the Server

Navigate to the project's root directory and run:

make -j$(nproc)

The -j$(nproc) flag uses all available CPU cores for faster compilation.

Build Output

After successful compilation, you'll find the executable in the project directory:

./main.out

Run the Server

Execute the compiled binary:

./main.out

The server will start and display connection information in the terminal.

Run in Background

To run the server in the background:

nohup ./main.out > server.log 2>&1 &

Or use screen or tmux for a persistent session:

screen -S gurotopia
./main.out
# Press Ctrl+A, then D to detach

Using Docker

Gurotopia also supports Docker for containerized deployment:

# Build the image
docker build -t gurotopia .

# Run the container
docker run -d -p 17091:17091 --name gurotopia-server gurotopia

Make sure to configure your hosts file before connecting. See the Configuration guide.

Troubleshooting

Permission denied

Make the binary executable:

chmod +x main.out

Missing libraries

If you get "library not found" errors, ensure all dependencies are installed:

# Debian/Ubuntu
sudo apt-get install libssl-dev libsqlite3-dev

# Arch
sudo pacman -S openssl sqlite

Port already in use

Check if another process is using the port:

sudo lsof -i :17091

Kill the process or change the port in configuration.

Next Steps

On this page