* [bug#64787] [PATCH 1/2] gnu: Add scummc.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-07-22 8:24 ` Adam Faiz via Guix-patches via
2023-07-22 8:27 ` [bug#64787] [PATCH 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
2023-07-22 9:14 ` [bug#64787] [PATCH 1/2] gnu: Add scummc Liliana Marie Prikler
2023-07-22 15:28 ` [bug#64787] [PATCH v1 " Adam Faiz via Guix-patches via
` (6 subsequent siblings)
7 siblings, 2 replies; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-07-22 8:24 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler, iyzsong
From 7b2abb3e398601b28666511b457c23f2e2b71a79 Mon Sep 17 00:00:00 2001
Message-ID: <7b2abb3e398601b28666511b457c23f2e2b71a79.1690012542.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1690012542.git.adam.faiz@disroot.org>
References: <cover.1690012542.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:34:55 +0800
Subject: [PATCH 1/2] gnu: Add scummc.
* gnu/packages/game-development.scm (scummc): New variable.
---
gnu/packages/game-development.scm | 44 +++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index b0d9a88dc2..a2600ff2fe 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@@ -745,6 +746,49 @@ (define-public tsukundere
experimental.")
(license license:lgpl3+)))
+(define-public scummc
+ (package
+ (name "scummc")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list bison doxygen libxslt pkg-config))
+ (inputs
+ (list freetype gtk+-2 sdl))
+ (arguments
+ (list #:test-target "test"
+ #:tests? #f ; The only tests verify that game checksums match
+ #:make-flags
+ #~(list "SHOW_WARNINGS=no")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure ; ScummC uses a non-standard configure
+ (lambda _
+ (invoke "./configure")))
+ (add-after 'build 'build-openquest
+ (lambda _
+ (with-directory-excursion "examples/openquest"
+ (invoke "make" "tentacle"))))
+ (replace 'install ; install target is referred to as distrib
+ (lambda _
+ (invoke "make" "distrib"
+ (string-append "DISTRIB=" #$output)))))))
+ (synopsis "Scumm Compiler")
+ (description
+ "ScummC is a set of tools allowing to create SCUMM games from scratch.
+It is capable of creating games for SCUMM version 6 and partially version 7.")
+ (home-page "https://github.com/AlbanBedel/scummc")
+ (license license:gpl2+)))
+
(define-public sfml
(package
(name "sfml")
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH 2/2] gnu: Add openquest.
2023-07-22 8:24 ` [bug#64787] [PATCH 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-07-22 8:27 ` Adam Faiz via Guix-patches via
2023-07-22 9:23 ` Liliana Marie Prikler
2023-07-22 9:14 ` [bug#64787] [PATCH 1/2] gnu: Add scummc Liliana Marie Prikler
1 sibling, 1 reply; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-07-22 8:27 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler, iyzsong
From 856d172ba50107ee74fe5c2aca5114923c89fbb1 Mon Sep 17 00:00:00 2001
Message-ID: <856d172ba50107ee74fe5c2aca5114923c89fbb1.1690012542.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1690012542.git.adam.faiz@disroot.org>
References: <cover.1690012542.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:38:48 +0800
Subject: [PATCH 2/2] gnu: Add openquest.
* gnu/packages/games.scm (openquest): New variable.
---
gnu/packages/games.scm | 49 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c388314771..7355b295b7 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5094,6 +5094,55 @@ (define openrct2-objects
"openrct2-objects is a set of objects for OpenRCT2.")
(license license:gpl3+)))
+(define-public openquest
+ (package
+ (inherit scummc)
+ (name "openquest")
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils)
+ (ice-9 match))
+ (let* ((out (assoc-ref %outputs "out"))
+ (scummc (assoc-ref %build-inputs "scummc"))
+ (share (string-append scummc "/examples/openquest"))
+ (scummvm (assoc-ref %build-inputs "scummvm")))
+ ;; Create standalone executable.
+ (let* ((bin (string-append out "/bin"))
+ (executable (string-append bin "/openquest"))
+ (bash (search-input-file %build-inputs "/bin/bash")))
+ (mkdir-p bin)
+ (with-output-to-file executable
+ (lambda ()
+ (format #t "#!~a~%" bash)
+ (format #t
+ "exec ~a/bin/scummvm --path=~a tentacle~%"
+ scummvm share)))
+ (chmod executable #o755))
+ ;; Create desktop file. There is no official icon,
+ ;; but the main character of the game is a good choice.
+ (let ((apps (string-append out "/share/applications")))
+ (mkdir-p apps)
+ (make-desktop-entry-file
+ (string-append apps "/openquest.desktop")
+ #:name "OpenQuest"
+ #:generic-name "OpenQuest"
+ #:exec (string-append out "/bin/openquest")
+ #:icon (string-append scummc "/examples/openquest/graphics/zob/frames/stand_S.bmp")
+ #:categories '("AdventureGame" "Game" "RolePlaying")
+ #:keywords '("game" "adventure" "roleplaying" "2D" "sci-fi")
+ #:comment '((#f "Simple 2D point and click adventure game"))))))))
+ (native-inputs
+ (list bash unzip))
+ (inputs
+ (list scummc scummvm))
+ (home-page "https://www.scummvm.org")
+ (synopsis "Simple 2D point and click adventure game")
+ (description "OpenQuest is a two room adventure game
+that follows two aliens who come to Earth in search of a stolen artifact.")))
+
(define-public openrct2
(package
(name "openrct2")
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH 2/2] gnu: Add openquest.
2023-07-22 8:27 ` [bug#64787] [PATCH 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-07-22 9:23 ` Liliana Marie Prikler
0 siblings, 0 replies; 17+ messages in thread
From: Liliana Marie Prikler @ 2023-07-22 9:23 UTC (permalink / raw)
To: Adam Faiz, 64787; +Cc: iyzsong
Am Samstag, dem 22.07.2023 um 16:27 +0800 schrieb Adam Faiz:
> From 856d172ba50107ee74fe5c2aca5114923c89fbb1 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <856d172ba50107ee74fe5c2aca5114923c89fbb1.1690012542.git.adam.faiz@di
> sroot.org>
> In-Reply-To: <cover.1690012542.git.adam.faiz@disroot.org>
> References: <cover.1690012542.git.adam.faiz@disroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Sat, 22 Jul 2023 15:38:48 +0800
> Subject: [PATCH 2/2] gnu: Add openquest.
>
> * gnu/packages/games.scm (openquest): New variable.
> ---
> gnu/packages/games.scm | 49
> ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 49 insertions(+)
>
> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> index c388314771..7355b295b7 100644
> --- a/gnu/packages/games.scm
> +++ b/gnu/packages/games.scm
> @@ -5094,6 +5094,55 @@ (define openrct2-objects
> "openrct2-objects is a set of objects for OpenRCT2.")
> (license license:gpl3+)))
>
> +(define-public openquest
> + (package
> + (inherit scummc)
> + (name "openquest")
> + (build-system trivial-build-system)
As a matter of principle, almost always prefer copy-build-system over
trivial-build-system, but see below.
> + (arguments
> + `(#:modules ((guix build utils))
> + #:builder
> + (begin
> + (use-modules (guix build utils)
> + (ice-9 match))
> + (let* ((out (assoc-ref %outputs "out"))
> + (scummc (assoc-ref %build-inputs "scummc"))
> + (share (string-append scummc "/examples/openquest"))
> + (scummvm (assoc-ref %build-inputs "scummvm")))
> + ;; Create standalone executable.
> + (let* ((bin (string-append out "/bin"))
> + (executable (string-append bin "/openquest"))
> + (bash (search-input-file %build-inputs
> "/bin/bash")))
> + (mkdir-p bin)
> + (with-output-to-file executable
> + (lambda ()
> + (format #t "#!~a~%" bash)
> + (format #t
> + "exec ~a/bin/scummvm --path=~a tentacle~%"
> + scummvm share)))
> + (chmod executable #o755))
IIUC this is done via "make tentacle" in the previous package.
We would have to set the following make-flags:
SCC = scc
SLD = sld
COST = cost
CHAR = char
SOUN = soun
as well as possible other adjustments to use it without rebuilding, but
I'd say that's worth a try.
> + ;; Create desktop file. There is no official icon,
> + ;; but the main character of the game is a good choice.
> + (let ((apps (string-append out "/share/applications")))
> + (mkdir-p apps)
> + (make-desktop-entry-file
> + (string-append apps "/openquest.desktop")
> + #:name "OpenQuest"
> + #:generic-name "OpenQuest"
> + #:exec (string-append out "/bin/openquest")
> + #:icon (string-append scummc
> "/examples/openquest/graphics/zob/frames/stand_S.bmp")
> + #:categories '("AdventureGame" "Game" "RolePlaying")
> + #:keywords '("game" "adventure" "roleplaying" "2D"
> "sci-fi")
> + #:comment '((#f "Simple 2D point and click adventure
> game"))))))))
> + (native-inputs
> + (list bash unzip))
> + (inputs
> + (list scummc scummvm))
> + (home-page "https://www.scummvm.org")
> + (synopsis "Simple 2D point and click adventure game")
> + (description "OpenQuest is a two room adventure game
> +that follows two aliens who come to Earth in search of a stolen
> artifact.")))
> +
>
Cheers
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH 1/2] gnu: Add scummc.
2023-07-22 8:24 ` [bug#64787] [PATCH 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
2023-07-22 8:27 ` [bug#64787] [PATCH 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-07-22 9:14 ` Liliana Marie Prikler
1 sibling, 0 replies; 17+ messages in thread
From: Liliana Marie Prikler @ 2023-07-22 9:14 UTC (permalink / raw)
To: Adam Faiz, 64787; +Cc: iyzsong
Am Samstag, dem 22.07.2023 um 16:24 +0800 schrieb Adam Faiz:
> From 7b2abb3e398601b28666511b457c23f2e2b71a79 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <7b2abb3e398601b28666511b457c23f2e2b71a79.1690012542.git.adam.faiz@di
> sroot.org>
> In-Reply-To: <cover.1690012542.git.adam.faiz@disroot.org>
> References: <cover.1690012542.git.adam.faiz@disroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Sat, 22 Jul 2023 15:34:55 +0800
> Subject: [PATCH 1/2] gnu: Add scummc.
>
> * gnu/packages/game-development.scm (scummc): New variable.
> ---
> gnu/packages/game-development.scm | 44
> +++++++++++++++++++++++++++++++
> 1 file changed, 44 insertions(+)
>
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> development.scm
> index b0d9a88dc2..a2600ff2fe 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
> #:use-module (gnu packages autotools)
> #:use-module (gnu packages base)
> #:use-module (gnu packages bash)
> + #:use-module (gnu packages bison)
> #:use-module (gnu packages boost)
> #:use-module (gnu packages build-tools)
> #:use-module (gnu packages compression)
> @@ -745,6 +746,49 @@ (define-public tsukundere
> experimental.")
> (license license:lgpl3+)))
>
> +(define-public scummc
> + (package
> + (name "scummc")
> + (version "0.2.1")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/AlbanBedel/scummc")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> +
> "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))))
> + (build-system gnu-build-system)
> + (native-inputs
> + (list bison doxygen libxslt pkg-config))
> + (inputs
> + (list freetype gtk+-2 sdl))
> + (arguments
> + (list #:test-target "test"
> + #:tests? #f ; The only tests verify that game checksums
> match
> + #:make-flags
> + #~(list "SHOW_WARNINGS=no")
> + #:phases
> + #~(modify-phases %standard-phases
> + (replace 'configure ; ScummC uses a non-standard
> configure
> + (lambda _
> + (invoke "./configure")))
Replaced configure should still take #:configure-flags.
> + (add-after 'build 'build-openquest
> + (lambda _
> + (with-directory-excursion "examples/openquest"
> + (invoke "make" "tentacle"))))
Is this a check?
> + (replace 'install ; install target is referred to as
> distrib
> + (lambda _
> + (invoke "make" "distrib"
> + (string-append "DISTRIB=" #$output)))))))
> + (synopsis "Scumm Compiler")
> + (description
> + "ScummC is a set of tools allowing to create SCUMM games from
> scratch.
> +It is capable of creating games for SCUMM version 6 and partially
> version 7.")
> + (home-page "https://github.com/AlbanBedel/scummc")
> + (license license:gpl2+)))
> +
Otherwise LGTM.
Cheers
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v1 1/2] gnu: Add scummc.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
2023-07-22 8:24 ` [bug#64787] [PATCH 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-07-22 15:28 ` Adam Faiz via Guix-patches via
2023-07-22 15:30 ` [bug#64787] [PATCH v1 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
2023-07-22 23:48 ` [bug#64787] [PATCH v2 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
` (5 subsequent siblings)
7 siblings, 1 reply; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-07-22 15:28 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler
From ae75dfc3f9fa840f014b23809132540b955e189b Mon Sep 17 00:00:00 2001
Message-ID: <ae75dfc3f9fa840f014b23809132540b955e189b.1690039034.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:34:55 +0800
Subject: [PATCH v1 1/2] gnu: Add scummc.
* gnu/packages/game-development.scm (scummc): New variable.
---
gnu/packages/game-development.scm | 52 +++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index b0d9a88dc2..ba015aa649 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@@ -745,6 +746,57 @@ (define-public tsukundere
experimental.")
(license license:lgpl3+)))
+(define-public scummc
+ (package
+ (name "scummc")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list bison doxygen libxslt pkg-config))
+ (inputs
+ (list freetype gtk+-2 sdl))
+ (arguments
+ (list #:test-target "test"
+ #:tests? #f ; The only tests verify that game checksums match
+ #:make-flags
+ #~(list "SHOW_WARNINGS=no")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure ; ScummC uses a non-standard configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (apply invoke "./configure" configure-flags)))
+ (replace 'install ; install target is referred to as distrib
+ (lambda _
+ (invoke "make" "distrib"
+ (string-append "DISTRIB=" #$output)))))))
+ (synopsis "Scumm Compiler")
+ (description
+ "ScummC is a set of tools allowing to create SCUMM games from scratch.
+It is capable of creating games for SCUMM version 6 and partially version 7.")
+ (home-page "https://github.com/AlbanBedel/scummc")
+ (license license:gpl2+)))
+
(define-public sfml
(package
(name "sfml")
base-commit: 6bda806416b8e6032ef1047c5feed776b6cc0493
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v1 2/2] gnu: Add openquest.
2023-07-22 15:28 ` [bug#64787] [PATCH v1 " Adam Faiz via Guix-patches via
@ 2023-07-22 15:30 ` Adam Faiz via Guix-patches via
2023-07-22 16:07 ` Liliana Marie Prikler
0 siblings, 1 reply; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-07-22 15:30 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler
From 4ae5c4a4de15f4fb7fcd165e3e619e356051b049 Mon Sep 17 00:00:00 2001
Message-ID: <4ae5c4a4de15f4fb7fcd165e3e619e356051b049.1690039034.git.adam.faiz@disroot.org>
In-Reply-To: <ae75dfc3f9fa840f014b23809132540b955e189b.1690039034.git.adam.faiz@disroot.org>
References: <ae75dfc3f9fa840f014b23809132540b955e189b.1690039034.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:38:48 +0800
Subject: [PATCH v1 2/2] gnu: Add openquest.
* gnu/packages/games.scm (openquest): New variable.
---
gnu/packages/games.scm | 62 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 62 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c388314771..39fbfc195f 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5094,6 +5094,68 @@ (define openrct2-objects
"openrct2-objects is a set of objects for OpenRCT2.")
(license license:gpl3+)))
+(define-public openquest
+ (package
+ (name "openquest")
+ (version "1.0")
+ (source (package-source scummc))
+ (build-system gnu-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments scummc)
+ ((#:make-flags _)
+ #~(list "SCC=scc"
+ "SLD=sld"
+ "COST=cost"
+ "CHAR=char"
+ "SOUN=soun"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (with-directory-excursion "examples/openquest"
+ (apply invoke "make" "tentacle" make-flags))))
+ (add-after 'install 'install-executable
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Create standalone executable.
+ (let* ((bash (search-input-file inputs "/bin/bash"))
+ (share (string-append #$output "/examples/openquest"))
+ (scummvm (search-input-file inputs "/bin/scummvm"))
+ (bin (string-append #$output "/bin"))
+ (executable (string-append bin "/openquest")))
+ (mkdir-p bin)
+ (with-output-to-file executable
+ (lambda ()
+ (format #t "#!~a~%" bash)
+ (format #t
+ "exec ~a --path=~a tentacle~%"
+ scummvm share)))
+ (chmod executable #o755))))
+ (add-after 'install-executable 'install-desktop-file
+ (lambda _
+ ;; Create desktop file. There is no official icon,
+ ;; but the main character of the game is a good choice.
+ (let ((apps (string-append #$output "/share/applications")))
+ (mkdir-p apps)
+ (make-desktop-entry-file
+ (string-append apps "/openquest.desktop")
+ #:name "OpenQuest"
+ #:generic-name "OpenQuest"
+ #:exec (string-append #$output "/bin/openquest")
+ #:icon (string-append #$output "/examples/openquest/graphics/zob/frames/stand_S.bmp")
+ #:categories '("AdventureGame" "Game" "RolePlaying")
+ #:keywords '("game" "adventure" "roleplaying" "2D" "sci-fi")
+ #:comment '((#f "Simple 2D point and click adventure game"))))))))))
+ (native-inputs
+ (modify-inputs (package-native-inputs scummc)
+ (prepend scummc)))
+ (inputs
+ (list bash scummvm))
+ (home-page "https://www.scummvm.org")
+ (synopsis "Simple 2D point and click adventure game")
+ (description "OpenQuest is a two room adventure game
+that follows two aliens who come to Earth in search of a stolen artifact.")
+ (license license:gpl2+)))
+
(define-public openrct2
(package
(name "openrct2")
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v1 2/2] gnu: Add openquest.
2023-07-22 15:30 ` [bug#64787] [PATCH v1 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-07-22 16:07 ` Liliana Marie Prikler
0 siblings, 0 replies; 17+ messages in thread
From: Liliana Marie Prikler @ 2023-07-22 16:07 UTC (permalink / raw)
To: Adam Faiz, 64787
Am Samstag, dem 22.07.2023 um 23:30 +0800 schrieb Adam Faiz:
> From 4ae5c4a4de15f4fb7fcd165e3e619e356051b049 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <4ae5c4a4de15f4fb7fcd165e3e619e356051b049.1690039034.git.adam.faiz@di
> sroot.org>
> In-Reply-To:
> <ae75dfc3f9fa840f014b23809132540b955e189b.1690039034.git.adam.faiz@di
> sroot.org>
> References:
> <ae75dfc3f9fa840f014b23809132540b955e189b.1690039034.git.adam.faiz@di
> sroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Sat, 22 Jul 2023 15:38:48 +0800
> Subject: [PATCH v1 2/2] gnu: Add openquest.
>
> * gnu/packages/games.scm (openquest): New variable.
> ---
Note: tagging revisions as v1 appears to mess with mumi, so don't.
> gnu/packages/games.scm | 62
> ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 62 insertions(+)
>
> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> index c388314771..39fbfc195f 100644
> --- a/gnu/packages/games.scm
> +++ b/gnu/packages/games.scm
> @@ -5094,6 +5094,68 @@ (define openrct2-objects
> "openrct2-objects is a set of objects for OpenRCT2.")
> (license license:gpl3+)))
>
> +(define-public openquest
> + (package
> + (name "openquest")
> + (version "1.0")
> + (source (package-source scummc))
You should replicate the source here. The source field is not lazy,
which means it can lead to breakages when stuff goes cross modules.
> + (build-system gnu-build-system)
> + (arguments
> + (substitute-keyword-arguments (package-arguments scummc)
> + ((#:make-flags _)
> + #~(list "SCC=scc"
> + "SLD=sld"
> + "COST=cost"
> + "CHAR=char"
> + "SOUN=soun"))
> + ((#:phases phases)
> + #~(modify-phases #$phases
> + (replace 'build
> + (lambda* (#:key make-flags #:allow-other-keys)
> + (with-directory-excursion "examples/openquest"
> + (apply invoke "make" "tentacle" make-flags))))
> + (add-after 'install 'install-executable
> + (lambda* (#:key inputs #:allow-other-keys)
> + ;; Create standalone executable.
> + (let* ((bash (search-input-file inputs "/bin/bash"))
> + (share (string-append #$output
> "/examples/openquest"))
> + (scummvm (search-input-file inputs
> "/bin/scummvm"))
> + (bin (string-append #$output "/bin"))
> + (executable (string-append bin
> "/openquest")))
> + (mkdir-p bin)
> + (with-output-to-file executable
> + (lambda ()
> + (format #t "#!~a~%" bash)
> + (format #t
> + "exec ~a --path=~a tentacle~%"
> + scummvm share)))
> + (chmod executable #o755))))
> + (add-after 'install-executable 'install-desktop-file
> + (lambda _
> + ;; Create desktop file. There is no official icon,
> + ;; but the main character of the game is a good
> choice.
> + (let ((apps (string-append #$output
> "/share/applications")))
> + (mkdir-p apps)
> + (make-desktop-entry-file
> + (string-append apps "/openquest.desktop")
> + #:name "OpenQuest"
> + #:generic-name "OpenQuest"
> + #:exec (string-append #$output "/bin/openquest")
> + #:icon (string-append #$output
> "/examples/openquest/graphics/zob/frames/stand_S.bmp")
> + #:categories '("AdventureGame" "Game"
> "RolePlaying")
> + #:keywords '("game" "adventure" "roleplaying"
> "2D" "sci-fi")
> + #:comment '((#f "Simple 2D point and click
> adventure game"))))))))))
> + (native-inputs
> + (modify-inputs (package-native-inputs scummc)
> + (prepend scummc)))
> + (inputs
> + (list bash scummvm))
> + (home-page "https://www.scummvm.org")
> + (synopsis "Simple 2D point and click adventure game")
> + (description "OpenQuest is a two room adventure game
> +that follows two aliens who come to Earth in search of a stolen
> artifact.")
> + (license license:gpl2+)))
> +
Cheers
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v2 1/2] gnu: Add scummc.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
2023-07-22 8:24 ` [bug#64787] [PATCH 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
2023-07-22 15:28 ` [bug#64787] [PATCH v1 " Adam Faiz via Guix-patches via
@ 2023-07-22 23:48 ` Adam Faiz via Guix-patches via
2023-07-22 23:50 ` [bug#64787] [PATCH v2 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
2023-08-27 5:27 ` [bug#64787] [PATCH v3 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
` (4 subsequent siblings)
7 siblings, 1 reply; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-07-22 23:48 UTC (permalink / raw)
To: 64787
From ae75dfc3f9fa840f014b23809132540b955e189b Mon Sep 17 00:00:00 2001
Message-ID: <ae75dfc3f9fa840f014b23809132540b955e189b.1690069496.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:34:55 +0800
Subject: [PATCH v2 1/2] gnu: Add scummc.
* gnu/packages/game-development.scm (scummc): New variable.
---
gnu/packages/game-development.scm | 52 +++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index b0d9a88dc2..ba015aa649 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@@ -745,6 +746,57 @@ (define-public tsukundere
experimental.")
(license license:lgpl3+)))
+(define-public scummc
+ (package
+ (name "scummc")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list bison doxygen libxslt pkg-config))
+ (inputs
+ (list freetype gtk+-2 sdl))
+ (arguments
+ (list #:test-target "test"
+ #:tests? #f ; The only tests verify that game checksums match
+ #:make-flags
+ #~(list "SHOW_WARNINGS=no")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure ; ScummC uses a non-standard configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (apply invoke "./configure" configure-flags)))
+ (replace 'install ; install target is referred to as distrib
+ (lambda _
+ (invoke "make" "distrib"
+ (string-append "DISTRIB=" #$output)))))))
+ (synopsis "Scumm Compiler")
+ (description
+ "ScummC is a set of tools allowing to create SCUMM games from scratch.
+It is capable of creating games for SCUMM version 6 and partially version 7.")
+ (home-page "https://github.com/AlbanBedel/scummc")
+ (license license:gpl2+)))
+
(define-public sfml
(package
(name "sfml")
base-commit: 6bda806416b8e6032ef1047c5feed776b6cc0493
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v2 2/2] gnu: Add openquest.
2023-07-22 23:48 ` [bug#64787] [PATCH v2 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-07-22 23:50 ` Adam Faiz via Guix-patches via
0 siblings, 0 replies; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-07-22 23:50 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler
From bcb776213db44c48735694ab44941d1fc7e38e31 Mon Sep 17 00:00:00 2001
Message-ID: <bcb776213db44c48735694ab44941d1fc7e38e31.1690069496.git.adam.faiz@disroot.org>
In-Reply-To: <ae75dfc3f9fa840f014b23809132540b955e189b.1690069496.git.adam.faiz@disroot.org>
References: <ae75dfc3f9fa840f014b23809132540b955e189b.1690069496.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:38:48 +0800
Subject: [PATCH v2 2/2] gnu: Add openquest.
* gnu/packages/games.scm (openquest): New variable.
---
gnu/packages/games.scm | 82 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 82 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c388314771..a35c4c6db6 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5094,6 +5094,88 @@ (define openrct2-objects
"openrct2-objects is a set of objects for OpenRCT2.")
(license license:gpl3+)))
+(define-public openquest
+ (package
+ (name "openquest")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments scummc)
+ ((#:make-flags _)
+ #~(list "SCC=scc"
+ "SLD=sld"
+ "COST=cost"
+ "CHAR=char"
+ "SOUN=soun"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (with-directory-excursion "examples/openquest"
+ (apply invoke "make" "tentacle" make-flags))))
+ (add-after 'install 'install-executable
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Create standalone executable.
+ (let* ((bash (search-input-file inputs "/bin/bash"))
+ (share (string-append #$output "/examples/openquest"))
+ (scummvm (search-input-file inputs "/bin/scummvm"))
+ (bin (string-append #$output "/bin"))
+ (executable (string-append bin "/openquest")))
+ (mkdir-p bin)
+ (with-output-to-file executable
+ (lambda ()
+ (format #t "#!~a~%" bash)
+ (format #t
+ "exec ~a --path=~a tentacle~%"
+ scummvm share)))
+ (chmod executable #o755))))
+ (add-after 'install-executable 'install-desktop-file
+ (lambda _
+ ;; Create desktop file. There is no official icon,
+ ;; but the main character of the game is a good choice.
+ (let ((apps (string-append #$output "/share/applications")))
+ (mkdir-p apps)
+ (make-desktop-entry-file
+ (string-append apps "/openquest.desktop")
+ #:name "OpenQuest"
+ #:generic-name "OpenQuest"
+ #:exec (string-append #$output "/bin/openquest")
+ #:icon (string-append #$output "/examples/openquest/graphics/zob/frames/stand_S.bmp")
+ #:categories '("AdventureGame" "Game" "RolePlaying")
+ #:keywords '("game" "adventure" "roleplaying" "2D" "sci-fi")
+ #:comment '((#f "Simple 2D point and click adventure game"))))))))))
+ (native-inputs
+ (modify-inputs (package-native-inputs scummc)
+ (prepend scummc)))
+ (inputs
+ (list bash scummvm))
+ (home-page "https://www.scummvm.org")
+ (synopsis "Simple 2D point and click adventure game")
+ (description "OpenQuest is a two room adventure game
+that follows two aliens who come to Earth in search of a stolen artifact.")
+ (license license:gpl2+)))
+
(define-public openrct2
(package
(name "openrct2")
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v3 1/2] gnu: Add scummc.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
` (2 preceding siblings ...)
2023-07-22 23:48 ` [bug#64787] [PATCH v2 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-08-27 5:27 ` Adam Faiz via Guix-patches via
2023-08-27 6:21 ` Liliana Marie Prikler
2023-08-27 5:29 ` [bug#64787] [PATCH v3 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
` (3 subsequent siblings)
7 siblings, 1 reply; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-08-27 5:27 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler, iyzsong
From 7ab2531a5434121f3fb7fdc25c626693f4d96cb6 Mon Sep 17 00:00:00 2001
Message-ID: <7ab2531a5434121f3fb7fdc25c626693f4d96cb6.1693113837.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:34:55 +0800
Subject: [PATCH v3 1/2] gnu: Add scummc.
* gnu/packages/game-development.scm (scummc): New variable.
---
gnu/packages/game-development.scm | 55 +++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 5e470f0d25..3f53b53f3a 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@@ -745,6 +746,60 @@ (define-public tsukundere
experimental.")
(license license:lgpl3+)))
+(define-public scummc
+ (package
+ (name "scummc")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "configure"
+ (("\\|alpha" all)
+ (string-append all "|arm|aarch64|powerpc64le")))
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list bison doxygen libxslt pkg-config))
+ (inputs
+ (list freetype gtk+-2 sdl))
+ (arguments
+ (list #:test-target "test"
+ #:tests? #f ; The only tests verify that game checksums match
+ #:make-flags
+ #~(list "SHOW_WARNINGS=no")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure ; ScummC uses a non-standard configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (apply invoke "./configure" configure-flags)))
+ (replace 'install ; install target is referred to as distrib
+ (lambda _
+ (invoke "make" "distrib"
+ (string-append "DISTRIB=" #$output)))))))
+ (synopsis "Scumm Compiler")
+ (description
+ "ScummC is a set of tools allowing to create SCUMM games from scratch.
+It is capable of creating games for SCUMM version 6 and partially version 7.")
+ (home-page "https://github.com/AlbanBedel/scummc")
+ (license license:gpl2+)))
+
(define-public sfml
(package
(name "sfml")
base-commit: d17eea747277643811134f9a33b534e58160688f
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v3 1/2] gnu: Add scummc.
2023-08-27 5:27 ` [bug#64787] [PATCH v3 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-08-27 6:21 ` Liliana Marie Prikler
0 siblings, 0 replies; 17+ messages in thread
From: Liliana Marie Prikler @ 2023-08-27 6:21 UTC (permalink / raw)
To: Adam Faiz, 64787; +Cc: iyzsong
Am Sonntag, dem 27.08.2023 um 13:27 +0800 schrieb Adam Faiz:
> From 7ab2531a5434121f3fb7fdc25c626693f4d96cb6 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <7ab2531a5434121f3fb7fdc25c626693f4d96cb6.1693113837.git.adam.faiz@di
> sroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Sat, 22 Jul 2023 15:34:55 +0800
> Subject: [PATCH v3 1/2] gnu: Add scummc.
>
> * gnu/packages/game-development.scm (scummc): New variable.
> ---
> gnu/packages/game-development.scm | 55
> +++++++++++++++++++++++++++++++
> 1 file changed, 55 insertions(+)
>
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> development.scm
> index 5e470f0d25..3f53b53f3a 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
> #:use-module (gnu packages autotools)
> #:use-module (gnu packages base)
> #:use-module (gnu packages bash)
> + #:use-module (gnu packages bison)
> #:use-module (gnu packages boost)
> #:use-module (gnu packages build-tools)
> #:use-module (gnu packages compression)
> @@ -745,6 +746,60 @@ (define-public tsukundere
> experimental.")
> (license license:lgpl3+)))
>
> +(define-public scummc
> + (package
> + (name "scummc")
> + (version "0.2.1")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/AlbanBedel/scummc")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> +
> "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
> + (modules '((guix build utils)))
> + (snippet
> + #~(begin
> + (substitute* "configure"
> + (("\\|alpha" all)
> + (string-append all
> "|arm|aarch64|powerpc64le")))
> + (substitute* "examples/example.mak"
> + (("scost.*\n$") "scost\n")
> + (("bmp \\$\\(.*\n$") "bmp\n")
> + (("/%.scc.*\n$") "/%.scc\n")
> + (("voc \\$\\(.*\n$") "voc\n"))
> + (substitute* "Makefile.target"
> + (("distrib-data:.*\n") "distrib-data:\n")
> + (("cp.*/bin" all)
> + (string-append all " || true")))))))
> + (build-system gnu-build-system)
> + (native-inputs
> + (list bison doxygen libxslt pkg-config))
> + (inputs
> + (list freetype gtk+-2 sdl))
The preferred order is build-system, arguments, inputs, native-inputs.
> + (arguments
> + (list #:test-target "test"
> + #:tests? #f ; The only tests verify that game checksums
> match
> + #:make-flags
> + #~(list "SHOW_WARNINGS=no")
> + #:phases
> + #~(modify-phases %standard-phases
> + (replace 'configure ; ScummC uses a non-standard
> configure
> + (lambda* (#:key configure-flags #:allow-other-
> keys)
> + (apply invoke "./configure" configure-
> flags)))
> + (replace 'install ; install target is referred to as
> distrib
> + (lambda _
> + (invoke "make" "distrib"
> + (string-append "DISTRIB=" #$output)))))))
> + (synopsis "Scumm Compiler")
Should probably be SCUMM Compiler, no?
> + (description
> + "ScummC is a set of tools allowing to create SCUMM games from
> scratch.
> +It is capable of creating games for SCUMM version 6 and partially
> version 7.")
> + (home-page "https://github.com/AlbanBedel/scummc")
> + (license license:gpl2+)))
> +
Otherwise LGTM.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v3 2/2] gnu: Add openquest.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
` (3 preceding siblings ...)
2023-08-27 5:27 ` [bug#64787] [PATCH v3 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-08-27 5:29 ` Adam Faiz via Guix-patches via
2023-08-27 6:22 ` Liliana Marie Prikler
2023-08-27 7:02 ` [bug#64787] [PATCH v4 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
` (2 subsequent siblings)
7 siblings, 1 reply; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-08-27 5:29 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler, iyzsong
From 0ff1adbf5147677f613697253867862ce342d115 Mon Sep 17 00:00:00 2001
Message-ID: <0ff1adbf5147677f613697253867862ce342d115.1693113837.git.adam.faiz@disroot.org>
In-Reply-To: <7ab2531a5434121f3fb7fdc25c626693f4d96cb6.1693113837.git.adam.faiz@disroot.org>
References: <7ab2531a5434121f3fb7fdc25c626693f4d96cb6.1693113837.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:38:48 +0800
Subject: [PATCH v3 2/2] gnu: Add openquest.
* gnu/packages/games.scm (openquest): New variable.
---
gnu/packages/games.scm | 85 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 85 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index e594eb701c..857429b8cf 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5099,6 +5099,91 @@ (define openrct2-objects
"openrct2-objects is a set of objects for OpenRCT2.")
(license license:gpl3+)))
+(define-public openquest
+ (package
+ (name "openquest")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "configure"
+ (("\\|alpha" all)
+ (string-append all "|arm|aarch64|powerpc64le")))
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments scummc)
+ ((#:make-flags _)
+ #~(list "SCC=scc"
+ "SLD=sld"
+ "COST=cost"
+ "CHAR=char"
+ "SOUN=soun"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (with-directory-excursion "examples/openquest"
+ (apply invoke "make" "tentacle" make-flags))))
+ (add-after 'install 'install-executable
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Create standalone executable.
+ (let* ((bash (search-input-file inputs "/bin/bash"))
+ (share (string-append #$output "/examples/openquest"))
+ (scummvm (search-input-file inputs "/bin/scummvm"))
+ (bin (string-append #$output "/bin"))
+ (executable (string-append bin "/openquest")))
+ (mkdir-p bin)
+ (with-output-to-file executable
+ (lambda ()
+ (format #t "#!~a~%" bash)
+ (format #t
+ "exec ~a --path=~a tentacle~%"
+ scummvm share)))
+ (chmod executable #o755))))
+ (add-after 'install-executable 'install-desktop-file
+ (lambda _
+ ;; Create desktop file. There is no official icon,
+ ;; but the main character of the game is a good choice.
+ (let ((apps (string-append #$output "/share/applications")))
+ (mkdir-p apps)
+ (make-desktop-entry-file
+ (string-append apps "/openquest.desktop")
+ #:name "OpenQuest"
+ #:generic-name "OpenQuest"
+ #:exec (string-append #$output "/bin/openquest")
+ #:icon (string-append #$output "/examples/openquest/graphics/zob/frames/stand_S.bmp")
+ #:categories '("AdventureGame" "Game" "RolePlaying")
+ #:keywords '("game" "adventure" "roleplaying" "2D" "sci-fi")
+ #:comment '((#f "Simple 2D point and click adventure game"))))))))))
+ (native-inputs
+ (modify-inputs (package-native-inputs scummc)
+ (prepend scummc)))
+ (inputs
+ (list bash scummvm))
+ (home-page "https://www.scummvm.org")
+ (synopsis "Simple 2D point and click adventure game")
+ (description "OpenQuest is a two room adventure game
+that follows two aliens who come to Earth in search of a stolen artifact.")
+ (license license:gpl2+)))
+
(define-public openrct2
(package
(name "openrct2")
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v3 2/2] gnu: Add openquest.
2023-08-27 5:29 ` [bug#64787] [PATCH v3 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-08-27 6:22 ` Liliana Marie Prikler
0 siblings, 0 replies; 17+ messages in thread
From: Liliana Marie Prikler @ 2023-08-27 6:22 UTC (permalink / raw)
To: Adam Faiz, 64787; +Cc: iyzsong
Am Sonntag, dem 27.08.2023 um 13:29 +0800 schrieb Adam Faiz:
> From 0ff1adbf5147677f613697253867862ce342d115 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <0ff1adbf5147677f613697253867862ce342d115.1693113837.git.adam.faiz@di
> sroot.org>
> In-Reply-To:
> <7ab2531a5434121f3fb7fdc25c626693f4d96cb6.1693113837.git.adam.faiz@di
> sroot.org>
> References:
> <7ab2531a5434121f3fb7fdc25c626693f4d96cb6.1693113837.git.adam.faiz@di
> sroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Sat, 22 Jul 2023 15:38:48 +0800
> Subject: [PATCH v3 2/2] gnu: Add openquest.
>
> * gnu/packages/games.scm (openquest): New variable.
> ---
> gnu/packages/games.scm | 85
> ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 85 insertions(+)
>
> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> index e594eb701c..857429b8cf 100644
> --- a/gnu/packages/games.scm
> +++ b/gnu/packages/games.scm
> @@ -5099,6 +5099,91 @@ (define openrct2-objects
> "openrct2-objects is a set of objects for OpenRCT2.")
> (license license:gpl3+)))
>
> +(define-public openquest
> + (package
> + (name "openquest")
> + (version "0.2.1")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/AlbanBedel/scummc")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> +
> "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
> + (modules '((guix build utils)))
> + (snippet
> + #~(begin
> + (substitute* "configure"
> + (("\\|alpha" all)
> + (string-append all
> "|arm|aarch64|powerpc64le")))
> + (substitute* "examples/example.mak"
> + (("scost.*\n$") "scost\n")
> + (("bmp \\$\\(.*\n$") "bmp\n")
> + (("/%.scc.*\n$") "/%.scc\n")
> + (("voc \\$\\(.*\n$") "voc\n"))
> + (substitute* "Makefile.target"
> + (("distrib-data:.*\n") "distrib-data:\n")
> + (("cp.*/bin" all)
> + (string-append all " || true")))))))
> + (build-system gnu-build-system)
> + (arguments
> + (substitute-keyword-arguments (package-arguments scummc)
> + ((#:make-flags _)
> + #~(list "SCC=scc"
> + "SLD=sld"
> + "COST=cost"
> + "CHAR=char"
> + "SOUN=soun"))
> + ((#:phases phases)
> + #~(modify-phases #$phases
> + (replace 'build
> + (lambda* (#:key make-flags #:allow-other-keys)
> + (with-directory-excursion "examples/openquest"
> + (apply invoke "make" "tentacle" make-flags))))
> + (add-after 'install 'install-executable
> + (lambda* (#:key inputs #:allow-other-keys)
> + ;; Create standalone executable.
> + (let* ((bash (search-input-file inputs "/bin/bash"))
> + (share (string-append #$output
> "/examples/openquest"))
> + (scummvm (search-input-file inputs
> "/bin/scummvm"))
> + (bin (string-append #$output "/bin"))
> + (executable (string-append bin
> "/openquest")))
> + (mkdir-p bin)
> + (with-output-to-file executable
> + (lambda ()
> + (format #t "#!~a~%" bash)
> + (format #t
> + "exec ~a --path=~a tentacle~%"
> + scummvm share)))
> + (chmod executable #o755))))
> + (add-after 'install-executable 'install-desktop-file
> + (lambda _
> + ;; Create desktop file. There is no official icon,
> + ;; but the main character of the game is a good
> choice.
> + (let ((apps (string-append #$output
> "/share/applications")))
> + (mkdir-p apps)
> + (make-desktop-entry-file
> + (string-append apps "/openquest.desktop")
> + #:name "OpenQuest"
> + #:generic-name "OpenQuest"
> + #:exec (string-append #$output "/bin/openquest")
> + #:icon (string-append #$output
> "/examples/openquest/graphics/zob/frames/stand_S.bmp")
> + #:categories '("AdventureGame" "Game"
> "RolePlaying")
> + #:keywords '("game" "adventure" "roleplaying"
> "2D" "sci-fi")
> + #:comment '((#f "Simple 2D point and click
> adventure game"))))))))))
Beware of potentially long lines. What does the linter say?
> + (native-inputs
> + (modify-inputs (package-native-inputs scummc)
> + (prepend scummc)))
> + (inputs
> + (list bash scummvm))
> + (home-page "https://www.scummvm.org")
> + (synopsis "Simple 2D point and click adventure game")
> + (description "OpenQuest is a two room adventure game
> +that follows two aliens who come to Earth in search of a stolen
> artifact.")
> + (license license:gpl2+)))
Otherwise LGTM.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v4 1/2] gnu: Add scummc.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
` (4 preceding siblings ...)
2023-08-27 5:29 ` [bug#64787] [PATCH v3 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-08-27 7:02 ` Adam Faiz via Guix-patches via
2023-08-27 7:03 ` [bug#64787] [PATCH v4 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
2023-09-02 5:14 ` bug#64787: [PATCH 0/2] " Liliana Marie Prikler
7 siblings, 0 replies; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-08-27 7:02 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler
From 98ebef1cd99f84a70b5e16ed9dd6e772c2c61f74 Mon Sep 17 00:00:00 2001
Message-ID: <98ebef1cd99f84a70b5e16ed9dd6e772c2c61f74.1693119612.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:34:55 +0800
Subject: [PATCH v4 1/2] gnu: Add scummc.
* gnu/packages/game-development.scm (scummc): New variable.
---
gnu/packages/game-development.scm | 55 +++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 5e470f0d25..964f7623db 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -66,6 +66,7 @@ (define-module (gnu packages game-development)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@@ -745,6 +746,60 @@ (define-public tsukundere
experimental.")
(license license:lgpl3+)))
+(define-public scummc
+ (package
+ (name "scummc")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "configure"
+ (("\\|alpha" all)
+ (string-append all "|arm|aarch64|powerpc64le")))
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:test-target "test"
+ #:tests? #f ; The only tests verify that game checksums match
+ #:make-flags
+ #~(list "SHOW_WARNINGS=no")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure ; ScummC uses a non-standard configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (apply invoke "./configure" configure-flags)))
+ (replace 'install ; install target is referred to as distrib
+ (lambda _
+ (invoke "make" "distrib"
+ (string-append "DISTRIB=" #$output)))))))
+ (inputs
+ (list freetype gtk+-2 sdl))
+ (native-inputs
+ (list bison doxygen libxslt pkg-config))
+ (synopsis "SCUMM Compiler")
+ (description
+ "ScummC is a set of tools allowing to create SCUMM games from scratch.
+It is capable of creating games for SCUMM version 6 and partially version 7.")
+ (home-page "https://github.com/AlbanBedel/scummc")
+ (license license:gpl2+)))
+
(define-public sfml
(package
(name "sfml")
base-commit: d17eea747277643811134f9a33b534e58160688f
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [bug#64787] [PATCH v4 2/2] gnu: Add openquest.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
` (5 preceding siblings ...)
2023-08-27 7:02 ` [bug#64787] [PATCH v4 1/2] gnu: Add scummc Adam Faiz via Guix-patches via
@ 2023-08-27 7:03 ` Adam Faiz via Guix-patches via
2023-09-02 5:14 ` bug#64787: [PATCH 0/2] " Liliana Marie Prikler
7 siblings, 0 replies; 17+ messages in thread
From: Adam Faiz via Guix-patches via @ 2023-08-27 7:03 UTC (permalink / raw)
To: 64787; +Cc: Liliana Marie Prikler
From b0a6c70414b65872571ef66bf66b49ea0b3f3666 Mon Sep 17 00:00:00 2001
Message-ID: <b0a6c70414b65872571ef66bf66b49ea0b3f3666.1693119612.git.adam.faiz@disroot.org>
In-Reply-To: <98ebef1cd99f84a70b5e16ed9dd6e772c2c61f74.1693119612.git.adam.faiz@disroot.org>
References: <98ebef1cd99f84a70b5e16ed9dd6e772c2c61f74.1693119612.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sat, 22 Jul 2023 15:38:48 +0800
Subject: [PATCH v4 2/2] gnu: Add openquest.
* gnu/packages/games.scm (openquest): New variable.
---
gnu/packages/games.scm | 86 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 86 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index e594eb701c..777ab73789 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5099,6 +5099,92 @@ (define openrct2-objects
"openrct2-objects is a set of objects for OpenRCT2.")
(license license:gpl3+)))
+(define-public openquest
+ (package
+ (name "openquest")
+ (version "0.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/AlbanBedel/scummc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yyq05kfmvgx5aa68kg1l5a4lpsky7hzxxcdvv2xbgf0jljdcl3k"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "configure"
+ (("\\|alpha" all)
+ (string-append all "|arm|aarch64|powerpc64le")))
+ (substitute* "examples/example.mak"
+ (("scost.*\n$") "scost\n")
+ (("bmp \\$\\(.*\n$") "bmp\n")
+ (("/%.scc.*\n$") "/%.scc\n")
+ (("voc \\$\\(.*\n$") "voc\n"))
+ (substitute* "Makefile.target"
+ (("distrib-data:.*\n") "distrib-data:\n")
+ (("cp.*/bin" all)
+ (string-append all " || true")))))))
+ (build-system gnu-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments scummc)
+ ((#:make-flags _)
+ #~(list "SCC=scc"
+ "SLD=sld"
+ "COST=cost"
+ "CHAR=char"
+ "SOUN=soun"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (replace 'build
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (with-directory-excursion "examples/openquest"
+ (apply invoke "make" "tentacle" make-flags))))
+ (add-after 'install 'install-executable
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Create standalone executable.
+ (let* ((bash (search-input-file inputs "/bin/bash"))
+ (share (string-append #$output "/examples/openquest"))
+ (scummvm (search-input-file inputs "/bin/scummvm"))
+ (bin (string-append #$output "/bin"))
+ (executable (string-append bin "/openquest")))
+ (mkdir-p bin)
+ (with-output-to-file executable
+ (lambda ()
+ (format #t "#!~a~%" bash)
+ (format #t
+ "exec ~a --path=~a tentacle~%"
+ scummvm share)))
+ (chmod executable #o755))))
+ (add-after 'install-executable 'install-desktop-file
+ (lambda _
+ ;; Create desktop file. There is no official icon,
+ ;; but the main character of the game is a good choice.
+ (let* ((apps (string-append #$output "/share/applications"))
+ (share (string-append #$output "/examples/openquest")))
+ (mkdir-p apps)
+ (make-desktop-entry-file
+ (string-append apps "/openquest.desktop")
+ #:name "OpenQuest"
+ #:generic-name "OpenQuest"
+ #:exec (string-append #$output "/bin/openquest")
+ #:icon (string-append share "/graphics/zob/frames/stand_S.bmp")
+ #:categories '("AdventureGame" "Game" "RolePlaying")
+ #:keywords '("game" "adventure" "roleplaying" "2D" "sci-fi")
+ #:comment '((#f "Simple 2D point and click adventure game"))))))))))
+ (inputs
+ (list bash scummvm))
+ (native-inputs
+ (modify-inputs (package-native-inputs scummc)
+ (prepend scummc)))
+ (home-page "https://www.scummvm.org")
+ (synopsis "Simple 2D point and click adventure game")
+ (description "OpenQuest is a two room adventure game
+that follows two aliens who come to Earth in search of a stolen artifact.")
+ (license license:gpl2+)))
+
(define-public openrct2
(package
(name "openrct2")
--
2.41.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* bug#64787: [PATCH 0/2] gnu: Add openquest.
2023-07-22 8:22 [bug#64787] [PATCH 0/2] gnu: Add openquest Adam Faiz via Guix-patches via
` (6 preceding siblings ...)
2023-08-27 7:03 ` [bug#64787] [PATCH v4 2/2] gnu: Add openquest Adam Faiz via Guix-patches via
@ 2023-09-02 5:14 ` Liliana Marie Prikler
7 siblings, 0 replies; 17+ messages in thread
From: Liliana Marie Prikler @ 2023-09-02 5:14 UTC (permalink / raw)
To: Adam Faiz, 64787-done; +Cc: iyzsong
Am Samstag, dem 22.07.2023 um 16:22 +0800 schrieb Adam Faiz:
> This patch series adds OpenQuest, a ScummVM game.
Pushed, finally.
^ permalink raw reply [flat|nested] 17+ messages in thread