summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Le Cuirot <chewi@gentoo.org>2018-03-01 22:03:35 +0000
committerJames Le Cuirot <chewi@gentoo.org>2018-03-01 22:03:35 +0000
commitd7096743466c1b9075299f1198a0072c06be69b5 (patch)
tree3029a45c3cb514dedce22177dc2894e7c8a3531d /games-action
parentprofiles: arch/arm64/package.use.mask mask microdns for media-video/vlc until... (diff)
downloadgentoo-d7096743466c1b9075299f1198a0072c06be69b5.tar.gz
gentoo-d7096743466c1b9075299f1198a0072c06be69b5.tar.bz2
gentoo-d7096743466c1b9075299f1198a0072c06be69b5.zip
games-action/trine-bin: Update for new download, unbundle libs, RPATH
* Upstream download has changed content and filename. The game version is still the same so perhaps only the bundled libraries changed. * Game failed to launch with bundled libstdc++.so.6. Unbundle as many libraries as possible for security, if nothing else. * Use chrpath to set an absolute RPATH, improving security. Closes: https://bugs.gentoo.org/369923 Package-Manager: Portage-2.3.24, Repoman-2.3.6
Diffstat (limited to 'games-action')
-rw-r--r--games-action/trine-bin/Manifest2
-rw-r--r--games-action/trine-bin/trine-bin-1.08-r2.ebuild (renamed from games-action/trine-bin/trine-bin-1.08-r1.ebuild)51
2 files changed, 32 insertions, 21 deletions
diff --git a/games-action/trine-bin/Manifest b/games-action/trine-bin/Manifest
index 0362ae96dbc..dd34b082ffe 100644
--- a/games-action/trine-bin/Manifest
+++ b/games-action/trine-bin/Manifest
@@ -1 +1 @@
-DIST Trine.64.run 648471997 SHA256 1c9067cb19e3c954b460b4df27e6ca5d80b31c7ead49bd5779dcbce5528177db SHA512 400200a3ebc6003545df460f9a8af7fe4f6f370655432c66ca8a5ceb10e40bf205e81f70cfbe3fe7386de9ec0aeb5e23f02590776c2b0f35a32f9fbc1012ea3a WHIRLPOOL b6610f53e8e4079383de9a664b8cb019fbe9daa7cdbb204116c3e34b27327325dfdc39649185076524429f8ba2fc1a0889f9006e6873db65c3f73784f440e1e9
+DIST TrineUpdate4.64.run 647258173 BLAKE2B b520d1f312b9bd9ef94f32cd5fbe7ceaea0cb1bd839d8a898ac02cac0eb3464d83588f1163949ca2f53d7badb2eca456b8e1438d6f5e96e3c6baa10ca6cb865a SHA512 1255edc90cfd47c4f5a3cf7fa07cebac047f46f9b5f9f6621baff01d9c4295c95204a695127ce4947038c50c80253e7a004ec1c3accff6ac8697605fd25885f9
diff --git a/games-action/trine-bin/trine-bin-1.08-r1.ebuild b/games-action/trine-bin/trine-bin-1.08-r2.ebuild
index dd00324d01d..99503c9efac 100644
--- a/games-action/trine-bin/trine-bin-1.08-r1.ebuild
+++ b/games-action/trine-bin/trine-bin-1.08-r2.ebuild
@@ -1,36 +1,43 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# these are ELFs that include a ZIP (504b0304) appended to it
-# dd if=Trine.64.run of=Trine.64.zip ibs=$((0x342a8)) skip=1
-# dd if=Trine.32.run of=Trine.32.zip ibs=$((0x31c24)) skip=1
-# but `unzip` will skip the ELF at the start. both ELFs contain
-# the same zip appended, so only need to hash one of them.
-
EAPI=6
-inherit unpacker eutils
+
+inherit desktop eutils unpacker
DESCRIPTION="A physics-based action game with character-dependent solutions to challenges"
HOMEPAGE="http://trine-thegame.com/"
-SRC_URI="Trine.64.run"
+SRC_URI="TrineUpdate4.64.run"
LICENSE="frozenbyte-eula"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
-IUSE=""
RESTRICT="fetch strip"
-DEPEND="app-arch/unzip"
+DEPEND="
+ app-admin/chrpath
+ app-arch/unzip
+"
+
RDEPEND="
+ dev-libs/glib:2
dev-libs/libx86
- gnome-base/libglade
+ gnome-base/libglade:2.0
+ media-libs/libogg
+ media-libs/libpng:1.2
+ >=media-libs/libsdl-1.2[opengl,sound,video]
+ >=media-libs/libvorbis-1.3
+ >=media-libs/openal-1.15
+ >=media-libs/tiff-3.9:3
>=sys-devel/gcc-4.3.0
- >=sys-libs/glibc-2.4"
+ >=sys-libs/glibc-2.4
+ virtual/jpeg:62
+ x11-libs/gtk+:2
+"
-S=${WORKDIR}
-
-d=/opt/${PN}
-QA_PREBUILT="${d#/}/trine-launcher ${d#/}/trine-bin ${d#/}/lib*/lib*.so*"
+S="${WORKDIR}"
+d="/opt/${PN}"
+QA_PREBUILT="*"
pkg_nofetch() {
einfo "Fetch ${SRC_URI} and put it into ${DISTDIR}"
@@ -38,9 +45,13 @@ pkg_nofetch() {
}
src_unpack() {
- # manually run unzip as the initial seek causes it to exit(1)
unpack_zip ${A}
- rm lib*/lib{gcc_s,m,rt,selinux}.so.? || die
+}
+
+src_prepare() {
+ default
+ rm -v lib*/lib{gcc_s,jpeg,m,ogg,openal,png*,rt,SDL*,selinux,stdc++,tiff,vorbis*}.* || die
+ chrpath --replace "${EPREFIX}${d}"/lib trine-{bin,launcher}$(usex x86 32 64) || die
}
src_install() {
@@ -56,7 +67,7 @@ src_install() {
make_desktop_entry ${bb} "Trine ${b}" Trine
done
- exeinto ${d}/lib${sfx}
+ exeinto ${d}/lib
doexe lib${sfx}/*
insinto ${d}