summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO76
-rw-r--r--PKGBUILD118
-rw-r--r--install13
-rw-r--r--minetest.service10
-rw-r--r--sysusers.d2
-rw-r--r--tmpfiles.d1
6 files changed, 148 insertions, 72 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 39d8da4f238f..8ea808bcc65e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -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
diff --git a/PKGBUILD b/PKGBUILD
index de84b328f0ee..8738e10704f0 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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 - -