From: Liliana Marie Prikler <liliana.prikler@ist.tugraz.at>
To: Philip McGrath <philip@philipmcgrath.com>, 57050@debbugs.gnu.org
Cc: Liliana Marie Prikler <liliana.prikler@gmail.com>,
Thiago Jung Bauermann <bauermann@kolabnow.com>
Subject: [bug#57050] [PATCH v2 04/13] gnu: Add Zuo.
Date: Thu, 11 Aug 2022 13:31:12 +0200 [thread overview]
Message-ID: <bde8ed75e4db40bdb25a1850d8fe83d4e8cd5e6d.camel@ist.tugraz.at> (raw)
In-Reply-To: <285372112d70bcb4011d6c085592787df4f57d44.1660215295.git.philip@philipmcgrath.com>
Am Donnerstag, dem 11.08.2022 um 07:08 -0400 schrieb Philip McGrath:
> [...]
>
> (define %racket-version "8.5") ; Remember to update chez-scheme-for-
> racket!
> +(define %zuo-version "1.0") ; defined in racket/src/zuo/zuo.c
Is that publicly visible?
> (define %racket-commit
> (string-append "v" %racket-version))
> (define %racket-origin
> @@ -233,6 +234,69 @@ (define %racket-origin
> ;; Unbundle libffi.
> (delete-file-recursively
> "racket/src/bc/foreign/libffi")))))
>
> +
> +(define-public zuo
> + (let ((revision #f))
> + (package
> + (name "zuo")
> + (version (string-append %zuo-version
> + "-racket"
> + "8.6"
> + (if revision "-guix" "")
> + (or revision "")))
Is this really needed? If we expect to maintain zuo split from racket,
I'd rather go with https://github.com/racket/zuo and git-version.
> + (source
> + (origin
> + (inherit %racket-origin)
> + (uri (git-reference
> + (url "https://github.com/racket/racket")
> + (commit "v8.6")))
> + (sha256
> + (base32
> "1yi36nr7zrdwrnvpmliirxxjz4pyfyhkar6yvk3rapvmg4q2vmnk"))
> + (patches (append (origin-patches %racket-origin)
> + (search-patches "racket-backport-8.6-
> zuo.patch"
> + "racket-zuo-bin-
> sh.patch")))
> + (file-name (git-file-name "racket" "8.6"))))
> + (outputs '("out" "debug"))
> + (build-system gnu-build-system)
> + (inputs (list bash-minimal))
> + (native-inputs (list bash-minimal))
> + (arguments
> + (list
> + #:configure-flags
> + #~`(,(string-append "CPPFLAGS=-DGUIX_RKTIO_BIN_SH="
> + #$(file-append (this-package-input
> "bash-minimal")
> + "/bin/sh"))
As with chez-scheme, I do think using a Racket-agnostic macro name is
helpful here.
> + #+@(if (%current-target-system)
> + (list #~,(string-append
> + "CPPFLAGS_FOR_BUILD=-
> DGUIX_RKTIO_BIN_SH="
> + #+(file-append
> + (this-package-native-input "bash-
> minimal")
> + "/bin/sh")))
> + '()))
> + #:out-of-source? #t
> + #:phases
> + #~(modify-phases %standard-phases
> + (add-after 'unpack 'chdir
> + (lambda args
> + (chdir "racket/src/zuo"))))))
> + (home-page "https://github.com/racket/zuo")
> + ;; ^ This is downstream of https://github.com/racket/racket,
> + ;; but it's designed to be a friendly landing place
> + (synopsis "Tiny Racket for build scripts")
> + (description "You should use Racket to write scripts.
Sorry, but I prefer Guile.
> But what if you
> +need something much smaller than Racket for some reason—or what if
> you're
> +trying to script a build of Racket itself? Zuo is a tiny Racket
> with
> +primitives for dealing with files and running processes, and it
> comes with a
> +@command{make}-like embedded DSL.
> +
> +Zuo (作) is a Racket variant in the sense that program files start
> with
> +@code{#lang}, and the module path after @code{#lang} determines the
> parsing
> +and expansion of the file content. That's how the @command{make}-
> like DSL is
> +defined, and even the base Zuo language is defined by layers of
> @code{#lang}s.
> +One of the early layers implements macros.")
> + (license (list license:asl2.0 license:expat)))))
Rarely have I read a description this long, yet uninformative. Let me
shorten that a little: "Zuo is a tiny Racket variant that can be used
to bootstrap Racket. It comes with primitives for dealing with files
and processes, as well as a @command{make}-like DSL."
Cheers
next prev parent reply other threads:[~2022-08-11 11:32 UTC|newest]
Thread overview: 122+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-08 6:06 [bug#57050] [PATCH 0/6] gnu: Update Racket to 8.6. Add Zuo Philip McGrath
2022-08-08 6:10 ` [bug#57050] [PATCH 1/6] gnu: stex: Update to 1.2.2-2.afa6075 Philip McGrath
2022-08-08 6:10 ` [bug#57050] [PATCH 2/6] gnu: stex: Fix read-only gifs and math directories Philip McGrath
2022-08-08 6:10 ` [bug#57050] [PATCH 3/6] gnu: chez-scheme: Fix use of "/bin/sh" Philip McGrath
2022-08-08 8:53 ` Liliana Marie Prikler
2022-08-09 20:25 ` Philip McGrath
2022-08-09 21:24 ` Maxime Devos
2022-08-09 21:38 ` ( via Guix-patches via
2022-08-09 21:58 ` Philip McGrath
2022-08-09 22:09 ` ( via Guix-patches via
2022-08-10 11:46 ` Maxime Devos
2022-08-08 6:10 ` [bug#57050] [PATCH 4/6] gnu: Update Racket to 8.6. Add Zuo Philip McGrath
2022-08-08 9:01 ` Liliana Marie Prikler
2022-08-09 20:56 ` Philip McGrath
2022-08-10 7:34 ` Liliana Marie Prikler
2022-08-08 6:10 ` [bug#57050] [PATCH 5/6] gnu: racket: Use Racket CS on all systems Philip McGrath
2022-08-08 9:10 ` Liliana Marie Prikler
2022-08-08 6:10 ` [bug#57050] [PATCH 6/6] gnu: chez-scheme-for-racket: Suport " Philip McGrath
2022-08-08 9:15 ` Liliana Marie Prikler
2022-08-10 15:30 ` [bug#57050] [PATCH 0/6] gnu: Update Racket to 8.6. Add Zuo Thiago Jung Bauermann via Guix-patches via
2022-08-11 4:00 ` Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 00/13] " Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 01/13] gnu: stex: Update to 1.2.2-2.afa6075 Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 02/13] gnu: stex: Fix read-only gifs and math directories Philip McGrath
2022-08-11 11:13 ` Liliana Marie Prikler
2022-08-11 11:08 ` [bug#57050] [PATCH v2 03/13] gnu: chez-scheme: Fix use of "/bin/sh" Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 04/13] gnu: Add Zuo Philip McGrath
2022-08-11 11:31 ` Liliana Marie Prikler [this message]
2022-08-11 14:00 ` Philip McGrath
2022-08-11 15:34 ` Liliana Marie Prikler
2022-08-11 23:32 ` Philip McGrath
2022-08-16 14:47 ` Maxime Devos
2022-08-23 1:40 ` Philip McGrath
2022-08-23 9:11 ` Maxime Devos
2022-08-23 23:24 ` Philip McGrath
2022-08-23 9:20 ` Maxime Devos
2022-08-24 0:27 ` Philip McGrath
2022-08-24 5:42 ` Liliana Marie Prikler
2022-08-24 5:47 ` Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 00/14] gnu: Update Racket to 8.6. " Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 01/14] gnu: stex: Update to 1.2.2-2.afa6075 Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 02/14] gnu: stex: Fix read-only gifs and math directories Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 03/14] etc: teams: Add racket team Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 04/14] etc: teams: Add entry for Philip McGrath Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 05/14] gnu: racket: Adjust patch for "/bin/sh" in rktio Philip McGrath
2022-08-25 9:09 ` Liliana Marie Prikler
2022-08-25 19:16 ` Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 06/14] gnu: chez-scheme: Fix use of "/bin/sh" Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 07/14] gnu: Add Zuo Philip McGrath
2022-08-25 9:12 ` Liliana Marie Prikler
2022-08-25 10:30 ` Efraim Flashner
2022-08-25 20:04 ` Philip McGrath
2022-08-26 12:01 ` Liliana Marie Prikler
2022-08-27 18:08 ` Philip McGrath
2022-08-27 18:58 ` Liliana Marie Prikler
2022-08-27 19:54 ` Philip McGrath
2022-08-27 21:18 ` Liliana Marie Prikler
2022-08-27 21:28 ` Philip McGrath
2022-08-27 22:26 ` Liliana Marie Prikler
2022-08-25 8:54 ` [bug#57050] [PATCH v3 08/14] gnu: racket: Update to 8.6 Philip McGrath
2022-08-25 9:14 ` Liliana Marie Prikler
2022-08-25 10:39 ` Efraim Flashner
2022-08-25 8:54 ` [bug#57050] [PATCH v3 09/14] gnu: chez-scheme: Make bootfiles regular inputs Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 10/14] gnu: chez-scheme-for-racket: Support cross-compilation Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 11/14] gnu: racket: Support cross-compiling the VM packages Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 12/14] gnu: chez-scheme-for-racket: Suport all systems Philip McGrath
2022-08-25 9:24 ` Liliana Marie Prikler
2022-08-25 10:50 ` Efraim Flashner
2022-08-25 20:17 ` Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 13/14] gnu: racket-vm-bc: Add workaround for ppc64le Philip McGrath
2022-08-25 8:54 ` [bug#57050] [PATCH v3 14/14] gnu: racket: Use Racket CS on all systems Philip McGrath
2022-08-25 9:17 ` Liliana Marie Prikler
2022-08-26 21:15 ` [bug#57050] [PATCH v3 00/14] gnu: Update Racket to 8.6. Add Zuo Thiago Jung Bauermann via Guix-patches via
2022-08-27 18:55 ` [bug#57050] [PATCH v4 " Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 01/14] gnu: stex: Update to 1.2.2-2.afa6075 Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 02/14] gnu: stex: Fix read-only gifs and math directories Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 03/14] etc: teams: Add racket team Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 04/14] etc: teams: Add entry for Philip McGrath Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 05/14] gnu: racket: Adjust patch for "/bin/sh" in rktio Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 06/14] gnu: chez-scheme: Fix use of "/bin/sh" Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 07/14] gnu: Add Zuo Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 08/14] gnu: racket: Update to 8.6 Philip McGrath
2022-08-27 19:21 ` Liliana Marie Prikler
2022-08-27 20:30 ` Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 09/14] gnu: chez-scheme: Make bootfiles regular inputs Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 10/14] gnu: chez-scheme-for-racket: Support cross-compilation Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 11/14] gnu: racket: Support cross-compiling the VM packages Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 12/14] gnu: chez-scheme-for-racket: Support all systems Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 13/14] gnu: racket-vm-bc: Add workaround for ppc64le Philip McGrath
2022-08-27 18:55 ` [bug#57050] [PATCH v4 14/14] gnu: racket: Use Racket CS on all systems Philip McGrath
2022-09-04 20:53 ` bug#57050: [PATCH 0/6] gnu: Update Racket to 8.6. Add Zuo Ludovic Courtès
2022-08-11 11:08 ` [bug#57050] [PATCH v2 05/13] gnu: racket: Update to 8.6 Philip McGrath
2022-08-11 11:44 ` Liliana Marie Prikler
2022-08-11 22:40 ` Philip McGrath
2022-08-12 6:34 ` Liliana Marie Prikler
2022-08-22 8:41 ` Efraim Flashner
2022-08-22 18:56 ` Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 06/13] gnu: chez-scheme: Bootfiles should not be native inputs Philip McGrath
2022-08-11 11:47 ` Liliana Marie Prikler
2022-08-11 22:45 ` Philip McGrath
2022-08-12 4:21 ` Liliana Marie Prikler
2022-08-11 11:08 ` [bug#57050] [PATCH v2 07/13] gnu: chez-scheme-for-racket: Support cross-compilation Philip McGrath
2022-08-11 11:56 ` Liliana Marie Prikler
2022-08-11 22:49 ` Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 08/13] gnu: racket: Support cross-compiling the VM packages Philip McGrath
2022-08-11 11:58 ` Liliana Marie Prikler
2022-08-11 23:23 ` Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 09/13] gnu: chez-scheme-for-racket: Suport all systems Philip McGrath
2022-08-11 12:02 ` Liliana Marie Prikler
2022-08-11 23:25 ` Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 10/13] gnu: racket-vm-bc: Add workaround for ppc64le Philip McGrath
2022-08-11 11:08 ` [bug#57050] [PATCH v2 11/13] gnu: racket: Use Racket CS on all systems Philip McGrath
2022-08-11 12:03 ` Liliana Marie Prikler
2022-08-11 11:08 ` [bug#57050] [PATCH v2 12/13] etc: teams: Add racket team Philip McGrath
2022-08-11 12:11 ` Liliana Marie Prikler
2022-08-11 11:08 ` [bug#57050] [PATCH v2 13/13] etc: teams: Add entry for Philip McGrath Philip McGrath
2022-08-13 17:43 ` [bug#57050] [PATCH v2 00/13] gnu: Update Racket to 8.6. Add Zuo Thiago Jung Bauermann via Guix-patches via
2022-08-15 5:47 ` [bug#57050] [RFC PATCH] gnu: racket-vm-cs: Avoid 'configure' bug with '--enable-racket' Philip McGrath
2022-08-15 6:12 ` Philip McGrath
2022-08-15 19:54 ` [bug#57050] [RFC PATCH v2] gnu: racket: Backport fix for powerpc64le Philip McGrath
2022-08-19 0:51 ` Thiago Jung Bauermann via Guix-patches via
2022-08-19 10:10 ` Maxime Devos
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bde8ed75e4db40bdb25a1850d8fe83d4e8cd5e6d.camel@ist.tugraz.at \
--to=liliana.prikler@ist.tugraz.at \
--cc=57050@debbugs.gnu.org \
--cc=bauermann@kolabnow.com \
--cc=liliana.prikler@gmail.com \
--cc=philip@philipmcgrath.com \
/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 external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.