unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
@ 2021-04-16 11:05 Leo Prikler
  2021-04-16 11:07 ` [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
                   ` (2 more replies)
  0 siblings, 3 replies; 19+ messages in thread
From: Leo Prikler @ 2021-04-16 11:05 UTC (permalink / raw)
  To: 47824

Hi Guix,

the spring 2021 Lisp Game Jam is here, which hopefully results in some
more free software games being written.  I won't promote it much further,
since the site itself rather talks about "open source" games -- which, as
we all know, are not always free -- but I hope this patch set helps some
of you write a truly free game in the coming ten days.

Regards,
Leo

Leo Prikler (3):
  gnu: guile-sdl2: Update to 0.6.0.
  gnu: guile-chickadee: Update to 0.7.0.
  gnu: tsukundere: Update to 0.3.0.

 gnu/packages/game-development.scm | 49 +++++++++++++++++++------------
 gnu/packages/sdl.scm              |  4 +--
 2 files changed, 32 insertions(+), 21 deletions(-)

--
2.31.1




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

* [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0.
  2021-04-16 11:05 [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Leo Prikler
@ 2021-04-16 11:07 ` Leo Prikler
  2021-04-16 11:07   ` [bug#47824] [PATCH 2/3] gnu: guile-chickadee: Update to 0.7.0 Leo Prikler
  2021-04-16 11:07   ` [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
  2021-04-19  8:17 ` [bug#47824] [PATCH v2 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
  2021-05-15 18:32 ` [bug#47824] [PATCH] gnu: tsukundere: Update to 0.3.0 Leo Prikler
  2 siblings, 2 replies; 19+ messages in thread
From: Leo Prikler @ 2021-04-16 11:07 UTC (permalink / raw)
  To: 47824

* gnu/packages/sdl.scm (guile-sdl2): Update to 0.6.0.
---
 gnu/packages/sdl.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm
index 8db731bbc4..128bd95af8 100644
--- a/gnu/packages/sdl.scm
+++ b/gnu/packages/sdl.scm
@@ -620,14 +620,14 @@ sound and device input (keyboards, joysticks, mice, etc.).")
 (define-public guile-sdl2
   (package
     (name "guile-sdl2")
-    (version "0.5.0")
+    (version "0.6.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://files.dthompson.us/guile-sdl2/"
                                   "guile-sdl2-" version ".tar.gz"))
               (sha256
                (base32
-                "118x0cg7fzbsyrfhy5f9ab7dqp9czgia0ycgzp6sn3nlsdrcnr4m"))))
+                "06vrknn4iz0ag932rb4almyhi9cvdkn081shvsi0h4skd6ry8bdl"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags '("GUILE_AUTO_COMPILE=0")))
-- 
2.31.1





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

* [bug#47824] [PATCH 2/3] gnu: guile-chickadee: Update to 0.7.0.
  2021-04-16 11:07 ` [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
@ 2021-04-16 11:07   ` Leo Prikler
  2021-04-16 11:07   ` [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
  1 sibling, 0 replies; 19+ messages in thread
From: Leo Prikler @ 2021-04-16 11:07 UTC (permalink / raw)
  To: 47824

* gnu/packages/game-development.scm (guile-chickadee): Update to 0.7.0.
---
 gnu/packages/game-development.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 679da99e63..0d4855d275 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1856,14 +1856,14 @@ a 2D editor view.")
 (define-public guile-chickadee
   (package
     (name "guile-chickadee")
-    (version "0.6.0")
+    (version "0.7.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://files.dthompson.us/chickadee/"
                                   "chickadee-" version ".tar.gz"))
               (sha256
                (base32
-                "1jv4jkc35b7rizz8iflh74hhk9qy665isn1xa6gqz0qp9grwb019"))))
+                "199y4kc28va6klfs19h998sfh7vx9spnrvjw7p92i47q5a7jdcp6"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags '("GUILE_AUTO_COMPILE=0")))
-- 
2.31.1





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

* [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0.
  2021-04-16 11:07 ` [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
  2021-04-16 11:07   ` [bug#47824] [PATCH 2/3] gnu: guile-chickadee: Update to 0.7.0 Leo Prikler
@ 2021-04-16 11:07   ` Leo Prikler
  2021-04-19  7:56     ` Efraim Flashner
  1 sibling, 1 reply; 19+ messages in thread
From: Leo Prikler @ 2021-04-16 11:07 UTC (permalink / raw)
  To: 47824

* gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
[patch-command]: Patch path to guile.  Construct load paths directly from
inputs.
[propagated-inputs]: Remove.
[inputs]: Add guile (as guile-runtime) and guile-sdl2.
---
 gnu/packages/game-development.scm | 45 +++++++++++++++++++------------
 1 file changed, 28 insertions(+), 17 deletions(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 0d4855d275..98ef88971a 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -493,7 +493,7 @@ clone.")
 (define-public tsukundere
   (package
     (name "tsukundere")
-    (version "0.2.3")
+    (version "0.3.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -502,10 +502,11 @@ clone.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "05ckds2df810441wfavllx9lsw5jsc9h3nb7m31df01nsj56azdw"))))
+                "06jiaylbnx8khicsaq2gwnd8wspjhjymbb5z6x5445krklk0jx18"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:modules (((guix build guile-build-system)
+     `(#:modules ((srfi srfi-1)
+                  ((guix build guile-build-system)
                    #:select (target-guile-effective-version))
                   ,@%gnu-build-system-modules)
        #:imported-modules ((guix build guile-build-system)
@@ -513,22 +514,31 @@ clone.")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'patch-command
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (version (target-guile-effective-version))
-                    (scm (string-append out "/share/guile/site/"
-                                        version))
-                    (go (string-append out "/lib/guile/"
-                                       version "/site-ccache")))
-
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((version (target-guile-effective-version))
+                    (scm (lambda (in)
+                           (string-append in "/share/guile/site/"
+                                          version)))
+                    (go (lambda (in)
+                          (string-append in "/lib/guile/" version
+                                         "/site-ccache")))
+                    (pkgs
+                     (cons
+                      (assoc-ref outputs "out")
+                      (filter-map
+                       (lambda (input)
+                         (and (string-prefix? "guile-" (car input)) (cdr input)))
+                       inputs))))
                (substitute* "bin/tsukundere"
-                 (("exec guile .*" all)
+                 (("exec guile (.*)" _ args)
                   (string-append
                    (format #f "export GUILE_LOAD_PATH=~@?~%"
-                           "\"~a:~a\"" scm (getenv "GUILE_LOAD_PATH"))
+                           "\"~{~a~^:~}\"" (map scm pkgs))
                    (format #f "export GUILE_LOAD_COMPILED_PATH=~@?~%"
-                           "\"~a:~a\"" go (getenv "GUILE_LOAD_COMPILED_PATH"))
-                   all)))
+                           "\"~{~a~^:~}\"" (map go pkgs))
+                   "exec "
+                   (assoc-ref inputs "guile-runtime")
+                   "/bin/guile " args)))
                #t))))))
     (native-inputs
      `(("autoconf" ,autoconf)
@@ -536,8 +546,9 @@ clone.")
        ("guile" ,guile-3.0)
        ("pkg-config" ,pkg-config)
        ("texinfo" ,texinfo)))
-    (propagated-inputs
-     `(("guile-sdl2" ,guile3.0-sdl2)))
+    (inputs
+     `(("guile-sdl2" ,guile3.0-sdl2)
+       ("guile-runtime" ,guile-3.0)))
     (home-page "https://gitlab.com/leoprikler/tsukundere")
     (synopsis "Visual novel engine")
     (description "Tsukundere is a game engine geared heavily towards the
-- 
2.31.1





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

* [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0.
  2021-04-16 11:07   ` [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
@ 2021-04-19  7:56     ` Efraim Flashner
  2021-04-19  8:24       ` Leo Prikler
  0 siblings, 1 reply; 19+ messages in thread
From: Efraim Flashner @ 2021-04-19  7:56 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 47824

[-- Attachment #1: Type: text/plain, Size: 5374 bytes --]

On Fri, Apr 16, 2021 at 01:07:23PM +0200, Leo Prikler wrote:
> * gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
> [patch-command]: Patch path to guile.  Construct load paths directly from
> inputs.
> [propagated-inputs]: Remove.
> [inputs]: Add guile (as guile-runtime) and guile-sdl2.
> ---
>  gnu/packages/game-development.scm | 45 +++++++++++++++++++------------
>  1 file changed, 28 insertions(+), 17 deletions(-)
> 
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
> index 0d4855d275..98ef88971a 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -493,7 +493,7 @@ clone.")
>  (define-public tsukundere
>    (package
>      (name "tsukundere")
> -    (version "0.2.3")
> +    (version "0.3.0")
>      (source (origin
>                (method git-fetch)
>                (uri (git-reference
> @@ -502,10 +502,11 @@ clone.")
>                (file-name (git-file-name name version))
>                (sha256
>                 (base32
> -                "05ckds2df810441wfavllx9lsw5jsc9h3nb7m31df01nsj56azdw"))))
> +                "06jiaylbnx8khicsaq2gwnd8wspjhjymbb5z6x5445krklk0jx18"))))
>      (build-system gnu-build-system)
>      (arguments
> -     `(#:modules (((guix build guile-build-system)
> +     `(#:modules ((srfi srfi-1)
> +                  ((guix build guile-build-system)
>                     #:select (target-guile-effective-version))
>                    ,@%gnu-build-system-modules)
>         #:imported-modules ((guix build guile-build-system)
> @@ -513,22 +514,31 @@ clone.")
>         #:phases
>         (modify-phases %standard-phases
>           (add-after 'unpack 'patch-command
> -           (lambda* (#:key outputs #:allow-other-keys)
> -             (let* ((out (assoc-ref outputs "out"))
> -                    (version (target-guile-effective-version))
> -                    (scm (string-append out "/share/guile/site/"
> -                                        version))
> -                    (go (string-append out "/lib/guile/"
> -                                       version "/site-ccache")))
> -
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let* ((version (target-guile-effective-version))

I see that the code before uses version but I wouldn't overwrite the
version variable which normally points to the package's version. I
suggest guile-version or something similar.

> +                    (scm (lambda (in)
> +                           (string-append in "/share/guile/site/"
> +                                          version)))
> +                    (go (lambda (in)

Perhaps go-cache would be more descriptive
(I see that it was also 'go' before)

> +                          (string-append in "/lib/guile/" version
> +                                         "/site-ccache")))
> +                    (pkgs
> +                     (cons
> +                      (assoc-ref outputs "out")
> +                      (filter-map
> +                       (lambda (input)
> +                         (and (string-prefix? "guile-" (car input)) (cdr input)))

I'm not in love with this, I personally find it a bit hard to parse. I'm
not really sure what the (cdr input) is there for. (without testing it
myself) I'd suggest borrowing the filter-map code from guile-studio in
(gnu packages guile-xyz) where it searches for emacs packages.

> +                       inputs))))
>                 (substitute* "bin/tsukundere"
> -                 (("exec guile .*" all)
> +                 (("exec guile (.*)" _ args)
>                    (string-append
>                     (format #f "export GUILE_LOAD_PATH=~@?~%"
> -                           "\"~a:~a\"" scm (getenv "GUILE_LOAD_PATH"))
> +                           "\"~{~a~^:~}\"" (map scm pkgs))
>                     (format #f "export GUILE_LOAD_COMPILED_PATH=~@?~%"
> -                           "\"~a:~a\"" go (getenv "GUILE_LOAD_COMPILED_PATH"))
> -                   all)))
> +                           "\"~{~a~^:~}\"" (map go pkgs))
> +                   "exec "
> +                   (assoc-ref inputs "guile-runtime")
> +                   "/bin/guile " args)))
>                 #t))))))

(Again without really testing it) Perhaps it would be better to remove
this whole phase and to replace it with wrap-script.

Actually, forget all of that. There's a comment in (guix build utils)
saying that Guile scripts are not supported.

>      (native-inputs
>       `(("autoconf" ,autoconf)
> @@ -536,8 +546,9 @@ clone.")
>         ("guile" ,guile-3.0)
>         ("pkg-config" ,pkg-config)
>         ("texinfo" ,texinfo)))
> -    (propagated-inputs
> -     `(("guile-sdl2" ,guile3.0-sdl2)))
> +    (inputs
> +     `(("guile-sdl2" ,guile3.0-sdl2)
> +       ("guile-runtime" ,guile-3.0)))
>      (home-page "https://gitlab.com/leoprikler/tsukundere")
>      (synopsis "Visual novel engine")
>      (description "Tsukundere is a game engine geared heavily towards the
> -- 
> 2.31.1
> 
> 
> 
> 

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* [bug#47824] [PATCH v2 1/3] gnu: guile-sdl2: Update to 0.6.0.
  2021-04-16 11:05 [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Leo Prikler
  2021-04-16 11:07 ` [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
@ 2021-04-19  8:17 ` Leo Prikler
  2021-04-19  8:17   ` [bug#47824] [PATCH v2 2/3] gnu: guile-chickadee: Update to 0.7.0 Leo Prikler
  2021-04-19  8:17   ` [bug#47824] [PATCH v2 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
  2021-05-15 18:32 ` [bug#47824] [PATCH] gnu: tsukundere: Update to 0.3.0 Leo Prikler
  2 siblings, 2 replies; 19+ messages in thread
From: Leo Prikler @ 2021-04-19  8:17 UTC (permalink / raw)
  To: 47824; +Cc: efraim

* gnu/packages/sdl.scm (guile-sdl2): Update to 0.6.0.
---
 gnu/packages/sdl.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm
index 8db731bbc4..128bd95af8 100644
--- a/gnu/packages/sdl.scm
+++ b/gnu/packages/sdl.scm
@@ -620,14 +620,14 @@ sound and device input (keyboards, joysticks, mice, etc.).")
 (define-public guile-sdl2
   (package
     (name "guile-sdl2")
-    (version "0.5.0")
+    (version "0.6.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://files.dthompson.us/guile-sdl2/"
                                   "guile-sdl2-" version ".tar.gz"))
               (sha256
                (base32
-                "118x0cg7fzbsyrfhy5f9ab7dqp9czgia0ycgzp6sn3nlsdrcnr4m"))))
+                "06vrknn4iz0ag932rb4almyhi9cvdkn081shvsi0h4skd6ry8bdl"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags '("GUILE_AUTO_COMPILE=0")))
-- 
2.31.1





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

* [bug#47824] [PATCH v2 2/3] gnu: guile-chickadee: Update to 0.7.0.
  2021-04-19  8:17 ` [bug#47824] [PATCH v2 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
@ 2021-04-19  8:17   ` Leo Prikler
  2021-04-19  8:17   ` [bug#47824] [PATCH v2 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
  1 sibling, 0 replies; 19+ messages in thread
From: Leo Prikler @ 2021-04-19  8:17 UTC (permalink / raw)
  To: 47824; +Cc: efraim

* gnu/packages/game-development.scm (guile-chickadee): Update to 0.7.0.
---
 gnu/packages/game-development.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 679da99e63..0d4855d275 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1856,14 +1856,14 @@ a 2D editor view.")
 (define-public guile-chickadee
   (package
     (name "guile-chickadee")
-    (version "0.6.0")
+    (version "0.7.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://files.dthompson.us/chickadee/"
                                   "chickadee-" version ".tar.gz"))
               (sha256
                (base32
-                "1jv4jkc35b7rizz8iflh74hhk9qy665isn1xa6gqz0qp9grwb019"))))
+                "199y4kc28va6klfs19h998sfh7vx9spnrvjw7p92i47q5a7jdcp6"))))
     (build-system gnu-build-system)
     (arguments
      '(#:make-flags '("GUILE_AUTO_COMPILE=0")))
-- 
2.31.1





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

* [bug#47824] [PATCH v2 3/3] gnu: tsukundere: Update to 0.3.0.
  2021-04-19  8:17 ` [bug#47824] [PATCH v2 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
  2021-04-19  8:17   ` [bug#47824] [PATCH v2 2/3] gnu: guile-chickadee: Update to 0.7.0 Leo Prikler
@ 2021-04-19  8:17   ` Leo Prikler
  2021-05-05 14:16     ` [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Ludovic Courtès
  1 sibling, 1 reply; 19+ messages in thread
From: Leo Prikler @ 2021-04-19  8:17 UTC (permalink / raw)
  To: 47824; +Cc: efraim

* gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
[patch-command]: Patch path to guile.  Construct load paths directly from
inputs.
[propagated-inputs]: Remove.
[inputs]: Add guile (as guile-runtime) and guile-sdl2.
---
 gnu/packages/game-development.scm | 51 +++++++++++++++++++------------
 1 file changed, 32 insertions(+), 19 deletions(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 0d4855d275..ccf1fbdc5d 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -493,7 +493,7 @@ clone.")
 (define-public tsukundere
   (package
     (name "tsukundere")
-    (version "0.2.3")
+    (version "0.3.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -502,10 +502,12 @@ clone.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "05ckds2df810441wfavllx9lsw5jsc9h3nb7m31df01nsj56azdw"))))
+                "06jiaylbnx8khicsaq2gwnd8wspjhjymbb5z6x5445krklk0jx18"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:modules (((guix build guile-build-system)
+     `(#:modules ((ice-9 match)
+                  (srfi srfi-1)
+                  ((guix build guile-build-system)
                    #:select (target-guile-effective-version))
                   ,@%gnu-build-system-modules)
        #:imported-modules ((guix build guile-build-system)
@@ -513,22 +515,32 @@ clone.")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'patch-command
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (version (target-guile-effective-version))
-                    (scm (string-append out "/share/guile/site/"
-                                        version))
-                    (go (string-append out "/lib/guile/"
-                                       version "/site-ccache")))
-
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((scm (lambda (in)
+                           (string-append in "/share/guile/site/"
+                                          (target-guile-effective-version))))
+                    (ccache (lambda (in)
+                              (string-append in "/lib/guile/"
+                                             (target-guile-effective-version)
+                                             "/site-ccache")))
+                    (pkgs
+                     (cons
+                      (assoc-ref outputs "out")
+                      (filter-map
+                       (match-lambda
+                         ((label . pkg)
+                          (and (string-prefix? "guile-" label) pkg)))
+                       inputs))))
                (substitute* "bin/tsukundere"
-                 (("exec guile .*" all)
+                 (("exec guile (.*)" _ args)
                   (string-append
-                   (format #f "export GUILE_LOAD_PATH=~@?~%"
-                           "\"~a:~a\"" scm (getenv "GUILE_LOAD_PATH"))
-                   (format #f "export GUILE_LOAD_COMPILED_PATH=~@?~%"
-                           "\"~a:~a\"" go (getenv "GUILE_LOAD_COMPILED_PATH"))
-                   all)))
+                   (format #f "export GUILE_LOAD_PATH=\"~@?\"~%"
+                           "\"~{~a~^:~}\"" (map scm pkgs))
+                   (format #f "export GUILE_LOAD_COMPILED_PATH=\"~@?\"~%"
+                           "\"~{~a~^:~}\"" (map ccache pkgs))
+                   "exec "
+                   (assoc-ref inputs "guile-runtime")
+                   "/bin/guile " args)))
                #t))))))
     (native-inputs
      `(("autoconf" ,autoconf)
@@ -536,8 +548,9 @@ clone.")
        ("guile" ,guile-3.0)
        ("pkg-config" ,pkg-config)
        ("texinfo" ,texinfo)))
-    (propagated-inputs
-     `(("guile-sdl2" ,guile3.0-sdl2)))
+    (inputs
+     `(("guile-sdl2" ,guile3.0-sdl2)
+       ("guile-runtime" ,guile-3.0)))
     (home-page "https://gitlab.com/leoprikler/tsukundere")
     (synopsis "Visual novel engine")
     (description "Tsukundere is a game engine geared heavily towards the
-- 
2.31.1





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

* [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0.
  2021-04-19  7:56     ` Efraim Flashner
@ 2021-04-19  8:24       ` Leo Prikler
  0 siblings, 0 replies; 19+ messages in thread
From: Leo Prikler @ 2021-04-19  8:24 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: 47824

Am Montag, den 19.04.2021, 10:56 +0300 schrieb Efraim Flashner:
> On Fri, Apr 16, 2021 at 01:07:23PM +0200, Leo Prikler wrote:
> > * gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
> > [patch-command]: Patch path to guile.  Construct load paths
> > directly from
> > inputs.
> > [propagated-inputs]: Remove.
> > [inputs]: Add guile (as guile-runtime) and guile-sdl2.
> > ---
> >  gnu/packages/game-development.scm | 45 +++++++++++++++++++------
> > ------
> >  1 file changed, 28 insertions(+), 17 deletions(-)
> > 
> > diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> > development.scm
> > index 0d4855d275..98ef88971a 100644
> > --- a/gnu/packages/game-development.scm
> > +++ b/gnu/packages/game-development.scm
> > @@ -493,7 +493,7 @@ clone.")
> >  (define-public tsukundere
> >    (package
> >      (name "tsukundere")
> > -    (version "0.2.3")
> > +    (version "0.3.0")
> >      (source (origin
> >                (method git-fetch)
> >                (uri (git-reference
> > @@ -502,10 +502,11 @@ clone.")
> >                (file-name (git-file-name name version))
> >                (sha256
> >                 (base32
> > -                "05ckds2df810441wfavllx9lsw5jsc9h3nb7m31df01nsj56a
> > zdw"))))
> > +                "06jiaylbnx8khicsaq2gwnd8wspjhjymbb5z6x5445krklk0j
> > x18"))))
> >      (build-system gnu-build-system)
> >      (arguments
> > -     `(#:modules (((guix build guile-build-system)
> > +     `(#:modules ((srfi srfi-1)
> > +                  ((guix build guile-build-system)
> >                     #:select (target-guile-effective-version))
> >                    ,@%gnu-build-system-modules)
> >         #:imported-modules ((guix build guile-build-system)
> > @@ -513,22 +514,31 @@ clone.")
> >         #:phases
> >         (modify-phases %standard-phases
> >           (add-after 'unpack 'patch-command
> > -           (lambda* (#:key outputs #:allow-other-keys)
> > -             (let* ((out (assoc-ref outputs "out"))
> > -                    (version (target-guile-effective-version))
> > -                    (scm (string-append out "/share/guile/site/"
> > -                                        version))
> > -                    (go (string-append out "/lib/guile/"
> > -                                       version "/site-ccache")))
> > -
> > +           (lambda* (#:key inputs outputs #:allow-other-keys)
> > +             (let* ((version (target-guile-effective-version))
> 
> I see that the code before uses version but I wouldn't overwrite the
> version variable which normally points to the package's version. I
> suggest guile-version or something similar.
Good point.  Since it's only used to construct scm and go (now ccache),
I've decided to inline (target-guile-effective-version).

> > +                    (scm (lambda (in)
> > +                           (string-append in "/share/guile/site/"
> > +                                          version)))
> > +                    (go (lambda (in)
> 
> Perhaps go-cache would be more descriptive
> (I see that it was also 'go' before)
Decided on ccache, YMMV.

> > +                          (string-append in "/lib/guile/" version
> > +                                         "/site-ccache")))
> > +                    (pkgs
> > +                     (cons
> > +                      (assoc-ref outputs "out")
> > +                      (filter-map
> > +                       (lambda (input)
> > +                         (and (string-prefix? "guile-" (car
> > input)) (cdr input)))
> 
> I'm not in love with this, I personally find it a bit hard to parse.
> I'm
> not really sure what the (cdr input) is there for. (without testing
> it
> myself) I'd suggest borrowing the filter-map code from guile-studio
> in
> (gnu packages guile-xyz) where it searches for emacs packages.
I wanted to avoid needing ice-9 match, but you're right, that looks
better.

> > +                       inputs))))
> >                 (substitute* "bin/tsukundere"
> > -                 (("exec guile .*" all)
> > +                 (("exec guile (.*)" _ args)
> >                    (string-append
> >                     (format #f "export GUILE_LOAD_PATH=~@?~%"
> > -                           "\"~a:~a\"" scm (getenv
> > "GUILE_LOAD_PATH"))
> > +                           "\"~{~a~^:~}\"" (map scm pkgs))
> >                     (format #f "export
> > GUILE_LOAD_COMPILED_PATH=~@?~%"
> > -                           "\"~a:~a\"" go (getenv
> > "GUILE_LOAD_COMPILED_PATH"))
> > -                   all)))
> > +                           "\"~{~a~^:~}\"" (map go pkgs))
> > +                   "exec "
> > +                   (assoc-ref inputs "guile-runtime")
> > +                   "/bin/guile " args)))
> >                 #t))))))
> 
> (Again without really testing it) Perhaps it would be better to
> remove
> this whole phase and to replace it with wrap-script.
> 
> Actually, forget all of that. There's a comment in (guix build utils)
> saying that Guile scripts are not supported.
That's why I'm implementing my custom wrapper here.  I'm not sure if
this is a general solution for guile scripts, but for those, that use
the "exec guile" trick, the phase I wrote should act similar to wrap-
program without needing to construct a wrapper script.

Regards,
Leo





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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-04-19  8:17   ` [bug#47824] [PATCH v2 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
@ 2021-05-05 14:16     ` Ludovic Courtès
  2021-05-05 15:00       ` Leo Prikler
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2021-05-05 14:16 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 47824, efraim

Hi Leo,

On a cursory look, all three patches LGTM.

One nit:

> +                   "exec "
> +                   (assoc-ref inputs "guile-runtime")
> +                   "/bin/guile " args)))

[...]

>         ("guile" ,guile-3.0)
>         ("pkg-config" ,pkg-config)
>         ("texinfo" ,texinfo)))
> -    (propagated-inputs
> -     `(("guile-sdl2" ,guile3.0-sdl2)))
> +    (inputs
> +     `(("guile-sdl2" ,guile3.0-sdl2)
> +       ("guile-runtime" ,guile-3.0)))

I think it’s best to not play trick with labels, and to always use the
package name as the label (to facilitate migration on the day where we
get rid of labels, who knows…).

A common pattern for the case above is to provide “guile” both as native
input and input, and to write:

  (assoc-ref (or native-inputs inputs) "guile")

Thanks, and congrats to the Lisp Game Jam participants!

Ludo’.




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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-05-05 14:16     ` [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Ludovic Courtès
@ 2021-05-05 15:00       ` Leo Prikler
  2021-05-06 10:52         ` Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Leo Prikler @ 2021-05-05 15:00 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 47824, efraim

Hi Ludo,

Am Mittwoch, den 05.05.2021, 16:16 +0200 schrieb Ludovic Courtès:
> Hi Leo,
> 
> On a cursory look, all three patches LGTM.
> 
> One nit:
> 
> > +                   "exec "
> > +                   (assoc-ref inputs "guile-runtime")
> > +                   "/bin/guile " args)))
> 
> [...]
> 
> >         ("guile" ,guile-3.0)
> >         ("pkg-config" ,pkg-config)
> >         ("texinfo" ,texinfo)))
> > -    (propagated-inputs
> > -     `(("guile-sdl2" ,guile3.0-sdl2)))
> > +    (inputs
> > +     `(("guile-sdl2" ,guile3.0-sdl2)
> > +       ("guile-runtime" ,guile-3.0)))
> 
> I think it’s best to not play trick with labels, and to always use
> the
> package name as the label (to facilitate migration on the day where
> we
> get rid of labels, who knows…).
> 
> A common pattern for the case above is to provide “guile” both as
> native
> input and input, and to write:
> 
>   (assoc-ref (or native-inputs inputs) "guile")
What I'm doing here is the exact opposite.  I don't want the
omnipresent native-input guile to shadow the guile I use as input, so I
assign a "unique" label to the input guile to refer to it.  As a neat
side effect, this label allows me to construct GUILE_LOAD_PATH more
easily.

We already have a number of issues related to the "native-input as
input" thing, "which" returning the wrong binary, and so on, and I
didn't want to add another one on top.  The code I wrote certainly
looks and feels ugly, but I don't see any other way with what Guix
currently provides.  Maybe for the next c-u merge we can do proper
separation of inputs and native-inputs, hopefully using that to clean
up some of our recipes.  

Regards,
Leo





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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-05-05 15:00       ` Leo Prikler
@ 2021-05-06 10:52         ` Ludovic Courtès
  2021-05-06 11:03           ` Leo Prikler
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2021-05-06 10:52 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 47824, efraim

Hi,

Leo Prikler <leo.prikler@student.tugraz.at> skribis:

> Am Mittwoch, den 05.05.2021, 16:16 +0200 schrieb Ludovic Courtès:
>> Hi Leo,
>> 
>> On a cursory look, all three patches LGTM.
>> 
>> One nit:
>> 
>> > +                   "exec "
>> > +                   (assoc-ref inputs "guile-runtime")
>> > +                   "/bin/guile " args)))
>> 
>> [...]
>> 
>> >         ("guile" ,guile-3.0)
>> >         ("pkg-config" ,pkg-config)
>> >         ("texinfo" ,texinfo)))
>> > -    (propagated-inputs
>> > -     `(("guile-sdl2" ,guile3.0-sdl2)))
>> > +    (inputs
>> > +     `(("guile-sdl2" ,guile3.0-sdl2)
>> > +       ("guile-runtime" ,guile-3.0)))
>> 
>> I think it’s best to not play trick with labels, and to always use
>> the
>> package name as the label (to facilitate migration on the day where
>> we
>> get rid of labels, who knows…).
>> 
>> A common pattern for the case above is to provide “guile” both as
>> native
>> input and input, and to write:
>> 
>>   (assoc-ref (or native-inputs inputs) "guile")
> What I'm doing here is the exact opposite.  I don't want the
> omnipresent native-input guile to shadow the guile I use as input,

In that case, you can unconditionally do:

  (assoc-ref inputs "guile")

Unless I’m mistaken, it won’t be shadowed by the native input “guile”
when cross-compiling.

Or am I missing something?

Ludo’.




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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-05-06 10:52         ` Ludovic Courtès
@ 2021-05-06 11:03           ` Leo Prikler
  2021-05-15  8:35             ` Leo Prikler
  0 siblings, 1 reply; 19+ messages in thread
From: Leo Prikler @ 2021-05-06 11:03 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 47824, efraim

Am Donnerstag, den 06.05.2021, 12:52 +0200 schrieb Ludovic Courtès:
> Hi,
> 
> Leo Prikler <leo.prikler@student.tugraz.at> skribis:
> 
> > Am Mittwoch, den 05.05.2021, 16:16 +0200 schrieb Ludovic Courtès:
> > > Hi Leo,
> > > 
> > > On a cursory look, all three patches LGTM.
> > > 
> > > One nit:
> > > 
> > > > +                   "exec "
> > > > +                   (assoc-ref inputs "guile-runtime")
> > > > +                   "/bin/guile " args)))
> > > 
> > > [...]
> > > 
> > > >         ("guile" ,guile-3.0)
> > > >         ("pkg-config" ,pkg-config)
> > > >         ("texinfo" ,texinfo)))
> > > > -    (propagated-inputs
> > > > -     `(("guile-sdl2" ,guile3.0-sdl2)))
> > > > +    (inputs
> > > > +     `(("guile-sdl2" ,guile3.0-sdl2)
> > > > +       ("guile-runtime" ,guile-3.0)))
> > > 
> > > I think it’s best to not play trick with labels, and to always
> > > use
> > > the
> > > package name as the label (to facilitate migration on the day
> > > where
> > > we
> > > get rid of labels, who knows…).
> > > 
> > > A common pattern for the case above is to provide “guile” both as
> > > native
> > > input and input, and to write:
> > > 
> > >   (assoc-ref (or native-inputs inputs) "guile")
> > What I'm doing here is the exact opposite.  I don't want the
> > omnipresent native-input guile to shadow the guile I use as input,
> 
> In that case, you can unconditionally do:
> 
>   (assoc-ref inputs "guile")
> 
> Unless I’m mistaken, it won’t be shadowed by the native input “guile”
> when cross-compiling.
> 
> Or am I missing something?
Perhaps it's an implementation detail, that when performing native
builds, inputs are merged as (append inputs native-inputs), but they
could as well be (append native-inputs inputs).  I'd have to check, and
I'm not sure whether I want to rely on that detail. 

Regards,
Leo





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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-05-06 11:03           ` Leo Prikler
@ 2021-05-15  8:35             ` Leo Prikler
  2021-05-15 13:45               ` Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Leo Prikler @ 2021-05-15  8:35 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 47824, efraim

Ping.
For the record, I've pushed guile-sdl and chickadee already, any hints
w.r.t. the problem in Tsukundere?

Am Donnerstag, den 06.05.2021, 13:03 +0200 schrieb Leo Prikler:
> Am Donnerstag, den 06.05.2021, 12:52 +0200 schrieb Ludovic Courtès:
> > Hi,
> > 
> > Leo Prikler <leo.prikler@student.tugraz.at> skribis:
> > 
> > > Am Mittwoch, den 05.05.2021, 16:16 +0200 schrieb Ludovic Courtès:
> > > > Hi Leo,
> > > > 
> > > > On a cursory look, all three patches LGTM.
> > > > 
> > > > One nit:
> > > > 
> > > > > +                   "exec "
> > > > > +                   (assoc-ref inputs "guile-runtime")
> > > > > +                   "/bin/guile " args)))
> > > > 
> > > > [...]
> > > > 
> > > > >         ("guile" ,guile-3.0)
> > > > >         ("pkg-config" ,pkg-config)
> > > > >         ("texinfo" ,texinfo)))
> > > > > -    (propagated-inputs
> > > > > -     `(("guile-sdl2" ,guile3.0-sdl2)))
> > > > > +    (inputs
> > > > > +     `(("guile-sdl2" ,guile3.0-sdl2)
> > > > > +       ("guile-runtime" ,guile-3.0)))
> > > > 
> > > > I think it’s best to not play trick with labels, and to always
> > > > use
> > > > the
> > > > package name as the label (to facilitate migration on the day
> > > > where
> > > > we
> > > > get rid of labels, who knows…).
> > > > 
> > > > A common pattern for the case above is to provide “guile” both
> > > > as
> > > > native
> > > > input and input, and to write:
> > > > 
> > > >   (assoc-ref (or native-inputs inputs) "guile")
> > > What I'm doing here is the exact opposite.  I don't want the
> > > omnipresent native-input guile to shadow the guile I use as
> > > input,
> > 
> > In that case, you can unconditionally do:
> > 
> >   (assoc-ref inputs "guile")
> > 
> > Unless I’m mistaken, it won’t be shadowed by the native input
> > “guile”
> > when cross-compiling.
> > 
> > Or am I missing something?
> Perhaps it's an implementation detail, that when performing native
> builds, inputs are merged as (append inputs native-inputs), but they
> could as well be (append native-inputs inputs).  I'd have to check,
> and
> I'm not sure whether I want to rely on that detail. 
> 
> Regards,
> Leo





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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-05-15  8:35             ` Leo Prikler
@ 2021-05-15 13:45               ` Ludovic Courtès
  2021-05-15 14:02                 ` Leo Prikler
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2021-05-15 13:45 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 47824, efraim

Hi Leo,

Leo Prikler <leo.prikler@student.tugraz.at> skribis:

> For the record, I've pushed guile-sdl and chickadee already, any hints
> w.r.t. the problem in Tsukundere?

[...]

>> > > > I think it’s best to not play trick with labels, and to always
>> > > > use
>> > > > the
>> > > > package name as the label (to facilitate migration on the day
>> > > > where
>> > > > we
>> > > > get rid of labels, who knows…).
>> > > > 
>> > > > A common pattern for the case above is to provide “guile” both
>> > > > as
>> > > > native
>> > > > input and input, and to write:
>> > > > 
>> > > >   (assoc-ref (or native-inputs inputs) "guile")
>> > > What I'm doing here is the exact opposite.  I don't want the
>> > > omnipresent native-input guile to shadow the guile I use as
>> > > input,
>> > 
>> > In that case, you can unconditionally do:
>> > 
>> >   (assoc-ref inputs "guile")
>> > 
>> > Unless I’m mistaken, it won’t be shadowed by the native input
>> > “guile”
>> > when cross-compiling.
>> > 
>> > Or am I missing something?
>> Perhaps it's an implementation detail, that when performing native
>> builds, inputs are merged as (append inputs native-inputs), but they
>> could as well be (append native-inputs inputs).  I'd have to check,
>> and
>> I'm not sure whether I want to rely on that detail. 

I didn’t see a question mark, which is why I didn’t answer.  :-)

I fail to see why (assoc-ref inputs …) wouldn’t work.

Thanks,
Ludo’.




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

* [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ
  2021-05-15 13:45               ` Ludovic Courtès
@ 2021-05-15 14:02                 ` Leo Prikler
  0 siblings, 0 replies; 19+ messages in thread
From: Leo Prikler @ 2021-05-15 14:02 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 47824, efraim

Hi Ludo’,

Am Samstag, den 15.05.2021, 15:45 +0200 schrieb Ludovic Courtès:
> Hi Leo,
> 
> Leo Prikler <leo.prikler@student.tugraz.at> skribis:
> 
> > For the record, I've pushed guile-sdl and chickadee already, any
> > hints
> > w.r.t. the problem in Tsukundere?
> 
> [...]
> 
> > > > In that case, you can unconditionally do:
> > > > 
> > > >   (assoc-ref inputs "guile")
> > > > 
> > > > Unless I’m mistaken, it won’t be shadowed by the native input
> > > > “guile” when cross-compiling.
> > > > 
> > > > Or am I missing something?
> > > Perhaps it's an implementation detail, that when performing
> > > native
> > > builds, inputs are merged as (append inputs native-inputs), but
> > > they
> > > could as well be (append native-inputs inputs).  I'd have to
> > > check,
> > > and
> > > I'm not sure whether I want to rely on that detail. 
> 
> I didn’t see a question mark, which is why I didn’t answer.  :-)
> 
> I fail to see why (assoc-ref inputs …) wouldn’t work.
Ahh, my bad, it appears I was just confused.  If both native-inputs and
inputs refer to "the same" guile and are on the same architecture, they
should have the same hash, so it doesn't matter, which one is picked. 
I'll try to rewrite the package with that in mind.

Thanks,
Leo





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

* [bug#47824] [PATCH] gnu: tsukundere: Update to 0.3.0.
  2021-04-16 11:05 [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Leo Prikler
  2021-04-16 11:07 ` [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
  2021-04-19  8:17 ` [bug#47824] [PATCH v2 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
@ 2021-05-15 18:32 ` Leo Prikler
  2021-05-16 20:21   ` Ludovic Courtès
  2 siblings, 1 reply; 19+ messages in thread
From: Leo Prikler @ 2021-05-15 18:32 UTC (permalink / raw)
  To: 47824; +Cc: ludo

* gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
[patch-command]: Patch path to guile.  Construct load paths directly from
inputs.
[propagated-inputs]: Remove.
[inputs]: Add guile and guile-sdl2.
---
 gnu/packages/game-development.scm | 52 ++++++++++++++++++++-----------
 1 file changed, 33 insertions(+), 19 deletions(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index cee7e5dc0a..52541196b3 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -493,7 +493,7 @@ clone.")
 (define-public tsukundere
   (package
     (name "tsukundere")
-    (version "0.2.3")
+    (version "0.3.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -502,10 +502,12 @@ clone.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "05ckds2df810441wfavllx9lsw5jsc9h3nb7m31df01nsj56azdw"))))
+                "06jiaylbnx8khicsaq2gwnd8wspjhjymbb5z6x5445krklk0jx18"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:modules (((guix build guile-build-system)
+     `(#:modules ((ice-9 match)
+                  (srfi srfi-1)
+                  ((guix build guile-build-system)
                    #:select (target-guile-effective-version))
                   ,@%gnu-build-system-modules)
        #:imported-modules ((guix build guile-build-system)
@@ -513,22 +515,33 @@ clone.")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'patch-command
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (version (target-guile-effective-version))
-                    (scm (string-append out "/share/guile/site/"
-                                        version))
-                    (go (string-append out "/lib/guile/"
-                                       version "/site-ccache")))
-
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((scm (lambda (in)
+                           (string-append in "/share/guile/site/"
+                                          (target-guile-effective-version))))
+                    (ccache (lambda (in)
+                              (string-append in "/lib/guile/"
+                                             (target-guile-effective-version)
+                                             "/site-ccache")))
+                    (pkgs
+                     (cons
+                      (assoc-ref outputs "out")
+                      (filter-map
+                       (match-lambda
+                         (("guile" . pkg) pkg)
+                         ((label . pkg)
+                          (and (string-prefix? "guile-" label) pkg)))
+                       inputs))))
                (substitute* "bin/tsukundere"
-                 (("exec guile .*" all)
+                 (("exec guile (.*)" _ args)
                   (string-append
-                   (format #f "export GUILE_LOAD_PATH=~@?~%"
-                           "\"~a:~a\"" scm (getenv "GUILE_LOAD_PATH"))
-                   (format #f "export GUILE_LOAD_COMPILED_PATH=~@?~%"
-                           "\"~a:~a\"" go (getenv "GUILE_LOAD_COMPILED_PATH"))
-                   all)))
+                   (format #f "export GUILE_LOAD_PATH=\"~@?\"~%"
+                           "~{~a~^:~}" (map scm pkgs))
+                   (format #f "export GUILE_LOAD_COMPILED_PATH=\"~@?\"~%"
+                           "~{~a~^:~}" (map ccache pkgs))
+                   "exec "
+                   (assoc-ref inputs "guile")
+                   "/bin/guile " args)))
                #t))))))
     (native-inputs
      `(("autoconf" ,autoconf)
@@ -536,8 +549,9 @@ clone.")
        ("guile" ,guile-3.0)
        ("pkg-config" ,pkg-config)
        ("texinfo" ,texinfo)))
-    (propagated-inputs
-     `(("guile-sdl2" ,guile3.0-sdl2)))
+    (inputs
+     `(("guile-sdl2" ,guile3.0-sdl2)
+       ("guile" ,guile-3.0)))
     (home-page "https://gitlab.com/leoprikler/tsukundere")
     (synopsis "Visual novel engine")
     (description "Tsukundere is a game engine geared heavily towards the
-- 
2.31.1





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

* [bug#47824] [PATCH] gnu: tsukundere: Update to 0.3.0.
  2021-05-15 18:32 ` [bug#47824] [PATCH] gnu: tsukundere: Update to 0.3.0 Leo Prikler
@ 2021-05-16 20:21   ` Ludovic Courtès
  2021-05-16 22:27     ` bug#47824: " Leo Prikler
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2021-05-16 20:21 UTC (permalink / raw)
  To: Leo Prikler; +Cc: 47824

Hi Leo,

Leo Prikler <leo.prikler@student.tugraz.at> skribis:

> * gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
> [patch-command]: Patch path to guile.  Construct load paths directly from
> inputs.
> [propagated-inputs]: Remove.
> [inputs]: Add guile and guile-sdl2.

LGTM, thanks!

Ludo’.




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

* bug#47824: [PATCH] gnu: tsukundere: Update to 0.3.0.
  2021-05-16 20:21   ` Ludovic Courtès
@ 2021-05-16 22:27     ` Leo Prikler
  0 siblings, 0 replies; 19+ messages in thread
From: Leo Prikler @ 2021-05-16 22:27 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 47824-done

Am Sonntag, den 16.05.2021, 22:21 +0200 schrieb Ludovic Courtès:
> Hi Leo,
> 
> Leo Prikler <leo.prikler@student.tugraz.at> skribis:
> 
> > * gnu/packages/game-development.scm (tsukundere): Update to 0.3.0.
> > [patch-command]: Patch path to guile.  Construct load paths
> > directly from
> > inputs.
> > [propagated-inputs]: Remove.
> > [inputs]: Add guile and guile-sdl2.
> 
> LGTM, thanks!
> 
> Ludo’.
I went ahead and pushed this now.  Thank you.





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

end of thread, other threads:[~2021-05-16 22:28 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-16 11:05 [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Leo Prikler
2021-04-16 11:07 ` [bug#47824] [PATCH 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
2021-04-16 11:07   ` [bug#47824] [PATCH 2/3] gnu: guile-chickadee: Update to 0.7.0 Leo Prikler
2021-04-16 11:07   ` [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
2021-04-19  7:56     ` Efraim Flashner
2021-04-19  8:24       ` Leo Prikler
2021-04-19  8:17 ` [bug#47824] [PATCH v2 1/3] gnu: guile-sdl2: Update to 0.6.0 Leo Prikler
2021-04-19  8:17   ` [bug#47824] [PATCH v2 2/3] gnu: guile-chickadee: Update to 0.7.0 Leo Prikler
2021-04-19  8:17   ` [bug#47824] [PATCH v2 3/3] gnu: tsukundere: Update to 0.3.0 Leo Prikler
2021-05-05 14:16     ` [bug#47824] [PATCH 0/3] Happy hacking in the Spring 2021 LGJ Ludovic Courtès
2021-05-05 15:00       ` Leo Prikler
2021-05-06 10:52         ` Ludovic Courtès
2021-05-06 11:03           ` Leo Prikler
2021-05-15  8:35             ` Leo Prikler
2021-05-15 13:45               ` Ludovic Courtès
2021-05-15 14:02                 ` Leo Prikler
2021-05-15 18:32 ` [bug#47824] [PATCH] gnu: tsukundere: Update to 0.3.0 Leo Prikler
2021-05-16 20:21   ` Ludovic Courtès
2021-05-16 22:27     ` bug#47824: " Leo 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).