diff mbox series

[bug#48308] gnu: racket: Update to 8.1.

Message ID 20210509072852.1699567-1-philip@philipmcgrath.com
State Accepted
Headers show
Series [bug#48308] gnu: racket: Update to 8.1. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Philip McGrath May 9, 2021, 7:28 a.m. UTC
* gnu/packages/racket.scm (racket-minimal): Update to 8.1.
[arguments](#:phases): Remove 'patch-chez-configure: fixes applied upstream.
(racket): Update to 8.1.
---
 gnu/packages/racket.scm | 36 +++---------------------------------
 1 file changed, 3 insertions(+), 33 deletions(-)

Comments

Jack Hill May 9, 2021, 8:34 p.m. UTC | #1
On Sun, 9 May 2021, Philip McGrath wrote:

> * gnu/packages/racket.scm (racket-minimal): Update to 8.1.
> [arguments](#:phases): Remove 'patch-chez-configure: fixes applied upstream.
> (racket): Update to 8.1.

Thanks for making the update. I tested building both racket and 
racket-minimal on x86_64, and was able to do a lite REPL session in each 
one without problems.

Its nice that you CS building patch made it into upstream. 
Congratulations.

Not related to the update, but I noticed `guix lint` complain about the 
racket synopsis (it begins with an article). I think we could just drop 
the 'a' and leave the rest of it as is and it would still make sense and 
satisfy the linter.

Best,
Jack
Philip McGrath May 9, 2021, 9:06 p.m. UTC | #2
On 5/9/21 4:34 PM, Jack Hill wrote:
> Not related to the update, but I noticed `guix lint` complain about the 
> racket synopsis (it begins with an article). I think we could just drop 
> the 'a' and leave the rest of it as is and it would still make sense and 
> satisfy the linter.

Ah, yes, I had noticed that. It's not a big deal and I'm happy to defer 
to community consensus. I had kept the "a" because it's a reference to 
Felleisen et. al.'s "A Programmable Programming Language" 
(Communications of the ACM, March 2018) [1], the title of which in turn 
is a quote Foderaro's "LISP: Introduction" (Communications of the ACM, 
September 1991) [2]:

 > When Lisp adopts a new paradigm, it not only replicates
 > existing practice, but goes beyond it to become a testbed
 > for advancing the state of the art. Why has Lisp been able
 > to adapt so easily when other languages have not? One
 > reason is that Lisp is a *programmable* programming language.
 > Not only can you program *in* Lisp (that makes it a programming
 > language) but you can program the language itself.

[1]: 
https://cacm.acm.org/magazines/2018/3/225475-a-programmable-programming-language/fulltext
[2]: https://doi.org/10.1145/114669.114670

-Philip
Efraim Flashner May 10, 2021, 1:13 p.m. UTC | #3
On Sun, May 09, 2021 at 04:34:02PM -0400, Jack Hill wrote:
> On Sun, 9 May 2021, Philip McGrath wrote:
> 
> > * gnu/packages/racket.scm (racket-minimal): Update to 8.1.
> > [arguments](#:phases): Remove 'patch-chez-configure: fixes applied upstream.
> > (racket): Update to 8.1.
> 
> Thanks for making the update. I tested building both racket and
> racket-minimal on x86_64, and was able to do a lite REPL session in each one
> without problems.
> 
> Its nice that you CS building patch made it into upstream. Congratulations.
> 
> Not related to the update, but I noticed `guix lint` complain about the
> racket synopsis (it begins with an article). I think we could just drop the
> 'a' and leave the rest of it as is and it would still make sense and satisfy
> the linter.
> 

Thank you both, I'm taking this as confirmation that the package works.

Patch pushed!
diff mbox series

Patch

diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm
index f2bbf28564..18af14b2ec 100644
--- a/gnu/packages/racket.scm
+++ b/gnu/packages/racket.scm
@@ -66,14 +66,14 @@ 
 (define-public racket-minimal
   (package
     (name "racket-minimal")
-    (version "8.0")            ; note: remember to also update racket!
+    (version "8.1")            ; note: remember to also update racket!
     (source
      (origin
        (method url-fetch)
        (uri (map (lambda (base)
                    (string-append base version "/racket-minimal-src.tgz"))
                  %installer-mirrors))
-       (sha256 "0mwyffw4gcci8wmzxa3j28h03h0gsz55aard8qrk3lri8r2xyg21")
+       (sha256 "04zzqybpxss50n1jrwwq98539gw0y0ygpw9civl2sq3s4ww7m8l3")
        (patches (search-patches
                  "racket-sh-via-rktio.patch"))))
     (home-page "https://racket-lang.org")
@@ -100,36 +100,6 @@ 
         (srfi srfi-1))
        #:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'patch-chez-configure
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (substitute* "src/cs/c/Makefile.in"
-               (("/bin/sh") (which "sh")))
-             ;; TODO: Racket CS uses a fork of Chez Scheme.
-             ;; Most of this is copy-pasted from the "chez.scm",
-             ;; but maybe there's a way to reuse more directly.
-             (with-directory-excursion "src/ChezScheme"
-               (substitute* (find-files "mats" "Mf-.*")
-                 (("^[[:space:]]+(cc ) *") "\tgcc "))
-               (substitute*
-                   (find-files "." (string-append
-                                    "("
-                                    "Mf-[a-zA-Z0-9.]+"
-                                    "|Makefile[a-zA-Z0-9.]*"
-                                    "|checkin"
-                                    "|stex\\.stex"
-                                    "|newrelease"
-                                    "|workarea"
-                                    "|unix\\.ms"
-                                    "|^6\\.ms"
-                                    ;;"|[a-zA-Z0-9.]+\\.ms" ; guile can't read
-                                    ")"))
-                 (("/bin/rm") (which "rm"))
-                 (("/bin/ln") (which "ln"))
-                 (("/bin/cp") (which "cp"))
-                 (("/bin/echo") (which "echo")))
-               (substitute* "makefiles/installsh"
-                 (("/bin/true") (which "true"))))
-             #t))
          (add-before 'configure 'pre-configure-minimal
            (lambda* (#:key inputs #:allow-other-keys)
              (chdir "src")
@@ -215,7 +185,7 @@  DrRacket IDE, are not included.")
                  %installer-mirrors))
        (sha256
         (base32
-         "047wpjblfzmf1msz7snrp2c2h0zxyzlmbsqr9bwsyvz3frcg0888"))))
+         "0xdqwrwm604bbnr97h75dps2ixxz2svlw0fn0f674bn04dcfd60f"))))
     (inputs
      `(;; sqlite and libraries for `racket/draw' are needed to build the doc.
        ("cairo" ,cairo)