unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#67950] [PATCH 0/3] gnu: Add devours.
@ 2023-12-21 10:31 Adam Faiz via Guix-patches via
  2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-21 10:31 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From 4a21bc5fc4a31a9a8f5cac2ea834d86203e5115a Mon Sep 17 00:00:00 2001
Message-ID: <cover.1703154486.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:28:06 +0800
Subject: [PATCH 0/3] gnu: Add devours.

This patch series adds All Things Devours, a sci-fi text adventure game.

AwesomeAdam54321 (3):
  gnu: Add inform.
  gnu: Add informlib.
  gnu: Add devours.

 gnu/local.mk                                  |   1 +
 gnu/packages/game-development.scm             |  50 ++++++++
 gnu/packages/games.scm                        |  74 ++++++++++++
 .../patches/inform-add-makefile.patch         | 109 ++++++++++++++++++
 4 files changed, 234 insertions(+)
 create mode 100644 gnu/packages/patches/inform-add-makefile.patch


base-commit: 29c94dd522833b2603a651c14a5b06120bcf1829
-- 
2.41.0




^ permalink raw reply	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH 1/3] gnu: Add inform.
  2023-12-21 10:31 [bug#67950] [PATCH 0/3] gnu: Add devours Adam Faiz via Guix-patches via
@ 2023-12-21 10:40 ` Adam Faiz via Guix-patches via
  2023-12-21 10:42   ` [bug#67950] [PATCH 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
                     ` (2 more replies)
  2023-12-24 15:46 ` [bug#67950] [PATCH v2 " Adam Faiz via Guix-patches via
  2023-12-25  0:16 ` [bug#67950] [PATCH v3 1/3] gnu: Add inform Adam Faiz via Guix-patches via
  2 siblings, 3 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-21 10:40 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From 7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1 Mon Sep 17 00:00:00 2001
Message-ID: <7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1.1703154486.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
References: <cover.1703154486.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:15:41 +0800
Subject: [PATCH 1/3] gnu: Add inform.

* gnu/packages/patches/inform-add-makefile.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/game-development.scm (inform): New variable.
---
 gnu/local.mk                                  |   1 +
 gnu/packages/game-development.scm             |  25 ++++
 .../patches/inform-add-makefile.patch         | 109 ++++++++++++++++++
 3 files changed, 135 insertions(+)
 create mode 100644 gnu/packages/patches/inform-add-makefile.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f7aec83e8a..1bc955ce1f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1449,6 +1449,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch	\
   %D%/packages/patches/imagemagick-ReadDCMPixels-fix.patch	\
   %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-fix.patch	\
+  %D%/packages/patches/inform-add-makefile.patch		\
   %D%/packages/patches/inkscape-poppler-compat.patch		\
   %D%/packages/patches/instead-use-games-path.patch		\
   %D%/packages/patches/intltool-perl-compatibility.patch	\
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a2d7c5ea63..0c467de23f 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -2771,6 +2771,31 @@ (define-public ioquake3
 people base their games, ports to new platforms, and other projects.")
       (license license:gpl2))))
 
+(define-public inform
+  (package
+    (name "inform")
+    (version "6.41")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/inform.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))
+       (patches
+        (search-patches
+         "inform-add-makefile.patch"))))
+    (build-system gnu-build-system)
+    (native-inputs (list autoconf automake))
+    (synopsis "The Inform 6 compiler")
+    (description
+     "This is an Inform 6 compiler that has been modified slightly to work better
+when the Inform standard library is in a non-standard location.")
+    (home-page "https://jxself.org/git/inform.git")
+    (license license:gpl3+)))
+
 (define-public instead
   (package
     (name "instead")
diff --git a/gnu/packages/patches/inform-add-makefile.patch b/gnu/packages/patches/inform-add-makefile.patch
new file mode 100644
index 0000000000..497d40979e
--- /dev/null
+++ b/gnu/packages/patches/inform-add-makefile.patch
@@ -0,0 +1,109 @@
+From b2332ab850dc260be8892ad5a4148b335c6b193b Mon Sep 17 00:00:00 2001
+From: AwesomeAdam54321 <adam.faiz@disroot.org>
+Date: Wed, 20 Dec 2023 22:38:41 +0800
+Subject: [PATCH] Implement a Makefile for Inform.
+
+---
+ Makefile.am     | 17 +++++++++++++++++
+ configure.ac    | 40 ++++++++++++++++++++++++++++++++++++++++
+ src/Makefile.am | 17 +++++++++++++++++
+ 3 files changed, 74 insertions(+)
+ create mode 100644 Makefile.am
+ create mode 100644 configure.ac
+ create mode 100644 src/Makefile.am
+
+diff --git a/Makefile.am b/Makefile.am
+new file mode 100644
+index 0000000..fb99417
+--- /dev/null
++++ b/Makefile.am
+@@ -0,0 +1,17 @@
++# This file is part of Inform.
++#
++# Inform is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# theFree Software Foundation, either version 3 of the License, or
++#(at your option) any later version.
++#
++# Inform is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with Inform. If not, see https://gnu.org/licenses/
++
++AUTOMAKE_OPTIONS = foreign
++SUBDIRS = src
+diff --git a/configure.ac b/configure.ac
+new file mode 100644
+index 0000000..0ff8ced
+--- /dev/null
++++ b/configure.ac
+@@ -0,0 +1,40 @@
++# Process this file with autoconf to produce a configure script.
++#
++# This file is part of Inform.
++#
++# Inform is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# theFree Software Foundation, either version 3 of the License, or
++#(at your option) any later version.
++#
++# Inform is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with Inform. If not, see https://gnu.org/licenses/
++
++AC_INIT([inform], [6.41], [j@jxself.org])
++AM_INIT_AUTOMAKE([foreign])
++AC_OUTPUT(Makefile src/Makefile)
++
++# Checks for programs.
++AC_PROG_CC
++
++# Checks for libraries.
++
++# Checks for header files.
++AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h])
++
++# Checks for typedefs, structures, and compiler characteristics.
++AC_CHECK_HEADER_STDBOOL
++AC_TYPE_SIZE_T
++
++# Checks for library functions.
++AC_FUNC_ERROR_AT_LINE
++AC_FUNC_MALLOC
++AC_FUNC_REALLOC
++AC_CHECK_FUNCS([memmove memset realpath strchr strtol])
++
++AC_OUTPUT
+diff --git a/src/Makefile.am b/src/Makefile.am
+new file mode 100644
+index 0000000..b548944
+--- /dev/null
++++ b/src/Makefile.am
+@@ -0,0 +1,17 @@
++# This file is part of Inform.
++#
++# Inform is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# theFree Software Foundation, either version 3 of the License, or
++#(at your option) any later version.
++#
++# Inform is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with Inform. If not, see https://gnu.org/licenses/
++
++bin_PROGRAMS = inform
++inform_SOURCES = arrays.c asm.c bpatch.c chars.c directs.c errors.c expressc.c expressp.c files.c header.h inform.c lexer.c memory.c objects.c states.c symbols.c syntax.c tables.c text.c veneer.c verbs.c
+-- 
+2.41.0
+
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH 2/3] gnu: Add informlib.
  2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
@ 2023-12-21 10:42   ` Adam Faiz via Guix-patches via
  2023-12-21 10:43   ` [bug#67950] [PATCH 3/3] gnu: Add devours Adam Faiz via Guix-patches via
  2023-12-22 17:05   ` [bug#67950] [PATCH 1/3] gnu: Add inform Liliana Marie Prikler
  2 siblings, 0 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-21 10:42 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From 55f87c2ef4fe17845ac94e9e0ef5ccae98b1777f Mon Sep 17 00:00:00 2001
Message-ID: <55f87c2ef4fe17845ac94e9e0ef5ccae98b1777f.1703154486.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
References: <cover.1703154486.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:17:29 +0800
Subject: [PATCH 2/3] gnu: Add informlib.

* gnu/packages/game-development.scm (informlib): New variable.
---
 gnu/packages/game-development.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 0c467de23f..6e080b3f36 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -57,6 +57,7 @@ (define-module (gnu packages game-development)
   #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system cmake)
+  #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system pyproject)
   #:use-module (guix build-system python)
@@ -2796,6 +2797,30 @@ (define-public inform
     (home-page "https://jxself.org/git/inform.git")
     (license license:gpl3+)))
 
+(define-public informlib
+  (package
+    (name "informlib")
+    (version "6.12.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/informlib.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0fcnw4jjzln402qk097n2s8y24vw1p3mmlmh6k1mbr2zfajjcn5r"))))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:install-plan
+      #~'(("." "lib"))))
+    (synopsis "Inform 6 standard library")
+    (description
+     "This package provides the standard library for Inform 6.")
+    (home-page "https://jxself.org/git/informlib.git")
+    (license license:agpl3+)))
+
 (define-public instead
   (package
     (name "instead")
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH 3/3] gnu: Add devours.
  2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
  2023-12-21 10:42   ` [bug#67950] [PATCH 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
@ 2023-12-21 10:43   ` Adam Faiz via Guix-patches via
  2023-12-22 17:05   ` [bug#67950] [PATCH 1/3] gnu: Add inform Liliana Marie Prikler
  2 siblings, 0 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-21 10:43 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From 4a21bc5fc4a31a9a8f5cac2ea834d86203e5115a Mon Sep 17 00:00:00 2001
Message-ID: <4a21bc5fc4a31a9a8f5cac2ea834d86203e5115a.1703154486.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
References: <cover.1703154486.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:26:27 +0800
Subject: [PATCH 3/3] gnu: Add devours.

* gnu/packages/games.scm (devours): New variable.
---
 gnu/packages/games.scm | 74 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 66739d7a6b..f7ff5cadf7 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -11100,6 +11100,80 @@ (define-public curseofwar
 available.")
     (license license:gpl3+)))
 
+(define-public devours
+  (let ((commit "d50e745aa14aa48f7555ae12eb3d1000de1cc150")
+        (revision "0"))
+  (package
+    (name "devours")
+    (version (git-version "3" revision commit))
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/devours.git")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1ksl6mh76jfx64rmasz2571f88ws45vby2977srhgkh355zp3lzn"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:tests? #f ; no tests
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure) ; no configure
+          (replace 'build
+            (lambda _
+              (invoke "inform"
+                      (string-append "+include_path="
+                                     #$(this-package-native-input "informlib")
+                                     "/lib")
+                      "devours.inf")))
+          (replace 'install
+            (lambda* (#:key inputs #:allow-other-keys)
+              ;; Create standalone executable.
+              (let* ((bash (search-input-file inputs "/bin/bash"))
+                     (share (string-append #$output "/share"))
+                     (scummvm (search-input-file inputs "/bin/scummvm"))
+                     (bin (string-append #$output "/bin"))
+                     (executable (string-append bin "/devours")))
+                (mkdir-p share)
+                (copy-file "devours.z5" (string-append share "/devours.z5"))
+                (mkdir-p bin)
+                (with-output-to-file executable
+                  (lambda ()
+                    (format #t "#!~a~%" bash)
+                    (format #t
+                            "exec ~a --path=~a glk:zcode~%"
+                            scummvm share)))
+                (chmod executable #o755))))
+          (add-after 'install-executable 'install-desktop-file
+            (lambda _
+              (let* ((apps (string-append #$output "/share/applications"))
+                     (share (string-append #$output "")))
+                (mkdir-p apps)
+                (make-desktop-entry-file
+                 (string-append apps "/devours.desktop")
+                 #:name "All Things Devours"
+                 #:generic-name "All Things Devours"
+                 #:exec (string-append #$output "/bin/devours")
+                 #:categories '("AdventureGame" "Game" "RolePlaying")
+                 #:keywords '("game" "adventure" "sci-fi")
+                 #:comment '((#f "Sci-fi text adventure game")))))))))
+    (inputs
+     (list bash scummvm))
+    (native-inputs
+     (list inform informlib))
+    (synopsis "All Things Devours")
+    (description
+     "All Things Devours is a short piece of sci-fi interactive fiction,
+leaning strongly towards the text-adventure end of the spectrum.
+Any move you make may put things into an unwinnable state.  You are therefore
+encouraged to save frequently, and also to realise that you will probably have
+to start over several times to find the most satisfactory ending.")
+    (home-page "https://jxself.org/git/devours.git")
+    (license license:agpl3+))))
+
 (define-public schiffbruch
   ;; There haven't been any releases for several years, so I've taken the most
   ;; recent commit from the master branch that didn't fail to build (the last
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH 1/3] gnu: Add inform.
  2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
  2023-12-21 10:42   ` [bug#67950] [PATCH 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
  2023-12-21 10:43   ` [bug#67950] [PATCH 3/3] gnu: Add devours Adam Faiz via Guix-patches via
@ 2023-12-22 17:05   ` Liliana Marie Prikler
  2023-12-24 12:35     ` Adam Faiz via Guix-patches via
  2 siblings, 1 reply; 13+ messages in thread
From: Liliana Marie Prikler @ 2023-12-22 17:05 UTC (permalink / raw)
  To: Adam Faiz, 67950

Am Donnerstag, dem 21.12.2023 um 18:40 +0800 schrieb Adam Faiz:
> From 7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1.1703154486.git.adam.faiz@di
> sroot.org>
> In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
> References: <cover.1703154486.git.adam.faiz@disroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Thu, 21 Dec 2023 18:15:41 +0800
> Subject: [PATCH 1/3] gnu: Add inform.
> 
> * gnu/packages/patches/inform-add-makefile.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it here.
> * gnu/packages/game-development.scm (inform): New variable.
> ---
>  gnu/local.mk                                  |   1 +
>  gnu/packages/game-development.scm             |  25 ++++
>  .../patches/inform-add-makefile.patch         | 109
> ++++++++++++++++++
>  3 files changed, 135 insertions(+)
>  create mode 100644 gnu/packages/patches/inform-add-makefile.patch
> 
> diff --git a/gnu/local.mk b/gnu/local.mk
> index f7aec83e8a..1bc955ce1f 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1449,6 +1449,7 @@ dist_patch_DATA
> =                                         \
>    %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch      \
>    %D%/packages/patches/imagemagick-ReadDCMPixels-fix.patch     \
>    %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-
> fix.patch       \
> +  %D%/packages/patches/inform-add-makefile.patch               \
>    %D%/packages/patches/inkscape-poppler-compat.patch           \
>    %D%/packages/patches/instead-use-games-path.patch            \
>    %D%/packages/patches/intltool-perl-compatibility.patch       \
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> development.scm
> index a2d7c5ea63..0c467de23f 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -2771,6 +2771,31 @@ (define-public ioquake3
>  people base their games, ports to new platforms, and other
> projects.")
>        (license license:gpl2))))
>  
> +(define-public inform
> +  (package
> +    (name "inform")
> +    (version "6.41")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://jxself.org/git/inform.git")
> +             (commit (string-append "v" version))))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32
> "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))
> +       (patches
> +        (search-patches
> +         "inform-add-makefile.patch"))))
> +    (build-system gnu-build-system)
> +    (native-inputs (list autoconf automake))
> +    (synopsis "The Inform 6 compiler")
> +    (description
> +     "This is an Inform 6 compiler that has been modified slightly
> to work better
> +when the Inform standard library is in a non-standard location.")
> +    (home-page "https://jxself.org/git/inform.git")
> +    (license license:gpl3+)))
> +
>  (define-public instead
>    (package
>      (name "instead")
> diff --git a/gnu/packages/patches/inform-add-makefile.patch
> b/gnu/packages/patches/inform-add-makefile.patch
> new file mode 100644
> index 0000000000..497d40979e
> --- /dev/null
> +++ b/gnu/packages/patches/inform-add-makefile.patch
> @@ -0,0 +1,109 @@
> +From b2332ab850dc260be8892ad5a4148b335c6b193b Mon Sep 17 00:00:00
> 2001
> +From: AwesomeAdam54321 <adam.faiz@disroot.org>
> +Date: Wed, 20 Dec 2023 22:38:41 +0800
> +Subject: [PATCH] Implement a Makefile for Inform.
> +
> +---
> + Makefile.am     | 17 +++++++++++++++++
> + configure.ac    | 40 ++++++++++++++++++++++++++++++++++++++++
> + src/Makefile.am | 17 +++++++++++++++++
> + 3 files changed, 74 insertions(+)
> + create mode 100644 Makefile.am
> + create mode 100644 configure.ac
> + create mode 100644 src/Makefile.am
> +
> +diff --git a/Makefile.am b/Makefile.am
> +new file mode 100644
> +index 0000000..fb99417
> +--- /dev/null
> ++++ b/Makefile.am
> +@@ -0,0 +1,17 @@
> ++# This file is part of Inform.
> ++#
> ++# Inform is free software: you can redistribute it and/or modify it
> ++# under the terms of the GNU General Public License as published by
> ++# theFree Software Foundation, either version 3 of the License, or
> ++#(at your option) any later version.
> ++#
> ++# Inform is distributed in the hope that it will be useful, but
> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> ++# General Public License for more details.
> ++#
> ++# You should have received a copy of the GNU General Public License
> ++# along with Inform. If not, see https://gnu.org/licenses/
> ++
> ++AUTOMAKE_OPTIONS = foreign
> ++SUBDIRS = src
> +diff --git a/configure.ac b/configure.ac
> +new file mode 100644
> +index 0000000..0ff8ced
> +--- /dev/null
> ++++ b/configure.ac
> +@@ -0,0 +1,40 @@
> ++# Process this file with autoconf to produce a configure script.
> ++#
> ++# This file is part of Inform.
> ++#
> ++# Inform is free software: you can redistribute it and/or modify it
> ++# under the terms of the GNU General Public License as published by
> ++# theFree Software Foundation, either version 3 of the License, or
> ++#(at your option) any later version.
> ++#
> ++# Inform is distributed in the hope that it will be useful, but
> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> ++# General Public License for more details.
> ++#
> ++# You should have received a copy of the GNU General Public License
> ++# along with Inform. If not, see https://gnu.org/licenses/
> ++
> ++AC_INIT([inform], [6.41], [j@jxself.org])
> ++AM_INIT_AUTOMAKE([foreign])
> ++AC_OUTPUT(Makefile src/Makefile)
> ++
> ++# Checks for programs.
> ++AC_PROG_CC
> ++
> ++# Checks for libraries.
> ++
> ++# Checks for header files.
> ++AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h])
> ++
> ++# Checks for typedefs, structures, and compiler characteristics.
> ++AC_CHECK_HEADER_STDBOOL
> ++AC_TYPE_SIZE_T
> ++
> ++# Checks for library functions.
> ++AC_FUNC_ERROR_AT_LINE
> ++AC_FUNC_MALLOC
> ++AC_FUNC_REALLOC
> ++AC_CHECK_FUNCS([memmove memset realpath strchr strtol])
> ++
> ++AC_OUTPUT
> +diff --git a/src/Makefile.am b/src/Makefile.am
> +new file mode 100644
> +index 0000000..b548944
> +--- /dev/null
> ++++ b/src/Makefile.am
> +@@ -0,0 +1,17 @@
> ++# This file is part of Inform.
> ++#
> ++# Inform is free software: you can redistribute it and/or modify it
> ++# under the terms of the GNU General Public License as published by
> ++# theFree Software Foundation, either version 3 of the License, or
> ++#(at your option) any later version.
> ++#
> ++# Inform is distributed in the hope that it will be useful, but
> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> ++# General Public License for more details.
> ++#
> ++# You should have received a copy of the GNU General Public License
> ++# along with Inform. If not, see https://gnu.org/licenses/
> ++
> ++bin_PROGRAMS = inform
> ++inform_SOURCES = arrays.c asm.c bpatch.c chars.c directs.c errors.c
> expressc.c expressp.c files.c header.h inform.c lexer.c memory.c
> objects.c states.c symbols.c syntax.c tables.c text.c veneer.c
> verbs.c
> +-- 
> +2.41.0
> +
You might want to suggest this patch to upstream.  If not, you can do
something similar by using copy-build-system and a build phase that
reads something along the lines of
  (apply invoke (gcc-for-target) "-o" "inform"
         (find-files "src" "\\.c$"))
Cheers




^ permalink raw reply	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH 1/3] gnu: Add inform.
  2023-12-22 17:05   ` [bug#67950] [PATCH 1/3] gnu: Add inform Liliana Marie Prikler
@ 2023-12-24 12:35     ` Adam Faiz via Guix-patches via
  0 siblings, 0 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-24 12:35 UTC (permalink / raw)
  To: Liliana Marie Prikler, 67950

On 12/23/23 01:05, Liliana Marie Prikler wrote:
> Am Donnerstag, dem 21.12.2023 um 18:40 +0800 schrieb Adam Faiz:
>> From 7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1 Mon Sep 17 00:00:00
>> 2001
>> Message-ID:
>> <7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1.1703154486.git.adam.faiz@di
>> sroot.org>
>> In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
>> References: <cover.1703154486.git.adam.faiz@disroot.org>
>> From: AwesomeAdam54321 <adam.faiz@disroot.org>
>> Date: Thu, 21 Dec 2023 18:15:41 +0800
>> Subject: [PATCH 1/3] gnu: Add inform.
>>
>> * gnu/packages/patches/inform-add-makefile.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Register it here.
>> * gnu/packages/game-development.scm (inform): New variable.
>> ---
>>  gnu/local.mk                                  |   1 +
>>  gnu/packages/game-development.scm             |  25 ++++
>>  .../patches/inform-add-makefile.patch         | 109
>> ++++++++++++++++++
>>  3 files changed, 135 insertions(+)
>>  create mode 100644 gnu/packages/patches/inform-add-makefile.patch
>>
>> diff --git a/gnu/local.mk b/gnu/local.mk
>> index f7aec83e8a..1bc955ce1f 100644
>> --- a/gnu/local.mk
>> +++ b/gnu/local.mk
>> @@ -1449,6 +1449,7 @@ dist_patch_DATA
>> =                                         \
>>    %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch      \
>>    %D%/packages/patches/imagemagick-ReadDCMPixels-fix.patch     \
>>    %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-
>> fix.patch       \
>> +  %D%/packages/patches/inform-add-makefile.patch               \
>>    %D%/packages/patches/inkscape-poppler-compat.patch           \
>>    %D%/packages/patches/instead-use-games-path.patch            \
>>    %D%/packages/patches/intltool-perl-compatibility.patch       \
>> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
>> development.scm
>> index a2d7c5ea63..0c467de23f 100644
>> --- a/gnu/packages/game-development.scm
>> +++ b/gnu/packages/game-development.scm
>> @@ -2771,6 +2771,31 @@ (define-public ioquake3
>>  people base their games, ports to new platforms, and other
>> projects.")
>>        (license license:gpl2))))
>>  
>> +(define-public inform
>> +  (package
>> +    (name "inform")
>> +    (version "6.41")
>> +    (source
>> +     (origin
>> +       (method git-fetch)
>> +       (uri (git-reference
>> +             (url "https://jxself.org/git/inform.git")
>> +             (commit (string-append "v" version))))
>> +       (file-name (git-file-name name version))
>> +       (sha256
>> +        (base32
>> "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))
>> +       (patches
>> +        (search-patches
>> +         "inform-add-makefile.patch"))))
>> +    (build-system gnu-build-system)
>> +    (native-inputs (list autoconf automake))
>> +    (synopsis "The Inform 6 compiler")
>> +    (description
>> +     "This is an Inform 6 compiler that has been modified slightly
>> to work better
>> +when the Inform standard library is in a non-standard location.")
>> +    (home-page "https://jxself.org/git/inform.git")
>> +    (license license:gpl3+)))
>> +
>>  (define-public instead
>>    (package
>>      (name "instead")
>> diff --git a/gnu/packages/patches/inform-add-makefile.patch
>> b/gnu/packages/patches/inform-add-makefile.patch
>> new file mode 100644
>> index 0000000000..497d40979e
>> --- /dev/null
>> +++ b/gnu/packages/patches/inform-add-makefile.patch
>> @@ -0,0 +1,109 @@
>> +From b2332ab850dc260be8892ad5a4148b335c6b193b Mon Sep 17 00:00:00
>> 2001
>> +From: AwesomeAdam54321 <adam.faiz@disroot.org>
>> +Date: Wed, 20 Dec 2023 22:38:41 +0800
>> +Subject: [PATCH] Implement a Makefile for Inform.
>> +
>> +---
>> + Makefile.am     | 17 +++++++++++++++++
>> + configure.ac    | 40 ++++++++++++++++++++++++++++++++++++++++
>> + src/Makefile.am | 17 +++++++++++++++++
>> + 3 files changed, 74 insertions(+)
>> + create mode 100644 Makefile.am
>> + create mode 100644 configure.ac
>> + create mode 100644 src/Makefile.am
>> +
>> +diff --git a/Makefile.am b/Makefile.am
>> +new file mode 100644
>> +index 0000000..fb99417
>> +--- /dev/null
>> ++++ b/Makefile.am
>> +@@ -0,0 +1,17 @@
>> ++# This file is part of Inform.
>> ++#
>> ++# Inform is free software: you can redistribute it and/or modify it
>> ++# under the terms of the GNU General Public License as published by
>> ++# theFree Software Foundation, either version 3 of the License, or
>> ++#(at your option) any later version.
>> ++#
>> ++# Inform is distributed in the hope that it will be useful, but
>> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
>> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> ++# General Public License for more details.
>> ++#
>> ++# You should have received a copy of the GNU General Public License
>> ++# along with Inform. If not, see https://gnu.org/licenses/
>> ++
>> ++AUTOMAKE_OPTIONS = foreign
>> ++SUBDIRS = src
>> +diff --git a/configure.ac b/configure.ac
>> +new file mode 100644
>> +index 0000000..0ff8ced
>> +--- /dev/null
>> ++++ b/configure.ac
>> +@@ -0,0 +1,40 @@
>> ++# Process this file with autoconf to produce a configure script.
>> ++#
>> ++# This file is part of Inform.
>> ++#
>> ++# Inform is free software: you can redistribute it and/or modify it
>> ++# under the terms of the GNU General Public License as published by
>> ++# theFree Software Foundation, either version 3 of the License, or
>> ++#(at your option) any later version.
>> ++#
>> ++# Inform is distributed in the hope that it will be useful, but
>> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
>> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> ++# General Public License for more details.
>> ++#
>> ++# You should have received a copy of the GNU General Public License
>> ++# along with Inform. If not, see https://gnu.org/licenses/
>> ++
>> ++AC_INIT([inform], [6.41], [j@jxself.org])
>> ++AM_INIT_AUTOMAKE([foreign])
>> ++AC_OUTPUT(Makefile src/Makefile)
>> ++
>> ++# Checks for programs.
>> ++AC_PROG_CC
>> ++
>> ++# Checks for libraries.
>> ++
>> ++# Checks for header files.
>> ++AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h])
>> ++
>> ++# Checks for typedefs, structures, and compiler characteristics.
>> ++AC_CHECK_HEADER_STDBOOL
>> ++AC_TYPE_SIZE_T
>> ++
>> ++# Checks for library functions.
>> ++AC_FUNC_ERROR_AT_LINE
>> ++AC_FUNC_MALLOC
>> ++AC_FUNC_REALLOC
>> ++AC_CHECK_FUNCS([memmove memset realpath strchr strtol])
>> ++
>> ++AC_OUTPUT
>> +diff --git a/src/Makefile.am b/src/Makefile.am
>> +new file mode 100644
>> +index 0000000..b548944
>> +--- /dev/null
>> ++++ b/src/Makefile.am
>> +@@ -0,0 +1,17 @@
>> ++# This file is part of Inform.
>> ++#
>> ++# Inform is free software: you can redistribute it and/or modify it
>> ++# under the terms of the GNU General Public License as published by
>> ++# theFree Software Foundation, either version 3 of the License, or
>> ++#(at your option) any later version.
>> ++#
>> ++# Inform is distributed in the hope that it will be useful, but
>> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
>> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> ++# General Public License for more details.
>> ++#
>> ++# You should have received a copy of the GNU General Public License
>> ++# along with Inform. If not, see https://gnu.org/licenses/
>> ++
>> ++bin_PROGRAMS = inform
>> ++inform_SOURCES = arrays.c asm.c bpatch.c chars.c directs.c errors.c
>> expressc.c expressp.c files.c header.h inform.c lexer.c memory.c
>> objects.c states.c symbols.c syntax.c tables.c text.c veneer.c
>> verbs.c
>> +-- 
>> +2.41.0
>> +
> You might want to suggest this patch to upstream.  If not, you can do
> something similar by using copy-build-system and a build phase that
> reads something along the lines of
>   (apply invoke (gcc-for-target) "-o" "inform"
>          (find-files "src" "\\.c$"))
> Cheers

Thanks, I already sent this patch upstream, but I haven't gotten a response yet.
I'll send a V2 of this patch series using your copy-build-system with a build phase idea.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH v2 1/3] gnu: Add inform.
  2023-12-21 10:31 [bug#67950] [PATCH 0/3] gnu: Add devours Adam Faiz via Guix-patches via
  2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
@ 2023-12-24 15:46 ` Adam Faiz via Guix-patches via
  2023-12-24 15:49   ` [bug#67950] [PATCH v2 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
  2023-12-24 15:52   ` [bug#67950] [PATCH v2 3/3] gnu: Add devours Adam Faiz via Guix-patches via
  2023-12-25  0:16 ` [bug#67950] [PATCH v3 1/3] gnu: Add inform Adam Faiz via Guix-patches via
  2 siblings, 2 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-24 15:46 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From eaf206d6a1a29a2334fa31e9692bf6f584d73409 Mon Sep 17 00:00:00 2001
Message-ID: <eaf206d6a1a29a2334fa31e9692bf6f584d73409.1703432554.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:15:41 +0800
Subject: [PATCH v2 1/3] gnu: Add inform.

* gnu/packages/game-development.scm (inform): New variable.
---
 gnu/packages/game-development.scm | 34 +++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a2d7c5ea63..72349a8d9b 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -2771,6 +2771,40 @@ (define-public ioquake3
 people base their games, ports to new platforms, and other projects.")
       (license license:gpl2))))
 
+(define-public inform
+  (package
+    (name "inform")
+    (version "6.41")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/inform.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'install 'build
+            (lambda _
+              (apply invoke #$(cc-for-target) "-o" "inform"
+                     (find-files "src" "\\.c$")))))
+      #:install-plan
+      #~'(("inform" "bin/inform"))))
+    (native-inputs (list autoconf automake))
+    (synopsis "The Inform 6 compiler")
+    (description
+     "Inform 6 is a C-like programming language designed
+for interactive fiction.  This version of the compiler has been modified
+slightly to work better when the Inform standard library is in a non-standard
+location.")
+    (home-page "https://jxself.org/git/inform.git")
+    (license license:gpl3+)))
+
 (define-public instead
   (package
     (name "instead")

base-commit: 29c94dd522833b2603a651c14a5b06120bcf1829
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH v2 2/3] gnu: Add informlib.
  2023-12-24 15:46 ` [bug#67950] [PATCH v2 " Adam Faiz via Guix-patches via
@ 2023-12-24 15:49   ` Adam Faiz via Guix-patches via
  2023-12-24 15:52   ` [bug#67950] [PATCH v2 3/3] gnu: Add devours Adam Faiz via Guix-patches via
  1 sibling, 0 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-24 15:49 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From c1fa9c53f3dda536d372257b876918376734b9d5 Mon Sep 17 00:00:00 2001
Message-ID: <c1fa9c53f3dda536d372257b876918376734b9d5.1703432554.git.adam.faiz@disroot.org>
In-Reply-To: <eaf206d6a1a29a2334fa31e9692bf6f584d73409.1703432554.git.adam.faiz@disroot.org>
References: <eaf206d6a1a29a2334fa31e9692bf6f584d73409.1703432554.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 24 Dec 2023 23:14:31 +0800
Subject: [PATCH v2 2/3] gnu: Add informlib.

* gnu/packages/game-development.scm (informlib): New variable.
---
 gnu/packages/game-development.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 72349a8d9b..dec0209d6b 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -2805,6 +2805,30 @@ (define-public inform
     (home-page "https://jxself.org/git/inform.git")
     (license license:gpl3+)))
 
+(define-public informlib
+  (package
+    (name "informlib")
+    (version "6.12.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/informlib.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0fcnw4jjzln402qk097n2s8y24vw1p3mmlmh6k1mbr2zfajjcn5r"))))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:install-plan
+      #~'(("." "lib"))))
+    (synopsis "Inform 6 standard library")
+    (description
+     "This package provides the standard library for Inform 6.")
+    (home-page "https://jxself.org/git/informlib.git")
+    (license license:agpl3+)))
+
 (define-public instead
   (package
     (name "instead")
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH v2 3/3] gnu: Add devours.
  2023-12-24 15:46 ` [bug#67950] [PATCH v2 " Adam Faiz via Guix-patches via
  2023-12-24 15:49   ` [bug#67950] [PATCH v2 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
@ 2023-12-24 15:52   ` Adam Faiz via Guix-patches via
  1 sibling, 0 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-24 15:52 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From a68ffe27e91e72d85f450141afe6df020906597b Mon Sep 17 00:00:00 2001
Message-ID: <a68ffe27e91e72d85f450141afe6df020906597b.1703432554.git.adam.faiz@disroot.org>
In-Reply-To: <eaf206d6a1a29a2334fa31e9692bf6f584d73409.1703432554.git.adam.faiz@disroot.org>
References: <eaf206d6a1a29a2334fa31e9692bf6f584d73409.1703432554.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 24 Dec 2023 23:15:53 +0800
Subject: [PATCH v2 3/3] gnu: Add devours.

* gnu/packages/games.scm (devours): New variable.
---
 gnu/packages/games.scm | 74 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 66739d7a6b..f7ff5cadf7 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -11100,6 +11100,80 @@ (define-public curseofwar
 available.")
     (license license:gpl3+)))
 
+(define-public devours
+  (let ((commit "d50e745aa14aa48f7555ae12eb3d1000de1cc150")
+        (revision "0"))
+  (package
+    (name "devours")
+    (version (git-version "3" revision commit))
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/devours.git")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1ksl6mh76jfx64rmasz2571f88ws45vby2977srhgkh355zp3lzn"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:tests? #f ; no tests
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure) ; no configure
+          (replace 'build
+            (lambda _
+              (invoke "inform"
+                      (string-append "+include_path="
+                                     #$(this-package-native-input "informlib")
+                                     "/lib")
+                      "devours.inf")))
+          (replace 'install
+            (lambda* (#:key inputs #:allow-other-keys)
+              ;; Create standalone executable.
+              (let* ((bash (search-input-file inputs "/bin/bash"))
+                     (share (string-append #$output "/share"))
+                     (scummvm (search-input-file inputs "/bin/scummvm"))
+                     (bin (string-append #$output "/bin"))
+                     (executable (string-append bin "/devours")))
+                (mkdir-p share)
+                (copy-file "devours.z5" (string-append share "/devours.z5"))
+                (mkdir-p bin)
+                (with-output-to-file executable
+                  (lambda ()
+                    (format #t "#!~a~%" bash)
+                    (format #t
+                            "exec ~a --path=~a glk:zcode~%"
+                            scummvm share)))
+                (chmod executable #o755))))
+          (add-after 'install-executable 'install-desktop-file
+            (lambda _
+              (let* ((apps (string-append #$output "/share/applications"))
+                     (share (string-append #$output "")))
+                (mkdir-p apps)
+                (make-desktop-entry-file
+                 (string-append apps "/devours.desktop")
+                 #:name "All Things Devours"
+                 #:generic-name "All Things Devours"
+                 #:exec (string-append #$output "/bin/devours")
+                 #:categories '("AdventureGame" "Game" "RolePlaying")
+                 #:keywords '("game" "adventure" "sci-fi")
+                 #:comment '((#f "Sci-fi text adventure game")))))))))
+    (inputs
+     (list bash scummvm))
+    (native-inputs
+     (list inform informlib))
+    (synopsis "All Things Devours")
+    (description
+     "All Things Devours is a short piece of sci-fi interactive fiction,
+leaning strongly towards the text-adventure end of the spectrum.
+Any move you make may put things into an unwinnable state.  You are therefore
+encouraged to save frequently, and also to realise that you will probably have
+to start over several times to find the most satisfactory ending.")
+    (home-page "https://jxself.org/git/devours.git")
+    (license license:agpl3+))))
+
 (define-public schiffbruch
   ;; There haven't been any releases for several years, so I've taken the most
   ;; recent commit from the master branch that didn't fail to build (the last
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH v3 1/3] gnu: Add inform.
  2023-12-21 10:31 [bug#67950] [PATCH 0/3] gnu: Add devours Adam Faiz via Guix-patches via
  2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
  2023-12-24 15:46 ` [bug#67950] [PATCH v2 " Adam Faiz via Guix-patches via
@ 2023-12-25  0:16 ` Adam Faiz via Guix-patches via
  2023-12-25  0:17   ` [bug#67950] [PATCH v3 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
  2023-12-25  0:18   ` [bug#67950] [PATCH v3 3/3] gnu: Add devours Adam Faiz via Guix-patches via
  2 siblings, 2 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-25  0:16 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From eea4385fef9805fd37517b476b8d581d081cc44c Mon Sep 17 00:00:00 2001
Message-ID: <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:15:41 +0800
Subject: [PATCH v3 1/3] gnu: Add inform.

* gnu/packages/game-development.scm (inform): New variable.
---
 gnu/packages/game-development.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a2d7c5ea63..0b2c0177ab 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -2771,6 +2771,31 @@ (define-public ioquake3
 people base their games, ports to new platforms, and other projects.")
       (license license:gpl2))))
 
+(define-public inform
+  (let ((commit "20cbfff96015938809d0e3da6cd0d83b76d27f14")
+        (revision "0"))
+  (package
+    (name "inform")
+    (version (git-version "6.41" revision commit))
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/inform.git")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "19z8pgrj1s2irany5s6xxwsm3bdnri1as46fdi16zdp4aah523jy"))))
+    (build-system gnu-build-system)
+    (native-inputs (list autoconf automake))
+    (synopsis "The Inform 6 compiler")
+    (description
+     "Inform 6 is a programming language designed for interactive fiction.
+This version of the compiler has been modified slightly to work better when the
+Inform standard library is in a non-standard location.")
+    (home-page "https://jxself.org/git/inform.git")
+    (license license:gpl3+))))
+
 (define-public instead
   (package
     (name "instead")

base-commit: 29c94dd522833b2603a651c14a5b06120bcf1829
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH v3 2/3] gnu: Add informlib.
  2023-12-25  0:16 ` [bug#67950] [PATCH v3 1/3] gnu: Add inform Adam Faiz via Guix-patches via
@ 2023-12-25  0:17   ` Adam Faiz via Guix-patches via
  2023-12-25  0:18   ` [bug#67950] [PATCH v3 3/3] gnu: Add devours Adam Faiz via Guix-patches via
  1 sibling, 0 replies; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-25  0:17 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From 017efac401edf8b4a1c60bfac11fb6c3467ee998 Mon Sep 17 00:00:00 2001
Message-ID: <017efac401edf8b4a1c60bfac11fb6c3467ee998.1703463244.git.adam.faiz@disroot.org>
In-Reply-To: <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@disroot.org>
References: <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 24 Dec 2023 23:14:31 +0800
Subject: [PATCH v3 2/3] gnu: Add informlib.

* gnu/packages/game-development.scm (informlib): New variable.
---
 gnu/packages/game-development.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 0b2c0177ab..1eeaab097a 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -57,6 +57,7 @@ (define-module (gnu packages game-development)
   #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system cmake)
+  #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system pyproject)
   #:use-module (guix build-system python)
@@ -2796,6 +2797,30 @@ (define-public inform
     (home-page "https://jxself.org/git/inform.git")
     (license license:gpl3+))))
 
+(define-public informlib
+  (package
+    (name "informlib")
+    (version "6.12.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/informlib.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0fcnw4jjzln402qk097n2s8y24vw1p3mmlmh6k1mbr2zfajjcn5r"))))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:install-plan
+      #~'(("." "lib"))))
+    (synopsis "Inform 6 standard library")
+    (description
+     "This package provides the standard library for Inform 6.")
+    (home-page "https://jxself.org/git/informlib.git")
+    (license license:agpl3+)))
+
 (define-public instead
   (package
     (name "instead")
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [bug#67950] [PATCH v3 3/3] gnu: Add devours.
  2023-12-25  0:16 ` [bug#67950] [PATCH v3 1/3] gnu: Add inform Adam Faiz via Guix-patches via
  2023-12-25  0:17   ` [bug#67950] [PATCH v3 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
@ 2023-12-25  0:18   ` Adam Faiz via Guix-patches via
  2023-12-31 11:35     ` bug#67950: " Liliana Marie Prikler
  1 sibling, 1 reply; 13+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-12-25  0:18 UTC (permalink / raw)
  To: 67950; +Cc: Liliana Marie Prikler

From b21aaee0b84af2a916a0855740ba25b61a0d594f Mon Sep 17 00:00:00 2001
Message-ID: <b21aaee0b84af2a916a0855740ba25b61a0d594f.1703463244.git.adam.faiz@disroot.org>
In-Reply-To: <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@disroot.org>
References: <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 24 Dec 2023 23:15:53 +0800
Subject: [PATCH v3 3/3] gnu: Add devours.

* gnu/packages/games.scm (devours): New variable.
---
 gnu/packages/games.scm | 74 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 66739d7a6b..f7ff5cadf7 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -11100,6 +11100,80 @@ (define-public curseofwar
 available.")
     (license license:gpl3+)))
 
+(define-public devours
+  (let ((commit "d50e745aa14aa48f7555ae12eb3d1000de1cc150")
+        (revision "0"))
+  (package
+    (name "devours")
+    (version (git-version "3" revision commit))
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/devours.git")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1ksl6mh76jfx64rmasz2571f88ws45vby2977srhgkh355zp3lzn"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:tests? #f ; no tests
+      #:phases
+      #~(modify-phases %standard-phases
+          (delete 'configure) ; no configure
+          (replace 'build
+            (lambda _
+              (invoke "inform"
+                      (string-append "+include_path="
+                                     #$(this-package-native-input "informlib")
+                                     "/lib")
+                      "devours.inf")))
+          (replace 'install
+            (lambda* (#:key inputs #:allow-other-keys)
+              ;; Create standalone executable.
+              (let* ((bash (search-input-file inputs "/bin/bash"))
+                     (share (string-append #$output "/share"))
+                     (scummvm (search-input-file inputs "/bin/scummvm"))
+                     (bin (string-append #$output "/bin"))
+                     (executable (string-append bin "/devours")))
+                (mkdir-p share)
+                (copy-file "devours.z5" (string-append share "/devours.z5"))
+                (mkdir-p bin)
+                (with-output-to-file executable
+                  (lambda ()
+                    (format #t "#!~a~%" bash)
+                    (format #t
+                            "exec ~a --path=~a glk:zcode~%"
+                            scummvm share)))
+                (chmod executable #o755))))
+          (add-after 'install-executable 'install-desktop-file
+            (lambda _
+              (let* ((apps (string-append #$output "/share/applications"))
+                     (share (string-append #$output "")))
+                (mkdir-p apps)
+                (make-desktop-entry-file
+                 (string-append apps "/devours.desktop")
+                 #:name "All Things Devours"
+                 #:generic-name "All Things Devours"
+                 #:exec (string-append #$output "/bin/devours")
+                 #:categories '("AdventureGame" "Game" "RolePlaying")
+                 #:keywords '("game" "adventure" "sci-fi")
+                 #:comment '((#f "Sci-fi text adventure game")))))))))
+    (inputs
+     (list bash scummvm))
+    (native-inputs
+     (list inform informlib))
+    (synopsis "All Things Devours")
+    (description
+     "All Things Devours is a short piece of sci-fi interactive fiction,
+leaning strongly towards the text-adventure end of the spectrum.
+Any move you make may put things into an unwinnable state.  You are therefore
+encouraged to save frequently, and also to realise that you will probably have
+to start over several times to find the most satisfactory ending.")
+    (home-page "https://jxself.org/git/devours.git")
+    (license license:agpl3+))))
+
 (define-public schiffbruch
   ;; There haven't been any releases for several years, so I've taken the most
   ;; recent commit from the master branch that didn't fail to build (the last
-- 
2.41.0




^ permalink raw reply related	[flat|nested] 13+ messages in thread

* bug#67950: [PATCH v3 3/3] gnu: Add devours.
  2023-12-25  0:18   ` [bug#67950] [PATCH v3 3/3] gnu: Add devours Adam Faiz via Guix-patches via
@ 2023-12-31 11:35     ` Liliana Marie Prikler
  0 siblings, 0 replies; 13+ messages in thread
From: Liliana Marie Prikler @ 2023-12-31 11:35 UTC (permalink / raw)
  To: Adam Faiz, 67950-done

Am Montag, dem 25.12.2023 um 08:18 +0800 schrieb Adam Faiz:
> From b21aaee0b84af2a916a0855740ba25b61a0d594f Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <b21aaee0b84af2a916a0855740ba25b61a0d594f.1703463244.git.adam.faiz@di
> sroot.org>
> In-Reply-To:
> <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@di
> sroot.org>
> References:
> <eea4385fef9805fd37517b476b8d581d081cc44c.1703463244.git.adam.faiz@di
> sroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Sun, 24 Dec 2023 23:15:53 +0800
> Subject: [PATCH v3 3/3] gnu: Add devours.
> 
> * gnu/packages/games.scm (devours): New variable.
> ---
Pushed.

Happy new years!




^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-12-31 11:36 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-21 10:31 [bug#67950] [PATCH 0/3] gnu: Add devours Adam Faiz via Guix-patches via
2023-12-21 10:40 ` [bug#67950] [PATCH 1/3] gnu: Add inform Adam Faiz via Guix-patches via
2023-12-21 10:42   ` [bug#67950] [PATCH 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
2023-12-21 10:43   ` [bug#67950] [PATCH 3/3] gnu: Add devours Adam Faiz via Guix-patches via
2023-12-22 17:05   ` [bug#67950] [PATCH 1/3] gnu: Add inform Liliana Marie Prikler
2023-12-24 12:35     ` Adam Faiz via Guix-patches via
2023-12-24 15:46 ` [bug#67950] [PATCH v2 " Adam Faiz via Guix-patches via
2023-12-24 15:49   ` [bug#67950] [PATCH v2 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
2023-12-24 15:52   ` [bug#67950] [PATCH v2 3/3] gnu: Add devours Adam Faiz via Guix-patches via
2023-12-25  0:16 ` [bug#67950] [PATCH v3 1/3] gnu: Add inform Adam Faiz via Guix-patches via
2023-12-25  0:17   ` [bug#67950] [PATCH v3 2/3] gnu: Add informlib Adam Faiz via Guix-patches via
2023-12-25  0:18   ` [bug#67950] [PATCH v3 3/3] gnu: Add devours Adam Faiz via Guix-patches via
2023-12-31 11:35     ` bug#67950: " Liliana Marie Prikler

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).