summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Le Cuirot <chewi@gentoo.org>2019-09-03 23:21:06 +0100
committerJames Le Cuirot <chewi@gentoo.org>2019-09-03 23:31:02 +0100
commit4cccd577d6d5d423f7324d77d895e62037fd2f25 (patch)
treedf704e807a587becd20c0e1e2d9fbedb38101681 /games-arcade
parentlicenses: Add Yacht-Club-Games-EULA for Shovel Knight (diff)
downloadgentoo-4cccd577d6d5d423f7324d77d895e62037fd2f25.tar.gz
gentoo-4cccd577d6d5d423f7324d77d895e62037fd2f25.tar.bz2
gentoo-4cccd577d6d5d423f7324d77d895e62037fd2f25.zip
games-arcade/shovel-knight: New package
Package-Manager: Portage-2.3.75, Repoman-2.3.17 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Diffstat (limited to 'games-arcade')
-rw-r--r--games-arcade/shovel-knight/Manifest1
-rw-r--r--games-arcade/shovel-knight/metadata.xml8
-rw-r--r--games-arcade/shovel-knight/shovel-knight-3.3.ebuild66
3 files changed, 75 insertions, 0 deletions
diff --git a/games-arcade/shovel-knight/Manifest b/games-arcade/shovel-knight/Manifest
new file mode 100644
index 000000000000..3eb8934d6031
--- /dev/null
+++ b/games-arcade/shovel-knight/Manifest
@@ -0,0 +1 @@
+DIST shovel_knight_treasure_trove_en_3_3_15418.sh 226753557 BLAKE2B 3103871333f5dec931b109ccc8a8820054f8bd934d01daf97bb5ad84e9dfaebd2c79d1943fb7049468f49c9db87c51dec0e08d38469e364bafb8bc50fbd9d40d SHA512 6832593440cc5059f0df37be991bb2e87c071c7ed566b2c6d0f6cc418190be92c4f793f2c694f620b9378914cde13abf9049eba8cdd90b9dfe961ae9a65dc42a
diff --git a/games-arcade/shovel-knight/metadata.xml b/games-arcade/shovel-knight/metadata.xml
new file mode 100644
index 000000000000..26079e608bed
--- /dev/null
+++ b/games-arcade/shovel-knight/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/games-arcade/shovel-knight/shovel-knight-3.3.ebuild b/games-arcade/shovel-knight/shovel-knight-3.3.ebuild
new file mode 100644
index 000000000000..656b2c154484
--- /dev/null
+++ b/games-arcade/shovel-knight/shovel-knight-3.3.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils desktop unpacker xdg-utils
+
+MY_PN="ShovelKnight"
+DESCRIPTION="Sweeping classic action adventure with an 8-bit retro aesthetic"
+HOMEPAGE="https://yachtclubgames.com/shovel-knight/"
+SRC_URI="${PN//-/_}_treasure_trove_en_3_3_15418.sh"
+LICENSE="Yacht-Club-Games-EULA"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+RESTRICT="bindist fetch splitdebug"
+
+# I packaged Box2D in the hope of unbundling it but it turns out this
+# game uses a custom version. -- Chewi :(
+
+RDEPEND="
+ media-libs/glew:1.10
+ media-libs/libsdl2[opengl,sound,video]
+ virtual/opengl
+"
+
+S="${WORKDIR}/data/noarch/game"
+
+DIR="/opt/${PN}"
+QA_PREBUILT="${DIR#/}/*"
+
+pkg_nofetch() {
+ einfo "Please buy and download ${SRC_URI} from:"
+ einfo " https://www.gog.com/game/${PN//-/_}"
+ einfo "and move it to your distfiles directory."
+}
+
+src_unpack() {
+ unpack_zip ${A}
+}
+
+src_install() {
+ local BITS=$(usex amd64 64 32) LIB=
+
+ exeinto "${DIR}"
+ doexe ${BITS}/${MY_PN}
+ make_wrapper ${MY_PN} ./${MY_PN} "${DIR}"
+
+ exeinto "${DIR}"/lib
+ doexe ${BITS}/lib/lib{Box2D.so.*,fmod*-*.so}
+
+ # The FMOD libraries are duplicated rather than symlinked, which is
+ # silly, so create our own symlinks. Both sets of names are needed.
+ for LIB in ${BITS}/lib/libfmod*-*.so; do
+ LIB=${LIB##*/}
+ dosym "${LIB}" "${DIR}/lib/${LIB%-*}.so"
+ done
+
+ insinto "${DIR}"
+ doins -r data/
+
+ newicon -s 256 ../support/icon.png ${PN}.png
+ make_desktop_entry ${MY_PN} "Shovel Knight"
+}
+
+pkg_postinst() { xdg_icon_cache_update; }
+pkg_postrm() { xdg_icon_cache_update; }