unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Efraim Flashner <efraim@flashner.co.il>
To: Leo Prikler <leo.prikler@student.tugraz.at>
Cc: 47824@debbugs.gnu.org
Subject: [bug#47824] [PATCH 3/3] gnu: tsukundere: Update to 0.3.0.
Date: Mon, 19 Apr 2021 10:56:55 +0300	[thread overview]
Message-ID: <YH03x7d1Eh5HRIxj@3900XT> (raw)
In-Reply-To: <20210416110723.9938-3-leo.prikler@student.tugraz.at>

[-- 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 --]

  reply	other threads:[~2021-04-19  7:58 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YH03x7d1Eh5HRIxj@3900XT \
    --to=efraim@flashner.co.il \
    --cc=47824@debbugs.gnu.org \
    --cc=leo.prikler@student.tugraz.at \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).