Subject: [PATCH] gnu: nim: Update to 1.6.12.
From: Gruruya <[email-masked]>
To: [email-masked]
Cc: Gruruya <[email-masked]>
Date: Sat, 25 Mar 2023 08:30:28 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Without the attached patch, Nim is broken on Guix as it searches
for its stdlib in /lib while it was placed in /lib/nim.

* gnu/packages/nim: Update to 1.6.12.
[patch-installer]: Install stdlib source to the right directory.
[patch-more-shebangs]: Edit substitute* to point to the new osproc source.
---
 gnu/packages/nim.scm | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/nim.scm b/gnu/packages/nim.scm
index 6da382119f..ebcff26c7b 100644
--- a/gnu/packages/nim.scm
+++ b/gnu/packages/nim.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2020 Tanguy Le Carrour <[email-masked]>
 ;;; Copyright © 2022 (unmatched parenthesis <[email-masked]>
 ;;; Copyright © 2022 Trevor Richards <[email-masked]>
+;;; Copyright © 2023 Gruruya <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -36,14 +37,14 @@ (define-module (gnu packages nim)
 (define-public nim
   (package
     (name "nim")
-    (version "1.6.6")
+    (version "1.6.12")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "https://nim-lang.org/download/"
                           name "-" version ".tar.xz"))
       (sha256
-       (base32 "0lm4450ig8k4l3rzxv6kcqji5l1lzicsw76ckwxm0q9qdz713cb7"))))
+       (base32 "1hjd9dxhqzn2ifr988li8q7v6kxpxlcqbdllfd6lsq3knw50pvxc"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f          ; TODO: Investigate tests failures.
@@ -55,6 +56,7 @@ (define-public nim
                (let ((out (assoc-ref outputs "out")))
                  (substitute* "install.sh"
                   (("/usr/local") out)
+                  (("/lib/nim") "/lib")
                   (("/opt/nimble") (string-append out "/share/nimble"))
                   (("configdir=/etc/nim")
                    (string-append "configdir=" out "/etc/nim"))))))
@@ -102,7 +104,7 @@ (define-public nim
                                 "lib/pure/osproc.nim"
                                 "lib/pure/strscans.nim")
                    (("/bin/sh") sh))
-                 (substitute* (find-files "c_code" "stdlib_osproc\\.nim\\.c")
+                 (substitute* (find-files "c_code" "@m\\.\\.@slib@spure@sosproc\\.nim\\.c")
                    (("\"/bin/sh\", 7") (format #f "~s, ~s" sh (string-length sh)))))))
            (replace 'build
              (lambda* (#:key (parallel-build? #t) #:allow-other-keys)

base-commit: a7f118d062db4408b23505750c44a1f996496c43
-- 
2.40.0