dev docs
This commit is contained in:
parent
c1e151a694
commit
b6e5d2aaea
71
doc/dev.md
71
doc/dev.md
@ -1,4 +1,73 @@
|
|||||||
|
|
||||||
# System overview
|
# System overview
|
||||||
|
|
||||||
<img src="./Overview.png">
|
<img src="./Overview.png">
|
||||||
|
|
||||||
|
# Build dependencies
|
||||||
|
|
||||||
|
## Basic
|
||||||
|
* go >= 1.11
|
||||||
|
* make
|
||||||
|
|
||||||
|
## With crosscompiling (optional)
|
||||||
|
Either apt-get:
|
||||||
|
* gcc-mingw-w64
|
||||||
|
* gcc-5-arm-linux-gnueabihf
|
||||||
|
* gcc-i686-linux-gnu
|
||||||
|
|
||||||
|
Or use the docker-builder image in `server/docker`
|
||||||
|
|
||||||
|
# Development setup
|
||||||
|
|
||||||
|
Working directory: `./server`
|
||||||
|
|
||||||
|
## Preparing the files and map
|
||||||
|
|
||||||
|
Copy your `map.sqlite` into the working directory if you want to test with
|
||||||
|
a sqlite map database
|
||||||
|
|
||||||
|
### world.mt
|
||||||
|
|
||||||
|
You need a `world.mt` too in order to make the connection to the database.
|
||||||
|
In the sqlite case:
|
||||||
|
|
||||||
|
```
|
||||||
|
gameid = minetest
|
||||||
|
backend = sqlite3
|
||||||
|
creative_mode = false
|
||||||
|
enable_damage = false
|
||||||
|
player_backend = files
|
||||||
|
```
|
||||||
|
|
||||||
|
For postgres:
|
||||||
|
```
|
||||||
|
gameid = minetest
|
||||||
|
backend = postgresql
|
||||||
|
creative_mode = true
|
||||||
|
enable_damage = true
|
||||||
|
player_backend = postgresql
|
||||||
|
pgsql_connection = host=localhost port=5432 user=postgres password=enter dbname=postgres
|
||||||
|
pgsql_player_connection = host=localhost port=5432 user=postgres password=enter dbname=postgres
|
||||||
|
```
|
||||||
|
|
||||||
|
## Generate the static files (webserver vfs)
|
||||||
|
|
||||||
|
* Create the vfs (in `vfs/static.go`) with `go generate`
|
||||||
|
|
||||||
|
## Running the server
|
||||||
|
|
||||||
|
* Create a `mapserver.json` with `go run . -createconfig`
|
||||||
|
* Change the value `webdev` in the `mapserver.json` to `true`
|
||||||
|
* Start the server with `go run .` or with debug output: `go run . -debug`
|
||||||
|
* The web files in `static/` can now be changed on the fly without restarting the server
|
||||||
|
|
||||||
|
# Release build
|
||||||
|
|
||||||
|
Prerequisites:
|
||||||
|
* docker
|
||||||
|
|
||||||
|
Building:
|
||||||
|
* Build the docker-image in the `docker` directory with: `cd docker && make build`
|
||||||
|
* Run `make clean build-docker` to build for all supported targets
|
||||||
|
|
||||||
|
The artifacts should now be in the `output` directory
|
||||||
|
Loading…
Reference in New Issue
Block a user