aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Golubev <fatzer2@gmail.com>2021-06-20 13:29:53 +0300
committerAlexander Golubev <fatzer2@gmail.com>2021-06-20 13:30:44 +0300
commita44e5678701fe059823fadfd3dbeb20a7e724b7e (patch)
tree4aeb30632ee790ebb6accb45374d0fa84fb4ff1a /games-engines
parentdev-scheme/chez: Add threads USE flag (diff)
downloadguru-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/Manifest1
-rw-r--r--games-engines/instead/instead-3.3.4.ebuild114
-rw-r--r--games-engines/instead/instead-9999.ebuild114
-rw-r--r--games-engines/instead/metadata.xml17
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 &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>