diff options
author | 2021-06-20 13:29:53 +0300 | |
---|---|---|
committer | 2021-06-20 13:30:44 +0300 | |
commit | a44e5678701fe059823fadfd3dbeb20a7e724b7e (patch) | |
tree | 4aeb30632ee790ebb6accb45374d0fa84fb4ff1a /games-engines | |
parent | dev-scheme/chez: Add threads USE flag (diff) | |
download | guru-a44e5678701fe059823fadfd3dbeb20a7e724b7e.tar.gz guru-a44e5678701fe059823fadfd3dbeb20a7e724b7e.tar.bz2 guru-a44e5678701fe059823fadfd3dbeb20a7e724b7e.zip |
games-engines/instead: new package
Bug: https://bugs.gentoo.org/285086
Signed-off-by: Alexander Golubev <fatzer2@gmail.com>
Diffstat (limited to 'games-engines')
-rw-r--r-- | games-engines/instead/Manifest | 1 | ||||
-rw-r--r-- | games-engines/instead/instead-3.3.4.ebuild | 114 | ||||
-rw-r--r-- | games-engines/instead/instead-9999.ebuild | 114 | ||||
-rw-r--r-- | games-engines/instead/metadata.xml | 17 |
4 files changed, 246 insertions, 0 deletions
diff --git a/games-engines/instead/Manifest b/games-engines/instead/Manifest new file mode 100644 index 000000000..8d23cbc61 --- /dev/null +++ b/games-engines/instead/Manifest @@ -0,0 +1 @@ +DIST instead-3.3.4.tar.gz 3602698 BLAKE2B a374e650f459132635b148fbcb820c791506120dd2d512b8f599659119a2670f4e50e50a50e318aec2e0b4150aa9c102f2f00e0e679a0d87e0122af19dbbdb66 SHA512 9601921cbe3b1ad5e03d125cd4f296069c2a8080deaf2f607706f4677398d9f39c82efd1bc00aaf53efa49c0e700be6fc7f3a4f8c20760e62030ca2881098090 diff --git a/games-engines/instead/instead-3.3.4.ebuild b/games-engines/instead/instead-3.3.4.ebuild new file mode 100644 index 000000000..fe95e0f11 --- /dev/null +++ b/games-engines/instead/instead-3.3.4.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PLOCALES="cs de en es fr it nl pt ru uk" +PLOCALE_BACKUP="en" +LUA_COMPAT=( lua5-1 luajit ) + +inherit cmake lua-single l10n + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/instead-hub/${PN}.git" + inherit git-r3 +else + SRC_URI="https://github.com/instead-hub/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="INSTEAD text-based quest game engine" +HOMEPAGE="https://instead.hugeping.ru/" + +LICENSE="MIT" +SLOT="0" +IUSE="doc +iconv +sdl2" +# gtk3 is forced since gtk2 already near its end-of-life +# harfbuzz support requres features from SDL2_ttf version which is not yet released (>2.0.15) + +REQUIRED_USE=" + ${LUA_REQUIRED_USE} +" + +BDEPEND=" + virtual/pkgconfig + ${LUA_DEPS} +" + +SDL_DEPS=" + media-libs/libsdl!VER![sound,video] + media-libs/sdl!VER!-mixer + media-libs/sdl!VER!-image + media-libs/sdl!VER!-ttf +" + +COMMON_DEPEND=" + ${LUA_DEPS} + sys-libs/zlib + x11-libs/gtk+:3 + sdl2? ( ${SDL_DEPS//!VER!/2} ) + !sdl2? ( ${SDL_DEPS//!VER!/} ) + iconv? ( >=virtual/libiconv-0-r1 ) +" +# harfbuzz? ( +# media-libs/harfbuzz +# media-libs/sdl!VER!-ttf[harfbuzz] +# ) + +RDEPEND="${COMMON_DEPEND}" +DEPEND="${COMMON_DEPEND}" + +DOCS=( AUTHORS ChangeLog README.md ) + +src_prepare() { + l10n_find_plocales_changes "${S}/lang" "" ".ini" + + rm_loc() { rm "lang/$1.ini" || die; } + l10n_for_each_disabled_locale_do rm_loc + + # The docs dir contains some code to build pdf out of the Markdown docs, but it requires some + # weird util called multimarkdown, so we will just install the md's themselfs. + if use doc; then + EXTRA_DOCS=() + for l in $(l10n_get_locales) ${PLOCALE_BACKUP}; do + for d in "docs/modules-$l.md" "docs/stead3-$l.md"; do + if [[ -f "$d" ]]; then + EXTRA_DOCS=( "${EXTRA_DOCS[@]}" "$d" ) + fi + done + done + + DOCS=( "${DOCS[@]}" "${EXTRA_DOCS[@]}" ) + fi + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DWITH_GTK2=OFF + -DWITH_GTK3=ON + -DWITH_LUAJIT="$(usex lua_single_target_luajit)" + -DWITH_ICONV="$(usex iconv)" + -DWITH_SDL2="$(usex sdl2)" + ) +# -DWITH_HARFBUZZ="$(usex harfbuzz)" + + cmake_src_configure +} + +pkg_postinst() { + elog "The instead package contains only a game engine. The actual" + elog "games have to be installed separately. To install a game" + elog "download an archive and extract it to ~/.instead/games or" + elog "to ${EPREFIX}/usr/share/instead/games." + elog "" + elog "A collection of various games can be found at:" + elog " https://instead.itch.io/" + elog " http://instead-games.ru/" + elog "" + elog "Also there are some third-party tools to manage download" + elog "and installation of games like insteadman3:" + elog " https://jhekasoft.github.io/insteadman" + +} diff --git a/games-engines/instead/instead-9999.ebuild b/games-engines/instead/instead-9999.ebuild new file mode 100644 index 000000000..fe95e0f11 --- /dev/null +++ b/games-engines/instead/instead-9999.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PLOCALES="cs de en es fr it nl pt ru uk" +PLOCALE_BACKUP="en" +LUA_COMPAT=( lua5-1 luajit ) + +inherit cmake lua-single l10n + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/instead-hub/${PN}.git" + inherit git-r3 +else + SRC_URI="https://github.com/instead-hub/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="INSTEAD text-based quest game engine" +HOMEPAGE="https://instead.hugeping.ru/" + +LICENSE="MIT" +SLOT="0" +IUSE="doc +iconv +sdl2" +# gtk3 is forced since gtk2 already near its end-of-life +# harfbuzz support requres features from SDL2_ttf version which is not yet released (>2.0.15) + +REQUIRED_USE=" + ${LUA_REQUIRED_USE} +" + +BDEPEND=" + virtual/pkgconfig + ${LUA_DEPS} +" + +SDL_DEPS=" + media-libs/libsdl!VER![sound,video] + media-libs/sdl!VER!-mixer + media-libs/sdl!VER!-image + media-libs/sdl!VER!-ttf +" + +COMMON_DEPEND=" + ${LUA_DEPS} + sys-libs/zlib + x11-libs/gtk+:3 + sdl2? ( ${SDL_DEPS//!VER!/2} ) + !sdl2? ( ${SDL_DEPS//!VER!/} ) + iconv? ( >=virtual/libiconv-0-r1 ) +" +# harfbuzz? ( +# media-libs/harfbuzz +# media-libs/sdl!VER!-ttf[harfbuzz] +# ) + +RDEPEND="${COMMON_DEPEND}" +DEPEND="${COMMON_DEPEND}" + +DOCS=( AUTHORS ChangeLog README.md ) + +src_prepare() { + l10n_find_plocales_changes "${S}/lang" "" ".ini" + + rm_loc() { rm "lang/$1.ini" || die; } + l10n_for_each_disabled_locale_do rm_loc + + # The docs dir contains some code to build pdf out of the Markdown docs, but it requires some + # weird util called multimarkdown, so we will just install the md's themselfs. + if use doc; then + EXTRA_DOCS=() + for l in $(l10n_get_locales) ${PLOCALE_BACKUP}; do + for d in "docs/modules-$l.md" "docs/stead3-$l.md"; do + if [[ -f "$d" ]]; then + EXTRA_DOCS=( "${EXTRA_DOCS[@]}" "$d" ) + fi + done + done + + DOCS=( "${DOCS[@]}" "${EXTRA_DOCS[@]}" ) + fi + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DWITH_GTK2=OFF + -DWITH_GTK3=ON + -DWITH_LUAJIT="$(usex lua_single_target_luajit)" + -DWITH_ICONV="$(usex iconv)" + -DWITH_SDL2="$(usex sdl2)" + ) +# -DWITH_HARFBUZZ="$(usex harfbuzz)" + + cmake_src_configure +} + +pkg_postinst() { + elog "The instead package contains only a game engine. The actual" + elog "games have to be installed separately. To install a game" + elog "download an archive and extract it to ~/.instead/games or" + elog "to ${EPREFIX}/usr/share/instead/games." + elog "" + elog "A collection of various games can be found at:" + elog " https://instead.itch.io/" + elog " http://instead-games.ru/" + elog "" + elog "Also there are some third-party tools to manage download" + elog "and installation of games like insteadman3:" + elog " https://jhekasoft.github.io/insteadman" + +} diff --git a/games-engines/instead/metadata.xml b/games-engines/instead/metadata.xml new file mode 100644 index 000000000..158ba64fb --- /dev/null +++ b/games-engines/instead/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>fatzer2@gmail.com</email> + <name>Alexander Golubev</name> + </maintainer> + <use> + <flag name="doc">Include some additional documentation on how to create games for the instead engine</flag> + <flag name="sdl2">Use libsdl2 instead of libsdl</flag> + </use> + <longdescription lang="en">INSTEAD is a tool to make and run textographic games. The exact look and feel of such games may vary from interactive fiction and visual novels to classic point & click or text-based adventures.</longdescription> + <longdescription lang="ru">INSTEAD это инструмент для создания и запуска текстографические игр. Жанр конкретных игр может отличаться и находится на стыке интерактивной литературы, визуальных новелл, а также классических point & click и тескстовых квестов.</longdescription> + <upstream> + <remote-id type="github">instead-hub/instead</remote-id> + </upstream> +</pkgmetadata> |