commit:     a44e5678701fe059823fadfd3dbeb20a7e724b7e
Author:     Alexander Golubev <fatzer2 <AT> gmail <DOT> com>
AuthorDate: Sun Jun 20 10:29:53 2021 +0000
Commit:     Golubev Alexander <fatzer2 <AT> gmail <DOT> com>
CommitDate: Sun Jun 20 10:30:44 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=a44e5678

games-engines/instead: new package

Bug: https://bugs.gentoo.org/285086
Signed-off-by: Alexander Golubev <fatzer2 <AT> gmail.com>

 games-engines/instead/Manifest             |   1 +
 games-engines/instead/instead-3.3.4.ebuild | 114 +++++++++++++++++++++++++++++
 games-engines/instead/instead-9999.ebuild  | 114 +++++++++++++++++++++++++++++
 games-engines/instead/metadata.xml         |  17 +++++
 4 files changed, 246 insertions(+)

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>fatz...@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 &amp; click or 
text-based adventures.</longdescription>
+       <longdescription lang="ru">INSTEAD это инструмент для создания и 
запуска текстографические игр. Жанр конкретных игр может отличаться и находится 
на стыке интерактивной литературы, визуальных новелл, а также классических 
point  &amp; click и тескстовых квестов.</longdescription>
+       <upstream>
+               <remote-id type="github">instead-hub/instead</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to