summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLejo <Lejo_1@web.de>2020-11-15 17:38:04 +0100
committerGitHub <noreply@github.com>2020-11-15 17:38:04 +0100
commita16e412c9de26beea427cb1f15e42db61c106b68 (patch)
treec6a56b6563619e954b272d73ceb38c387ffa7da6
parentee1853e9bc740a521270e2e113bb4215246382c4 (diff)
downloadminetest-a16e412c9de26beea427cb1f15e42db61c106b68.tar.gz
minetest-a16e412c9de26beea427cb1f15e42db61c106b68.tar.bz2
minetest-a16e412c9de26beea427cb1f15e42db61c106b68.zip
Auto build client appimage (#10561)
* Replace ubuntu:14.04 with ubuntu 18:04 * Auto build client appimage Co-authored-by: sfan5 <sfan5@live.de>
-rw-r--r--.gitlab-ci.yml74
-rw-r--r--AppImageBuilder.yml51
2 files changed, 98 insertions, 27 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d03b7b601..c3e120375 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -36,7 +36,7 @@ variables:
- cp misc/debpkg-control build/deb/minetest/DEBIAN/control
- cp -Rp artifact/minetest/usr build/deb/minetest/
script:
- - git clone $MINETEST_GAME_REPO build/deb/minetest/usr/share/minetest/games/minetest
+ - git clone $MINETEST_GAME_REPO build/deb/minetest/usr/share/minetest/games/minetest_game
- rm -Rf build/deb/minetest/usr/share/minetest/games/minetest/.git
- sed -i 's/DATEPLACEHOLDER/'$(date +%y.%m.%d)'/g' build/deb/minetest/DEBIAN/control
- sed -i 's/LEVELDB_PLACEHOLDER/'$LEVELDB_PKG'/g' build/deb/minetest/DEBIAN/control
@@ -142,58 +142,53 @@ deploy:debian-10:
## Ubuntu
##
-# Trusty
+# Xenial
-build:ubuntu-14.04:
+build:ubuntu-16.04:
extends: .build_template
- image: ubuntu:trusty
+ image: ubuntu:xenial
before_script:
- - echo "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu trusty main" > /etc/apt/sources.list.d/uptodate-toolchain.list
- - apt-key adv --keyserver keyserver.ubuntu.com --recv BA9EF27F
- apt-get update -y
- - apt-get -y install build-essential gcc-6 g++-6 libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
- variables:
- CC: gcc-6
- CXX: g++-6
+ - apt-get -y install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
-package:ubuntu-14.04:
+package:ubuntu-16.04:
extends: .debpkg_template
- image: ubuntu:trusty
+ image: ubuntu:xenial
dependencies:
- - build:ubuntu-14.04
+ - build:ubuntu-16.04
variables:
- LEVELDB_PKG: libleveldb1
+ LEVELDB_PKG: libleveldb1v5
-deploy:ubuntu-14.04:
+deploy:ubuntu-16.04:
extends: .debpkg_install
- image: ubuntu:trusty
+ image: ubuntu:xenial
dependencies:
- - package:ubuntu-14.04
+ - package:ubuntu-16.04
variables:
- LEVELDB_PKG: libleveldb1
+ LEVELDB_PKG: libleveldb1v5
-# Xenial
+# Bionic
-build:ubuntu-16.04:
+build:ubuntu-18.04:
extends: .build_template
- image: ubuntu:xenial
+ image: ubuntu:bionic
before_script:
- apt-get update -y
- apt-get -y install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
-package:ubuntu-16.04:
+package:ubuntu-18.04:
extends: .debpkg_template
- image: ubuntu:xenial
+ image: ubuntu:bionic
dependencies:
- - build:ubuntu-16.04
+ - build:ubuntu-18.04
variables:
LEVELDB_PKG: libleveldb1v5
-deploy:ubuntu-16.04:
+deploy:ubuntu-18.04:
extends: .debpkg_install
- image: ubuntu:xenial
+ image: ubuntu:bionic
dependencies:
- - package:ubuntu-16.04
+ - package:ubuntu-18.04
variables:
LEVELDB_PKG: libleveldb1v5
@@ -308,3 +303,28 @@ pages:
only:
- master
+package:appimage-client:
+ stage: package
+ image: appimagecrafters/appimage-builder
+ dependencies:
+ - build:ubuntu-18.04
+ before_script:
+ - apt-get update -y
+ - apt-get install -y git wget
+ # Collect files
+ - mkdir AppDir
+ - cp -a artifact/minetest/usr/ AppDir/usr/
+ - rm AppDir/usr/bin/minetestserver
+ - cp -R clientmods AppDir/usr/share/minetest
+ script:
+ - git clone $MINETEST_GAME_REPO AppDir/usr/share/minetest/games/minetest_game
+ - rm -Rf AppDir/usr/share/minetest/games/minetest/.git
+ - export VERSION=$CI_COMMIT_REF_NAME-$CI_COMMIT_SHORT_SHA
+ # Remove PrefersNonDefaultGPU property due to validation errors
+ - sed -i '/PrefersNonDefaultGPU/d' AppDir/usr/share/applications/net.minetest.minetest.desktop
+ - appimage-builder --skip-test
+ artifacts:
+ when: on_success
+ expire_in: 90 day
+ paths:
+ - ./*.AppImage
diff --git a/AppImageBuilder.yml b/AppImageBuilder.yml
new file mode 100644
index 000000000..9ecad5d8e
--- /dev/null
+++ b/AppImageBuilder.yml
@@ -0,0 +1,51 @@
+version: 1
+
+AppDir:
+ path: ./AppDir
+
+ app_info:
+ id: minetest
+ name: Minetest
+ icon: minetest
+ version: !ENV ${VERSION}
+ exec: usr/bin/minetest
+ exec_args: $@
+ runtime:
+ env:
+ APPDIR_LIBRARY_PATH: $APPDIR/usr/lib/x86_64-linux-gnu
+
+ apt:
+ arch: amd64
+ sources:
+ - sourceline: deb http://archive.ubuntu.com/ubuntu/ bionic main universe
+ key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32'
+ - sourceline: deb http://archive.ubuntu.com/ubuntu/ bionic-updates main universe
+ - sourceline: deb http://archive.ubuntu.com/ubuntu/ bionic-backports main universe
+ - sourceline: deb http://archive.ubuntu.com/ubuntu/ bionic-security main universe
+
+ include:
+ - libirrlicht1.8
+ - libxxf86vm1
+ - libgl1-mesa-glx
+ - libsqlite3-0
+ - libogg0
+ - libvorbis0a
+ - libopenal1
+ - libcurl3-gnutls
+ - libfreetype6
+ - zlib1g
+ - libgmp10
+ - libjsoncpp1
+
+ files:
+ exclude:
+ - usr/share/man
+ - usr/share/doc/*/README.*
+ - usr/share/doc/*/changelog.*
+ - usr/share/doc/*/NEWS.*
+ - usr/share/doc/*/TODO.*
+
+AppImage:
+ update-information: None
+ sign-key: None
+ arch: x86_64