freeciv21 icon indicating copy to clipboard operation
freeciv21 copied to clipboard

Develop your civilization from humble roots to a global empire

Freeciv21

License: GPL v3+ Build CodeFactor Codacy Badge Coverity quality badge

Freeciv21 is an empire-building strategy game inspired by the history of human civilization. It takes its roots in the well-known FOSS game Freeciv and extends it for more fun, with a revived focus on competitive multiplayer environments.

Screenshot

The documentation is found on our documentation website.

The WebAssembly build of Freeciv21 is playable at freecivweb.com.

Freeciv21 is maintained by folks from longturn.net. We welcome pull requests, bug reports and simple suggestions! Get in touch on Discord. The #General channel is a great place to start.

Installation

Windows and macOS

We provide Windows and macOS installers in the Assets section of every release. Make sure to download the .exe or .dmg file depending on platform. After downloading, run the installer. The Windows install is documented here.

Linux

Linux users running on Debian (or one of the many variants such as Ubuntu) can download a package from the Assets section of every release (make sure to download the .deb file). After downloading, run the installer:

sudo apt install ./freeciv21_*_amd64.deb

Other Linux users will need to compile the code. Ubuntu 20.04 or higher is supported. See this link for the detailed procedure and a list of supported distributions. See below for a quick set of instructions for Debian based distributions.

Install dependencies

You may need to adjust this command for your package manager. You need CMake 3.16 or higher, Qt (base and SVG) 5.10 or higher, and Lua 5.3 or 5.4. You need to do this only once.

sudo apt install git cmake ninja-build g++ python3 gettext qtbase5-dev \
  libqt5svg5-dev libkf5archive-dev liblua5.3-dev libsqlite3-dev libsdl2-mixer-dev

Get the code

Use this command the first time you download Freeciv21:

git clone https://github.com/longturn/freeciv21.git
cd freeciv21

Afterwards, you can refresh the code with:

cd freeciv21
git pull --ff-only

Compile

Freeciv21 uses a standard CMake workflow. We recommend building with Ninja:

cmake . -B build -G Ninja -DCMAKE_INSTALL_PREFIX=$HOME/freeciv21
cmake --build build

(Optional) Install

This will install the files in the directory $HOME/freeciv21 specified above:

cmake --build build --target install