1
0

provide a right description for distro packagers

* set description to minetest based voxel game
* sync rules configuration for CMAKE on apk, rpm and deb based distros
* sync installation paths for apk, rpm and deb based distros
* fix for those syncs the CMakefile
This commit is contained in:
mckaygerhard 2023-01-03 14:11:13 -04:00
parent 96537097a2
commit 3bb7f97eb4
14 changed files with 179 additions and 186 deletions

View File

@ -239,7 +239,7 @@ add_subdirectory(src)
# CPack
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "A free open-source voxel game engine with easy modding and game creation.")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "voxel game engine based on minetest with multiprotocol engine for any minetest game.")
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
@ -267,7 +267,7 @@ cpack_add_component(SUBGAME_MINIMAL
)
cpack_add_component_group(Subgames
DESCRIPTION "Games for the Minetest engine."
DESCRIPTION "voxel game engine based on minetest - subgames templates to play."
)
if(WIN32)

View File

@ -2,7 +2,7 @@
pkgname=multicraft
pkgver=2.0.3
pkgrel=0
pkgdesc="Minetest fork infinite-world block sandbox game and a game engine"
pkgdesc="minetest voxel game engine with easy modding and game creation"
url="https://www.multicraft.world/"
# riscv64 blocked by luajit
arch="all !riscv64"
@ -10,7 +10,7 @@ license="LGPL-3-or-later AND CC-BY-SA-3.0"
pkgusers="multicraft"
pkggroups="games"
install="$pkgname-server.pre-install"
depends="$pkgname-common"
depends="$pkgname-data"
makedepends="
bzip2-dev
cmake
@ -19,6 +19,7 @@ makedepends="
gettext-dev
hiredis-dev
libjpeg-turbo-dev
irrlicht-dev
libogg-dev
libpng-dev
libvorbis-dev
@ -32,13 +33,12 @@ makedepends="
zstd-dev
"
subpackages="$pkgname-doc
$pkgname-common::noarch
$pkgname-data::noarch
$pkgname-server
$pkgname-server-openrc:openrc
"
_irrlichtver="1.9.0mt8"
source="https://github.com/multicraft/multicraft/archive/refs/tags/$pkgver/multicraft-$pkgver.tar.gz
https://github.com/minetest/irrlicht/archive/refs/tags/$_irrlichtver/irrlichtmt-$_irrlichtver.tar.gz
source="https://codeberg.org/minenux/minetest-engine-multicraft2/archive/multicraft-package.tar.gz
multicraft-server.confd
multicraft-server.initd
0001-CMake-link-with-Intl-when-necessary.patch
@ -46,54 +46,85 @@ source="https://github.com/multicraft/multicraft/archive/refs/tags/$pkgver/multi
prepare() {
default_prepare
mv "$srcdir"/irrlicht-$_irrlichtver "$srcdir"/multicraft-$pkgver/lib/irrlichtmt
}
build() {
cmake -G Ninja -B build_client \
-DCMAKE_BUILD_TYPE=Release \
-DCUSTOM_BINDIR=/usr/bin \
-DCUSTOM_DOCDIR="/usr/share/doc/$pkgname-data" \
-DCUSTOM_SHAREDIR="/usr/share/games/$pkgname" \
-DBUILD_SERVER=OFF \
-DBUILD_CLIENT=ON \
-DRUN_IN_PLACE=OFF \
-DENABLE_CURL=ON \
-DENABLE_SOUND=ON \
-DENABLE_LUAJIT=ON \
-DENABLE_GETTEXT=ON \
-DENABLE_FREETYPE=ON \
-DENABLE_SYSTEM_GMP=ON \
-DENABLE_SYSTEM_JSONCPP=ON \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DENABLE_SPATIAL=ON \
-DENABLE_LEVELDB=ON \
-DENABLE_REDIS=OFF \
-DENABLE_POSTGRESQL=ON \
-DJSON_INCLUDE_DIR=/usr/include/jsoncpp \
-DFREETYPE_INCLUDE_DIR_freetype2=/usr/include/freetype2 \
-DFREETYPE_INCLUDE_DIR_ft2build=/usr/include \
-DLEVELDB_INCLUDE_DIR=/usr/include/leveldb \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCUSTOM_DOCDIR="/usr/share/doc/$pkgname" \
-DCUSTOM_SHAREDIR="/usr/share/$pkgname" \
-DBUILD_CLIENT=1 \
-DBUILD_SERVER=0 \
-DENABLE_REDIS=0 \
-DENABLE_CURL=1 \
-DRUN_IN_PLACE=0
-DCMAKE_BUILD_TYPE=RelWithDebInfo
cmake --build build_client
cmake -G Ninja -B build_server \
-DCMAKE_BUILD_TYPE=Release \
-DCUSTOM_BINDIR=/usr/bin \
-DCUSTOM_DOCDIR="/usr/share/doc/$pkgname" \
-DCUSTOM_SHAREDIR="/usr/share/games/$pkgname" \
-DBUILD_SERVER=ON \
-DBUILD_CLIENT=OFF \
-DRUN_IN_PLACE=OFF \
-DENABLE_CURL=ON \
-DENABLE_SOUND=ON \
-DENABLE_LUAJIT=ON \
-DENABLE_GETTEXT=ON \
-DENABLE_FREETYPE=ON \
-DENABLE_SYSTEM_GMP=ON \
-DENABLE_SYSTEM_JSONCPP=ON \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DENABLE_SPATIAL=ON \
-DENABLE_LEVELDB=ON \
-DENABLE_REDIS=OFF \
-DENABLE_POSTGRESQL=ON \
-DJSON_INCLUDE_DIR=/usr/include/jsoncpp \
-DFREETYPE_INCLUDE_DIR_freetype2=/usr/include/freetype2 \
-DFREETYPE_INCLUDE_DIR_ft2build=/usr/include \
-DLEVELDB_INCLUDE_DIR=/usr/include/leveldb \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCUSTOM_DOCDIR="/usr/share/doc/multicraft" \
-DCUSTOM_SHAREDIR="/usr/share/multicraft" \
-DBUILD_CLIENT=0 \
-DBUILD_SERVER=1 \
-DENABLE_REDIS=1 \
-DENABLE_CURL=1 \
-DRUN_IN_PLACE=0
-DCMAKE_BUILD_TYPE=RelWithDebInfo
cmake --build build_server
}
package() {
DESTDIR="$pkgdir" cmake --install build_client
rm -rf "$subpkgdir"/etc/init.d/multicraftserver
rm -rf "$subpkgdir"/usr/lib/systemd
}
common() {
pkgdesc="Multicraft files used by both client & server"
data() {
pkgdesc="voxel game engine based on minetest - common data files for"
depends=""
install -o multicraft -g multicraft -d "$subpkgdir"/var/lib/multicraft
install -o multicraft -g multicraft -d "$subpkgdir"/var/games/multicraft
amove \
usr/share/multicraft/builtin \
usr/share/multicraft/games
usr/share/games/multicraft \
usr/share/metainfo
usr/share/icons/hicolor
}
server() {
pkgdesc="Multicraft server"
pkgdesc="voxel game engine based on minetest - server multiplayer"
depends="$pkgname-common"
cd "$builddir"
@ -101,10 +132,12 @@ server() {
"$subpkgdir"/etc/multicraft/multicraft.conf
install -Dm755 bin/multicraftserver \
-t "$subpkgdir"/usr/bin
install -o multicraft -g multicraft -d "$subpkgdir"/var/log/multicraft
amove etc/logrotate.d/multicraftserver
}
openrc() {
pkgdesc="Multicraft server (OpenRC init scripts)"
pkgdesc="voxel game engine based on minetest - server (OpenRC init scripts)"
install_if="$pkgname-server openrc"
install -Dm755 "$srcdir"/multicraft-server.initd \
@ -113,10 +146,3 @@ openrc() {
"$subpkgdir"/etc/conf.d/multicraft-server
}
sha512sums="
15d2ce3b1150f077ff933a04f0ba8e02c71ee60a0edb636d1511d4e90244a34a14d7e5c4b47bee4de96cd179249a5a6963d7a092084f46c0fa54c9ff431a5265 multicraft-5.6.1.tar.gz
3a5cbcd8d13730e08f24a72b4ceb2a6d3ba1cfa4292475915da6413ab8084d0b7f0b5dc34edc152d5bf516730faf43d983433619b0a1fb15540adb5cab00ca10 irrlichtmt-1.9.0mt8.tar.gz
7bca17dc0bd59db9c07c160677498aa09297026104e922bf93b7629c274d0aebd226af60c5e82f49ffe3cc5c1e4448e3798b6c2a44144fc6eca4d3aaed3384bb multicraft-server.confd
c27aea87468538b48b5e0a66fa5cdde4fc67f3c00a0e57f359a2f044a31c5617d1b5f3dec72e015537ee3bf126bd1073878c0f4447de67db9be2c4cf21416dd7 multicraft-server.initd
c815e6c9c5433e4fda9b8559b662086e18b14461e4fd8626b4d5178554a2423c9b243450845d49710825b627dede91de8411655adff7a960672c639735499533 0001-CMake-link-with-Intl-when-necessary.patch
"

View File

@ -1,6 +1,6 @@
#USER="multicraft"
#GROUP="games"
#LOG="/var/lib/multicraft/multicraftd.log"
#CONFIG="/etc/multicraft/multicraft.conf"
USER="multicraft"
GROUP="games"
LOG="/var/log/multicraft/multicraft.log"
CONFIG="/etc/multicraft/multicraft.conf"
#ARGS=""
GAMEID="minimal"

View File

@ -46,40 +46,50 @@ Package: multicraft
Architecture: any
Depends: multicraft-data (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends}
Recommends: minetest-game | multicraft-game | minetest-game-minenux
Description: Multiplayer infinite-world block sandbox (client with embebed server)
Multicraft is a minecraft-inspired game written from scratch and licensed
Description: minetest voxel game engine with easy modding and game creation
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
.
This is a improved upgrade over 5.2 series due 5.X one superset and changed
the protocol of network.
This is the graphics player client with multiprotocol for any minetest engine,
the textures and other graphical files and the standard mods. Use this to
play as singleplayer or to connect to play in multiplayer modes.
.
This multicraft features and permit to use and serve
to both older and newer minetest games
Package: multicraft-server
Architecture: any
Depends: multicraft-data (= ${source:Version}), adduser, lsb-base (>= 3.0-6), ${misc:Depends}, ${shlibs:Depends}
Recommends: minetest-game | multicraft-game
Description: Multiplayer infinite-world block sandbox (server only)
Multicraft is a minecraft-inspired game written from scratch and licensed
Recommends: minetest-game | multicraft-game | minetest-game-minenux
Provides: minetest-server
Description: voxel game engine based on minetest - server multiplayer
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
.
This is the multicraft server package.
This is a improved upgrade over 5.2 series due 5.X one superset and changed
the protocol of network.
These are the server flavour with multiprotocol for any minetest engine, such as
the textures and other graphical files and the standard mods. Use this to
provide and deploy a service where players can connect over a network.
.
This multicraft features and permit to use and serve
to both older and newer minetest games
Package: multicraft-data
Architecture: all
Depends: adduser,${misc:Depends}
Provides: minetest-game, multicraft-game-minenux
Description: Multiplayer infinite-world block sandbox (data files)
Multicraft is a minecraft-inspired game written from scratch and licensed
Provides: multicraft-game, multicraft-game-minimal
Description: voxel game engine based on minetest - shared common data files
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
.
These are the files used by both client and server packages, such as
the textures and other graphical files and the standard mods.
This is a improved upgrade over 5.2 series due 5.X one superset and changed
the protocol of network.
These are the shared data files for both server and client programs, such as
the textures and other graphical files and the standard mods. Use this to
provide and deploy a service where players can connect over a network.
.
This multicraft features and permit to use and serve
to both older and newer minetest games

View File

@ -1,4 +1,4 @@
usr/share/games/multicraft
#usr/share/locale
usr/share/metainfo
usr/share/icons/hicolor
usr/share/doc/multicraft/*.txt usr/share/doc/multicraft-data/

View File

@ -1,6 +1,9 @@
multicraft-server for Debian
==========================
The documentation of api and information is on the multicraft-data package,
check the files at /usr/share/doc/multicraft-data/
Since version 0.4.10+repack-3 Debian supports running multiple Minetest servers.
An unprivileged system-wide user, Debian-minetest, controls the server.

View File

@ -1,2 +1,6 @@
usr/bin/multicraftserver usr/games
usr/bin/multicraftserver
etc/init.d/*
etc/logrotate.d/*
usr/lib/systemd/system/*
usr/share/man/man6/multicraftserver.6
usr/share/doc/multicraft/*example* usr/share/doc/multicraft-server/

View File

@ -1,33 +1,9 @@
#!/usr/bin/make -f
export DH_VERBOSE = 1
DH_VERBOSE = 1
export VERBOSE = 1
VERBOSE = 1
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CUFLAGS = -O0
else
CUFLAGS = -O2 -fomit-frame-pointer -fexpensive-optimizations -fpermissive -Wall
ifneq (,$(findstring i386,$(DEB_BUILD_ARCH)))
CUFLAGS = -m32 -O3 -fomit-frame-pointer -fexpensive-optimizations -march=pentium3 -mtune=nocona -mmmx -msse -mno-sse2 -mno-sse3 -fpermissive -mfpmath=sse -Wall
endif
ifneq (,$(findstring i486,$(DEB_BUILD_ARCH)))
CUFLAGS = -m32 -O3 -fomit-frame-pointer -fexpensive-optimizations -march=pentium3 -mtune=nocona -mmmx -msse -mno-sse2 -mno-sse3 -fpermissive -mfpmath=sse -Wall
endif
ifneq (,$(findstring amd64,$(DEB_BUILD_ARCH)))
CUFLAGS = -O3 -fomit-frame-pointer -fexpensive-optimizations -mtune=nocona -mmmx -msse -msse2 -fpermissive -mfpmath=sse -Wall
endif
endif
export CFLAGS=$(CUFLAGS)
export CXXFLAGS=$(CUFLAGS)
export DEB_CFLAGS_MAINT_APPEND = $(CUFLAGS)
export DEB_CXXFLAGS_MAINT_APPEND = $(CUFLAGS)
export DEB_BUILD_MAINT_OPTIONS = hardening=+fortify,+stackprotector,+relro,+bindnow,-pie
# older bz comprension
export DEB_DH_BUILDDEB_ARGS = -- -Zbzip2
@ -61,19 +37,12 @@ override_dh_auto_configure:
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=RelWithDebInfo
# -DPNG_PNG_INCLUDE_DIR=$(pkg-config libpng --variable=includedir) \
override_dh_installchangelogs:
# dh_installchangelogs debian/changelog.upstream
override_dh_install:
find . -iname "license.txt" -delete
dh_install --list-missing
override_dh_clean:
dh_clean
$(RM) -r bin
$(RM) -r lib/jsoncpp lib/gmp
override_dh_builddeb:
dh_builddeb -- -Zgzip

View File

@ -1,38 +0,0 @@
# Example watch control file for uscan
# Rename this file to "watch" and then you can run the "uscan" command
# to check for upstream updates and more.
# See uscan(1) for format
# Compulsory line, this is a version 4 file
version=4
# PGP signature mangle, so foo.tar.gz has foo.tar.gz.sig
#opts="pgpsigurlmangle=s%$%.sig%"
# HTTP site (basic)
#http://example.com/downloads.html \
# files/multicraft-([\d\.]+)\.tar\.gz debian uupdate
# Uncomment to examine an FTP server
#ftp://ftp.example.com/pub/multicraft-(.*)\.tar\.gz debian uupdate
# SourceForge hosted projects
# http://sf.net/multicraft/ multicraft-(.*)\.tar\.gz debian uupdate
# GitHub hosted projects
#opts="filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%<project>-$1.tar.gz%" \
# https://github.com/<user>/multicraft/tags \
# (?:.*?/)?v?(\d[\d.]*)\.tar\.gz debian uupdate
# PyPI
# https://pypi.debian.net/multicraft/multicraft-(.+)\.(?:zip|tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))
# Direct Git
# opts="mode=git" http://git.example.com/multicraft.git \
# refs/tags/v([\d\.]+) debian uupdate
# Uncomment to find new files on GooglePages
# http://example.googlepages.com/foo.html multicraft-(.*)\.tar\.gz

View File

@ -4,15 +4,15 @@
# Copyright (c) 2022 PICCORO Lenz McKAY
#
%define minetestuser %{name}
%define minetestgroup %{name}
%define multicraftuser %{name}
%define multicraftgroup %{name}
Name: multicraft
Version: 2.0.3
Release: 0%{?dist}
Summary: A Minetest/Minecraft based game
Summary: minetest voxel game engine with easy modding and game creation
License: CC-BY-SA-3.0 AND LGPL-3-or-later
Group: Amusements/Games/3D/Simulation
URL: https://codeberg.org/minenux/minetest-engine-multicraft
URL: https://multicraft.world
Source0: %{name}_%{version}.orig.tar.gz
#Source1: https://github.com/multicraft/irrlicht/archive/%{irrlichtmt_version}/irrlicht-%{irrlichtmt_version}.tar.gz
#Patch0: minetest-fix-luajit-include-path.patch
@ -74,11 +74,20 @@ Recommends: minetest-game
Provides: minetest-runtime = %{version}
%description
An infinite-world block sandbox game and a game engine, inspired by
InfiniMiner, Minecraft and the like BUT FORKED FROM MINETEST
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
This is the graphics player client with multiprotocol for any minetest engine,
the textures and other graphical files and the standard mods. Use this to
play as singleplayer or to connect to play in multiplayer modes.
This multicraft features and permit to use and serve
to both older and newer minetest games
%package %{name}server
Summary: Multicraft server for LAN and network only
Summary: voxel game engine based on minetest - server multiplayer
License: LGPL-2.1-or-later
Group: Amusements/Games/3D/Simulation
Requires: %{name}-data = %{version}
@ -93,13 +102,20 @@ Provides: minetest-runtime = %{version}
%{?systemd_requires}
%description %{name}server
An infinite-world block sandbox game and a game engine, inspired by
InfiniMiner, Minecraft and the like BUT FORKED FROM MINETEST
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
This package contains a multicraft server.
These are the server flavour with multiprotocol for any minetest engine, such as
the textures and other graphical files and the standard mods. Use this to
provide and deploy a service where players can connect over a network.
This multicraft features and permit to use and serve
to both older and newer minetest games
%package data
Summary: Multicraft shared data
Summary: voxel game engine based on minetest - common data files
License: CC-BY-SA-3.0 AND LGPL-2.1-or-later
Group: Amusements/Games/3D/Simulation
Requires: google-arimo-fonts
@ -108,10 +124,18 @@ Requires: google-droid-fonts
BuildArch: noarch
%description data
An infinite-world block sandbox game and a game engine, inspired by
InfiniMiner, Minecraft and the like.
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
This package contains data for multicraft and multicraftserver.
These are the files used by both client and server packages, such as
the textures and other graphical files and the standard mods.
This is a improved upgrade over 5.2 series due 5.X one superset and changed
the protocol of network.
This multicraft features and permit to use and serve
to both older and newer minetest games
%if 0%{?fedora_version} > 32
%global debug_package %{nil}
@ -141,19 +165,8 @@ find . -name .luacheckrc -print -delete
%undefine _hardened_build
%undefine _annotated_build
%undefine _strict_symbol_defs_build
CFLAGS="-O3 -fomit-frame-pointer -Wall -ffp-contract=off"
CXXFLAGS="-O3 -fomit-frame-pointer -Wall -ffp-contract=off -fpermissive"
LDFLAGS="-Wl,-z,relro -Wl,--as-needed -Wl,-z,now"
%ifarch x86_64
CFLAGS="-O3 -fomit-frame-pointer -mtune=nocona -mmmx -msse -msse2 -Wall -ffp-contract=off"
CXXFLAGS="-O3 -fomit-frame-pointer -mtune=nocona -mmmx -msse -msse2 -Wall -ffp-contract=off -fpermissive"
%endif
%ifarch %{ix86}
CFLAGS="-O3 -march=pentium3 -mtune=nocona -mfpmath=sse -fomit-frame-pointer -mmmx -msse -msse2 -mno-sse4 -mno-sse3 -fpermissive -Wall -fexpensive-optimization
s"
CXXFLAGS="-O3 -march=pentium3 -mtune=nocona -mfpmath=sse -fomit-frame-pointer -mmmx -msse -msse2 -mno-sse4 -mno-sse3 -fpermissive -Wall -fexpensive-optimizati
ons -fpermissive"
%endif
%ifarch aarch64
%define _lto_cflags %{nil}
%endif
@ -164,10 +177,11 @@ ons -fpermissive"
-DCMAKE_CXX_FLAGS="%{optflags} -mbranch-protection=none" \
%endif
%endif
-DCUSTOM_DOCDIR="%{_docdir}/%{name}" \
-DCUSTOM_DOCDIR="%{_docdir}/%{name}-data" \
-DCUSTOM_LOCALEDIR="%{_datadir}/locale" \
-DCUSTOM_SHAREDIR="%{_datadir}/games/%{name}" \
-DBUILD_SERVER=ON \
-DBUILD_CLIENT=ON \
-DRUN_IN_PLACE=OFF \
-DENABLE_CURL=ON \
-DENABLE_SOUND=ON \
@ -176,12 +190,14 @@ ons -fpermissive"
-DENABLE_FREETYPE=ON \
-DENABLE_SYSTEM_GMP=ON \
-DENABLE_SYSTEM_JSONCPP=ON \
-DPNG_PNG_INCLUDE_DIR=$(pkg-config libpng --variable=includedir) \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DENABLE_SPATIAL=ON \
-DENABLE_LEVELDB=ON \
-DENABLE_REDIS=ON \
-DENABLE_POSTGRESQL=ON \
%{nil}
-DPNG_PNG_INCLUDE_DIR=$(pkg-config libpng --variable=includedir) \
%{nil}}
%if 0%{?fedora_version} > 32
%cmake_build
%else
@ -217,7 +233,7 @@ fi
%pre %{name}server
getent group %{name} > /dev/null || %{_sbindir}/groupadd -r %{multicraftgroup}
getent passwd %{name} > /dev/null || %{_sbindir}/useradd -r -g %{multicraftgroup} -d %{_localstatedir}/lib/%{name} -s /sbin/nologin -c "user for %{name}server" %{multicraftuser}
getent passwd %{name} > /dev/null || %{_sbindir}/useradd -r -g %{multicraftgroup} -d %{_localstatedir}/games/%{name} -s /sbin/nologin -c "user for %{name}server" %{multicraftuser}
%service_add_pre %{name}@.service
%post %{name}server
@ -236,19 +252,19 @@ getent passwd %{name} > /dev/null || %{_sbindir}/useradd -r -g %{multicraftgroup
%files %{name}server
%{_bindir}/%{name}server
%attr(0755,%{multicraftuser},%{multicraftgroup}) %{_localstatedir}/lib/%{name}/
%attr(0755,%{multicraftuser},%{multicraftgroup}) %{_localstatedir}/games/%{name}/
%{_mandir}/man6/%{name}server.6%{?ext_man}
%dir %{_sysconfdir}/%{name}
%config %{_sysconfdir}/%{name}/multicraft.conf.example
# %{_unitdir}/%{name}@.service
# %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%{_unitdir}/%{name}@.service
%{_sysconfdir}/logrotate.d/%{name}
# %config(noreplace) %{_sysconfdir}/rsyslog.d/%{name}.conf
%files data
%license LICENSE.txt
%doc README.*
%doc %{_docdir}/%{name}/
%{_datadir}/games/%{name}/
%{_datadir}/games/%{name}
%dir %{_datadir}/icons/hicolor/
%{_datadir}/icons/hicolor/*/apps/%{name}.*
%dir %{_datadir}/metainfo/

View File

@ -1,5 +1,5 @@
[Unit]
Description=Multicraft multiplayer server multicraft.conf server config
Description=Multicraft server multicraft.conf
Documentation=man:multicraftserver(6)
After=network.target
RequiresMountsFor=/var/games/multicraft

View File

@ -1,5 +1,5 @@
[Unit]
Description=Multicraft multiplayer server %i.conf server config
Description=Multicraft server %i.conf config
Documentation=man:multicraftserver(6)
After=network.target
RequiresMountsFor=/var/games/multicraft

View File

@ -10,17 +10,20 @@
<content_attribute id="social-info">mild</content_attribute>
</content_rating>
<name>Multicraft</name>
<summary>Multiplayer mine infinite-world block sandbox game</summary>
<summary>voxel game engine based on minetest</summary>
<description>
<p>
Multicraft is an infinite-world block sandbox game and game engine.
Multicraft is a fork from minetest, a voxel game written from scratch and licensed
under the LGPL (version 2.1 or later). It supports both survival and creative
modes along with multiplayer support, dynamic lighting, and an "infinite" map
generator.
</p><p>
Players can create and destroy various types of blocks in a
three-dimensional open world. This allows forming structures in
every possible creation, on multiplayer servers or in singleplayer.
</p><p>
Multicraft is designed to be simple, stable, and portable.
It is lightweight enough to run on fairly old hardware.
This multicraft features and permit to use and serve
to both older and newer minetest games
</p><p>
Multicraft has many features, including:
</p>

View File

@ -1,7 +1,7 @@
[Desktop Entry]
Name=multicraft
GenericName=multicraft
Comment=Multiplayer infinite-world block sandbox
Comment=voxel game engine based on minetest
Comment[de]=Mehrspieler-Sandkastenspiel mit unendlichen Blockwelten
Comment[es]=Juego sandbox multijugador con mundos infinitos
Comment[fr]=Jeu multijoueurs de type bac à sable avec des mondes infinis