--- Begin Message ---
Subject: |
[PATCH] gnu: Add instead. |
Date: |
Mon, 08 Feb 2021 02:23:07 -0500 |
User-agent: |
mu4e 1.4.15; emacs 28.0.50 |
hope this work
From b0693f72129958c7d9e18cd5efb5d83902dee8f3 Mon Sep 17 00:00:00 2001
From: Dmitry Polyakov <liltechdude@gmail.com>
Subject: [PATCH] gnu: Add instead.
* gnu/local.mk (instead): New variable.
---
gnu/local.mk | 2 +
gnu/packages/game-development.scm | 45
+++++++++++++++++++
.../patches/instead-use-games-path.patch | 28 ++++++++++++
3 files changed, 75 insertions(+)
create mode 100644 gnu/packages/patches/instead-use-games-path.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index b9b4b66..923231f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -40,6 +40,7 @@
# Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes@gmail.com>
# Copyright © 2020 Vinicius Monego <monego@posteo.net>
# Copyright © 2021 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
+# Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
#
# This file is part of GNU Guix.
#
@@ -1187,6 +1188,7 @@ dist_patch_DATA =
\
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/inetutils-hurd.patch \
%D%/packages/patches/inkscape-poppler-0.76.patch \
+ %D%/packages/patches/instead-use-games-path.patch \
%D%/packages/patches/intel-xed-fix-nondeterminism.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/iputils-libcap-compat.patch \
diff --git a/gnu/packages/game-development.scm
b/gnu/packages/game-development.scm
index 92c3da9..a117058 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -20,6 +20,7 @@
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
+;;; Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1961,6 +1962,50 @@ all modern computing platforms. Each library
component is fairly independent
of the others")
(license license:lgpl2.0+)))
+(define-public instead
+ (package
+ (name "instead")
+ (version "3.3.2")
+ (build-system cmake-build-system)
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/instead-hub/instead")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
"014wfz5z5x72rhnakczpgfyw8s6bq510bxfmn4gv66jahkh4b65f"))
+ (patches
+ (search-patches
+ "instead-use-games-path.patch"))))
+ (arguments
+ '(#:configure-flags
+ (list (string-append
+ "-DLUA_INCLUDE_DIR="
+ (assoc-ref %build-inputs "luajit")
"/include/luajit-2.1/")
+ "-DWITH_LUAJIT=1"
+ "-DWITH_GTK3=1")
+ #:tests? #f))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("sdl2-images" ,sdl2-image)
+ ("sdl2-ttf" ,sdl2-ttf)
+ ("lua" ,lua)
+ ("sdl2-mixer" ,sdl2-mixer)
+ ("luajit" ,luajit)
+ ("gtk+",gtk+)))
+ (home-page "https://instead3.syscall.ru/")
+ (synopsis "Simple text adventure interpreter for Unix and
Windows")
+ (description "Simple text adventure interpreter for Unix and
Windows.")
+ (license (list license:gpl2 license:zlib))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "INSTEAD_GAMES_PATH")
+ (separator #f) ;single entry
+ (files '("share/instead/games")))))))
+
(define-public ioquake3
;; We follow master since it seems that there won't be releases
after 1.3.6.
(let ((commit "95b9cab4d644fa3bf757cfff821cc4f7d76e38b0"))
diff --git a/gnu/packages/patches/instead-use-games-path.patch
b/gnu/packages/patches/instead-use-games-path.patch
new file mode 100644
index 0000000..2e460bf
--- /dev/null
+++ b/gnu/packages/patches/instead-use-games-path.patch
@@ -0,0 +1,28 @@
+From eba79afc957b9dc89cfd5c21434bd8ad5e0363bb Mon Sep 17 00:00:00
2001
+From: Dmitry Polyakov <liltechdude@gmail.com>
+Date: Wed, 3 Feb 2021 14:33:37 -0500
+Subject: [PATCH] add custom gamedir support
+
+---
+ src/main.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/main.c b/src/main.c
+index 9e6e2c3b..860bd3aa 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -366,6 +366,12 @@ int instead_main(int argc, char *argv[])
+ setdir(game_cwd);
+ profile_load(NULL);
+
++ char *gamespath_env = NULL;
++
++ if (gamespath_env = getenv("INSTEAD_GAMES_PATH"), gamespath_env
!= NULL) {
++ games_sw = strdup(gamespath_env);
++ }
++
+ for (i = 1; i < argc; i++) {
+ if (lua_sw) /* during load profile */
+ break;
+--
+2.30.0
--
2.30.0
--
魔法少女リルテチヅデですよ。
signature.asc
Description: PGP signature
--- End Message ---
--- Begin Message ---
Subject: |
Re: [PATCH] gnu: Add instead. |
Date: |
Wed, 04 Aug 2021 15:50:48 +0200 |
User-agent: |
Evolution 3.34.2 |
Hi,
I've made a lot of changes to this patch, but given that it has been
around for a while and I didn't want to stall you even further, I've
decided to push the modified version.
Am Mittwoch, den 04.08.2021, 17:29 +0500 schrieb
polyakov@liltechdude.xyz:
> From: Dmitry Polyakov <polyakov@liltechdude.xyz>
>
> * gnu/local.mk (dist_patch_DATA):
> Register the patch.
>
> * gnu/packages/patches/instead-use-games-path.patch:
> New file.
game-development.scm was not mentioned, also you should mention any
patch before the Makefile it's added to.
> ---
> gnu/local.mk | 2 +
> gnu/packages/game-development.scm | 52
> +++++++++++++++++++
> .../patches/instead-use-games-path.patch | 32 ++++++++++++
> 3 files changed, 86 insertions(+)
> create mode 100644 gnu/packages/patches/instead-use-games-path.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index e849480..0c45ae5 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -43,6 +43,7 @@
> # Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
> # Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
> # Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
> +# Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
> #
> # This file is part of GNU Guix.
> #
> @@ -1261,6 +1262,7 @@ dist_patch_DATA =
> \
> %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-fix.patch
> \
> %D%/packages/patches/inetutils-hurd.patch \
> %D%/packages/patches/inkscape-poppler-0.76.patch \
> + %D%/packages/patches/instead-use-games-path.patch \
> %D%/packages/patches/inkscape-1.1-fix-build-witch-gcc7.5.patch
> \
> %D%/packages/patches/intel-xed-fix-nondeterminism.patch \
> %D%/packages/patches/intltool-perl-compatibility.patch \
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> development.scm
> index e1593c0..4164b20 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -21,6 +21,7 @@
> ;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
> ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
> ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
> +;;; Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -2115,6 +2116,57 @@ upon which people base their games, ports to
> new platforms, and other
> projects.")
> (license license:gpl2))))
>
> +(define-public instead
> + (package
> + (name "instead")
> + (version "3.3.5")
> + (build-system cmake-build-system)
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/instead-hub/instead")
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> "02j8cw623j51qmr4991i5hsbrzmnp0qfzds8m6nwwr15sjv3hv1g"))
> + (patches
> + (search-patches
> + "instead-use-games-path.patch"))))
I've added a snippet to unbundle zlib.
> + (arguments
> + '(#:configure-flags
> + (list (string-append
> + "-DLUA_INCLUDE_DIR="
> + (assoc-ref %build-inputs "luajit") "/include/luajit-
> 2.1/")
> + "-DWITH_LUAJIT=1"
> + "-DWITH_GTK3=1")
> + #:tests? #f))
> + (inputs
> + `(("sdl2-images" ,sdl2-image)
> + ("sdl2-ttf" ,sdl2-ttf)
> + ("lua" ,lua)
> + ("pkg-config" ,pkg-config)
> + ("sdl2-mixer" ,sdl2-mixer)
> + ("luajit" ,luajit)
> + ("gtk+",gtk+)))
I've reorganized the imports and added zlib.
> + (home-page "https://instead3.syscall.ru/")
> + (synopsis "Text adventure interpreter")
> + (description "The STEAD (Simple TExt ADventures) interpreter
> provide
> +functionality to play games that combine visual novels, text
> adventures
> +and classic quests of 1990-s. STEAD games feature:
> +@enumerate
> +@item Very simple source code of the stories. (based on LUA)
> +@item Graphical game interface
> +@item Supports music and images
> +@item Theme support - a game may change the interface look
> +@end enumerate")
I've shortened the description -- this may be somewhat subjective, but
I find the short one neater.
> + (license license:gpl2)
License should be Expat, I believe, also I shoved it below the search
path.
> + (native-search-paths
> + (list (search-path-specification
> + (variable "INSTEAD_GAMES_PATH")
> + (separator #f) ;single entry
> + (files '("share/instead/games")))))))
> +
> (define-public openvr
> (package
> (name "openvr")
> diff --git a/gnu/packages/patches/instead-use-games-path.patch
> b/gnu/packages/patches/instead-use-games-path.patch
> new file mode 100644
> index 0000000..52e96ed
> --- /dev/null
> +++ b/gnu/packages/patches/instead-use-games-path.patch
> @@ -0,0 +1,32 @@
> +From 8b350daa847dd8e131d9e6b5b4434ce68a7903d0 Mon Sep 17 00:00:00
> 2001
> +From: Dmitry Polyakov <polyakov@liltechdude.xyz>
> +Date: Wed, 4 Aug 2021 15:46:33 +0500
> +Subject: [PATCH] [PATCH] Add support for INSTEAD_GAMES_PATH
> +
> +In certain cases, the user needs to determinate by himself where the
> +games will be stored. Using an environment variable is the most
> common
> +way to provide the user with this capability.
I've reworded this to use gender-neutral language. There are female
and non-binary contributors as well :)
> +---
> + src/main.c | 6 ++++++
> + 1 file changed, 6 insertions(+)
> +
> +diff --git a/src/main.c b/src/main.c
> +index ba0ada1d..b05497b8 100644
> +--- a/src/main.c
> ++++ b/src/main.c
> +@@ -394,6 +394,12 @@ int instead_main(int argc, char *argv[])
> + setdir(game_cwd);
> + profile_load(NULL);
> +
> ++ char *gamespath_env = NULL;
> ++
> ++ if (gamespath_env = getenv("INSTEAD_GAMES_PATH"), gamespath_env
> != NULL) {
> ++ games_sw = strdup(gamespath_env);
> ++ }
> ++
> + for (i = 1; i < argc; i++) {
> + if (lua_sw) /* during load profile */
> + break;
> +--
> +2.32.0
> +
Thanks and have a nice day :)
--- End Message ---