diff options
-rw-r--r-- | .SRCINFO | 76 | ||||
-rw-r--r-- | PKGBUILD | 118 | ||||
-rw-r--r-- | install | 13 | ||||
-rw-r--r-- | minetest.service | 10 | ||||
-rw-r--r-- | sysusers.d | 2 | ||||
-rw-r--r-- | tmpfiles.d | 1 |
6 files changed, 148 insertions, 72 deletions
@@ -1,38 +1,68 @@ pkgbase = minetest-git - pkgdesc = Voxel game engine and Infiniminer/Minecraft-inspired game - pkgver = 20190312.e22a69d61 + pkgver = 5.3.0.r399.g4caf156be pkgrel = 1 - url = http://www.minetest.net/ - install = install + epoch = 1 + url = https://www.minetest.net arch = i686 arch = x86_64 - license = LGPL2.1 - license = CCPL:by-sa - makedepends = git + license = GPL makedepends = cmake - depends = bzip2 + makedepends = curl + makedepends = freetype2 + makedepends = git + makedepends = hicolor-icon-theme + makedepends = hiredis + makedepends = irrlicht + makedepends = leveldb + makedepends = libvorbis + makedepends = luajit + makedepends = openal + makedepends = postgresql + makedepends = spatialindex + makedepends = sqlite + source = git+https://github.com/minetest/minetest.git + source = git+https://github.com/minetest/minetest_game.git + source = minetest.service + source = sysusers.d + source = tmpfiles.d + sha256sums = SKIP + sha256sums = SKIP + sha256sums = 2d80b4ff925770bdf3d857debb2ad11227cc9b022eb01a358b18f8d5f2641a5c + sha256sums = e4166d639b35efda2cd72269208184ab1e72c54541344cd202ff2005c90b9433 + sha256sums = d9405cf7cd0a657ef06082570783383a1f527fbc0bd122ea506d4fbe26950d4a + +pkgname = minetest-git + pkgdesc = Multiplayer infinite-world block sandbox game (git) + depends = curl + depends = desktop-file-utils depends = freetype2 + depends = hicolor-icon-theme depends = irrlicht - depends = jsoncpp - depends = leveldb - depends = libjpeg - depends = libpng depends = libvorbis depends = luajit - depends = mesa + depends = minetest-common-git depends = openal + depends = postgresql-libs + depends = spatialindex depends = sqlite - depends = hiredis + depends = xdg-utils provides = minetest - provides = minetest-common - provides = minetest-server conflicts = minetest - conflicts = minetest-common - conflicts = minetest-server - source = git://github.com/minetest/minetest.git - source = git://github.com/minetest/minetest_game.git - sha256sums = SKIP - sha256sums = SKIP -pkgname = minetest-git +pkgname = minetest-server-git + pkgdesc = Server of infinite-world block sandbox game (git) + depends = minetest-common + depends = leveldb + depends = curl + depends = sqlite + depends = hiredis + depends = luajit + depends = postgresql-libs + depends = spatialindex + provides = minetest-server + conflicts = minetest-server +pkgname = minetest-common-git + pkgdesc = Common data files for minetest and minetest-server (git) + provides = minetest-common + conflicts = minetest-common @@ -1,50 +1,96 @@ -# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Maintainer: katt <magunasu.b97@gmail.com> +# Contributor: Gaetan Bisson <bisson@archlinux.org> # Contributor: Konsta Kokkinen <kray@tsundere.fi> -pkgname=minetest-git -_pkgname=minetest -pkgver=20190312.e22a69d61 +pkgbase=minetest-git +pkgname=(minetest-git minetest-server-git minetest-common-git) +pkgver=5.3.0.r399.g4caf156be pkgrel=1 -pkgdesc='Voxel game engine and Infiniminer/Minecraft-inspired game' -url='http://www.minetest.net/' -license=('LGPL2.1' 'CCPL:by-sa') -arch=('i686' 'x86_64') -makedepends=('git' 'cmake') -depends=('bzip2' 'freetype2' 'irrlicht' 'jsoncpp' 'leveldb' 'libjpeg' - 'libpng' 'libvorbis' 'luajit' 'mesa' 'openal' 'sqlite' 'hiredis') -source=('git://github.com/minetest/minetest.git' - 'git://github.com/minetest/minetest_game.git') +epoch=1 +url=https://www.minetest.net +license=(GPL) +arch=(i686 x86_64) +makedepends=(cmake curl freetype2 git hicolor-icon-theme hiredis irrlicht leveldb libvorbis luajit openal postgresql spatialindex sqlite) +source=(git+https://github.com/minetest/minetest.git + git+https://github.com/minetest/minetest_game.git + minetest.service + sysusers.d + tmpfiles.d) sha256sums=('SKIP' - 'SKIP') - -conflicts=("${_pkgname}"{,-common,-server}) -provides=("${_pkgname}"{,-common,-server}) -install=install + 'SKIP' + '2d80b4ff925770bdf3d857debb2ad11227cc9b022eb01a358b18f8d5f2641a5c' + 'e4166d639b35efda2cd72269208184ab1e72c54541344cd202ff2005c90b9433' + 'd9405cf7cd0a657ef06082570783383a1f527fbc0bd122ea506d4fbe26950d4a') pkgver() { - cd "${srcdir}/${_pkgname}" - git log -1 --format='%cd.%h' --date=short | tr -d - -} - -prepare() { - cd "${srcdir}" - rm -fr minetest/games/minetest_game - cp -a minetest_game minetest/games/ + git -C "${pkgbase%-git}" describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g' } build() { - cd "${srcdir}/${_pkgname}" - cmake . \ - -DCMAKE_BUILD_TYPE=Release \ + cmake -B build-client -S "${pkgbase%-git}" \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DENABLE_GETTEXT=TRUE \ - -DRUN_IN_PLACE=FALSE \ - -DBUILD_SERVER=TRUE \ + -DBUILD_CLIENT=1 \ + -DENABLE_GETTEXT=1 \ + -DENABLE_FREETYPE=1 \ + -DENABLE_LEVELDB=0 \ + -DENABLE_POSTGRESQL=1 \ + -DENABLE_SPATIAL=1 \ + -DENABLE_REDIS=0 + make -C build-client - make + cmake -B build-server -S "${pkgbase%-git}" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_CLIENT=0 \ + -DBUILD_SERVER=1 \ + -DENABLE_LEVELDB=1 \ + -DENABLE_POSTGRESQL=1 \ + -DENABLE_SPATIAL=1 \ + -DENABLE_REDIS=1 + make -C build-server } -package() { - cd "${srcdir}/${_pkgname}" - make DESTDIR="${pkgdir}" install +package_minetest-git() { + pkgdesc='Multiplayer infinite-world block sandbox game (git)' + depends=(curl desktop-file-utils freetype2 hicolor-icon-theme irrlicht libvorbis luajit minetest-common-git openal postgresql-libs spatialindex sqlite xdg-utils) + provides=("${pkgname%-git}") + conflicts=("${pkgname%-git}") + + make -C build-client DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}"/usr/share/{minetest,doc} + rm "${pkgdir}"/usr/share/man/man6/minetestserver.6 +} + +package_minetest-server-git() { + pkgdesc='Server of infinite-world block sandbox game (git)' + depends=(minetest-common leveldb curl sqlite hiredis luajit postgresql-libs spatialindex) + provides=("${pkgname%-git}") + conflicts=("${pkgname%-git}") + + make -C build-server DESTDIR="${pkgdir}" install + + install -d "${pkgdir}"/etc/minetest + install -Dm644 minetest.service "${pkgdir}"/usr/lib/systemd/system/minetest@.service + + rm -rf "${pkgdir}"/usr/share/{minetest,metainfo,appdata,applications,icons,doc} + mv "${pkgdir}"/usr/share/man/man6/minetest.6 "${pkgdir}"/usr/share/man/man6/minetestserver.6 + + install -Dm644 "${srcdir}"/tmpfiles.d "${pkgdir}"/usr/lib/tmpfiles.d/minetest-server.conf + install -Dm644 "${srcdir}"/sysusers.d "${pkgdir}"/usr/lib/sysusers.d/minetest-server.conf +} + +package_minetest-common-git() { + pkgdesc='Common data files for minetest and minetest-server (git)' + provides=("${pkgname%-git}") + conflicts=("${pkgname%-git}") + + install -d "${pkgdir}"/usr/share/minetest + cp -r -t "${pkgdir}"/usr/share/minetest "${pkgbase%-git}"/{games,builtin,client,fonts,textures} build-client/locale + + cp -r "${srcdir}"/minetest_game "${pkgdir}"/usr/share/minetest/games/minetest + rm "${pkgdir}"/usr/share/minetest/games/minetest/.gitignore + + for file in "${pkgbase%-git}"/doc/{fst_api,lua_api,menu_lua_api,protocol,world_format}.txt; do + install -Dm644 $file "${pkgdir}"/usr/share/minetest/doc/$(basename $file) + done } diff --git a/install b/install deleted file mode 100644 index 62b95fd68610..000000000000 --- a/install +++ /dev/null @@ -1,13 +0,0 @@ -post_install() { - type update-desktop-database &>/dev/null && update-desktop-database -q - type gtk-update-icon-cache &>/dev/null && gtk-update-icon-cache -q -t -f usr/share/icons/hicolor - true -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/minetest.service b/minetest.service new file mode 100644 index 000000000000..64bf68914e27 --- /dev/null +++ b/minetest.service @@ -0,0 +1,10 @@ +[Unit] +Description=Minetest multiplayer server w/ %i.conf server config +After=syslog.target network.target + +[Service] +User=minetest +ExecStart=/usr/bin/minetestserver --config /etc/minetest/%i.conf --map-dir /var/lib/minetest/%i/ + +[Install] +WantedBy=multi-user.target diff --git a/sysusers.d b/sysusers.d new file mode 100644 index 000000000000..a925b454937f --- /dev/null +++ b/sysusers.d @@ -0,0 +1,2 @@ +u minetest - "minetest" /var/lib/minetest + diff --git a/tmpfiles.d b/tmpfiles.d new file mode 100644 index 000000000000..6564d5dedefc --- /dev/null +++ b/tmpfiles.d @@ -0,0 +1 @@ +d /var/lib/minetest - minetest minetest - - |