diff options
Diffstat (limited to 'games-rpg/silence/silence-1.2.20280.ebuild')
-rw-r--r-- | games-rpg/silence/silence-1.2.20280.ebuild | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/games-rpg/silence/silence-1.2.20280.ebuild b/games-rpg/silence/silence-1.2.20280.ebuild new file mode 100644 index 000000000000..b54a9afa9fe3 --- /dev/null +++ b/games-rpg/silence/silence-1.2.20280.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop wrapper xdg + +DESCRIPTION="3D point and click adventure, sequel to The Whispered World" +HOMEPAGE="https://www.daedalic.com/silence" +SRC_URI="Silence_${PV}_Linux_Full_EN_DE_IT_ES_FR_ZH_JA_PT_KO_RU_PL_EL_Daedalic_noDRM.zip" +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="l10n_de +l10n_en l10n_pl l10n_zh" +REQUIRED_USE="|| ( ${IUSE//+} )" +RESTRICT="bindist fetch splitdebug strip" + +BDEPEND="app-arch/unzip" + +RDEPEND=" + virtual/opengl + x11-libs/libX11 + x11-libs/libXcursor + x11-libs/libXrandr +" + +S="${WORKDIR}" +DIR="/opt/${PN}" +QA_PREBUILT="${DIR#/}/*" + +pkg_nofetch() { + einfo "Please buy and download ${SRC_URI} from:" + einfo " https://www.humblebundle.com/store/${PN}" + einfo "and move it to your distfiles directory." +} + +src_prepare() { + default + + MY_ARCH=$(usex amd64 x86_64 x86) + OTHER_ARCH=$(usex amd64 x86 x86_64) + + # Delete files for the other architecture. + # Delete Steam library because we're not running under Steam. + # Delete Screen Selector library, because it requires GTK2 but is unused. + rm -rv \ + Silence_Data/{Mono,Plugins}/${OTHER_ARCH}/ \ + Silence_Data/Plugins/${MY_ARCH}/{libDaedalic.Ecosystems.Steam.External,ScreenSelector}.so \ + || die + + # Remove unneeded language files. + local locale localedir + for locale in ${IUSE//+}; do + if [[ ${locale} = l10n_* ]] && ! use ${locale}; then + case ${locale#l10n_} in + de) localedir=german ;; + en) localedir=english ;; + pl) localedir=polish ;; + zh) localedir=chinese ;; + *) die "unrecognised locale ${locale}" ;; + esac + rm -rv Silence_Data/GameData/Sounds/{LipSync,Voice}/${localedir}/ || die + fi + done +} + +src_install() { + exeinto "${DIR}" + newexe Silence.${MY_ARCH} Silence + make_wrapper ${PN} ./Silence "${DIR}" + + insinto "${DIR}" + doins -r Silence_Data version.txt + + local libdir + for libdir in Mono Plugins; do + exeinto "${DIR}"/Silence_Data/${libdir}/${MY_ARCH} + doexe Silence_Data/${libdir}/${MY_ARCH}/*.so + done + + newicon -s 128 Silence_Data/Resources/UnityPlayer.png silence.png + make_desktop_entry ${PN} Silence +} + +pkg_postinst() { + xdg_pkg_postinst + + if ! use l10n_en; then + ewarn "You have disabled the English voice audio and lip sync data. The game" + ewarn "still defaults to English though, so you will need to manually change" + ewarn "the voice language in the options menu." + fi +} |