doom-docker-zandronum-compiler/README.md

52 lines
1.6 KiB
Markdown
Raw Normal View History

2023-11-14 21:38:53 +01:00
# Compiling Zandronum with Docker
2023-11-15 17:39:24 +01:00
This Dockerfile builds a compiling agent for Zandronum utilizing Debian. This creates the needed files for running the ``zandronum-server`` Linux server including the ``*.pk3`` files.
2023-11-14 21:38:53 +01:00
2023-11-15 17:45:17 +01:00
## What is this doing?
This Docker container pulls down the latest source code of Zandronum into a docker container and allows a user to compile it within the container for use on a Linux operating system.
## TODO
2023-11-15 17:46:31 +01:00
* Add cross compilation support once I can confirm that Zandronum does infact offer it in it's build files.
* Cleanup Dockerfile a bit more
* Write better README.md
2023-11-15 17:45:17 +01:00
2023-11-15 17:39:24 +01:00
## How to use this
2023-11-15 17:45:17 +01:00
Clone and build this image locally
2023-11-15 17:39:24 +01:00
```
git clone https://github.com/cfultz/doom-docker-zandronum-compiler
cd doom-docker-zandronum-compiler
docker build -t zandronum-build .
```
2023-11-14 21:38:53 +01:00
2023-11-15 17:45:17 +01:00
Once the container is built, run a docker run and point it to a local directory to dump the files to:
```
docker run -i -t -v ~/zandronum-server:/root/complete zandronum-compiler
```
This will place the files in ``zandronum-server`` for use. You will need to own them as a local user to run them as they will be output with ``root`` ownership.
2023-11-15 18:21:40 +01:00
## Wait. It doesn't run?
2023-11-15 17:45:17 +01:00
2023-11-15 18:21:40 +01:00
You will need:
* SDL
* bzip2
* libopenssl
* SQLite
* libGL or at least a GL implmentation provider
These can be downloaded on some of the more popular OS's:
### Debian and derivitaives
```
sudo apt install libsdl1.2-compat-dev libbz2-dev libssl-dev libsqlite3-dev libgl1-mesa-dev
```
### Fedora (Rocky is a pain in the dick to get Zandronum working)
```
sudo dnf install SDL-devel bzip2-devel mesa-libGL-devel openssl-devel sqlite-devel
```