IRC channel logs
2026-02-11.log
back to list of logs
<ArneBab>janneke: do you by chance have a docker container which only includes guile bootstrapped from the minimal seed? <janneke>ArneBab: no...but at Guix Days (TM) we talked about bootstrapping guile <janneke>ACTION types: guix pack --format=docker --symlink=/bin=bin -e '(@@ (gnu packages commencement) guile-final)' <janneke>would you like to have a look at that? it's 39M <ArneBab>janneke: so small? I’ll have a look! <janneke>ArneBab: note that, before this guile is being built, almost all of commencement has already been built <janneke>we were talking about trying to build guile (possibly a more bootstrappable version?) much sooner <janneke>ArneBab: you have guix, or should i upload this somewhere? <ArneBab>janneke: I have guix and am already experimenting <janneke>you may even want to use the regular guile: guix pack --format=docker --symlink=/bin=bin guile <ArneBab>but it shows that it’s build later: the virtual layer size is 141.8MB (shown by docker load) <janneke>or even guile-next, you'll figure it out! <ArneBab>regular guile is at 145 MB, so guile-final does bring an improvement. <ArneBab>janneke: does the guile-final pack include all the packages on the path to building? ⇒ can we run guix gc just after guile-final is ready? <mwette>AwesomeAdam54321: try moving the >chars procedure just inside the (lambda (stx) form; or use eval-when. <AwesomeAdam54321>mwette: Is it so that the procedures are in the scope of macro expansion? <AwesomeAdam54321>The `a` parameter in the inner macro definition doesn't return its value, i.e. `test-a` instead of `test-value` <AwesomeAdam54321>`(test-a)` returns 'value-tag as expected, but the expression for getting such a value should be `(test-value)` <mwette>I see. Seems odd to use quasiquote instead of syntax-quasiquote. <AwesomeAdam54321>I'm not sure how to make it work with syntax-quasiquote. If I knew, I would just use it <AwesomeAdam54321>There were issues with raw symbols in the macro output, so I figured that the whole thing should be wrapped in datum->syntax <rlb>old: oh, and if git does what I've assumed, then wrt bootstrapping and CI, I've wondered if we might be able to mostly dtrt by having a first step that checks out the most recent tag on the branch (changing the tree), then unpacks the matching bootstrap files, then returns to the original commit --- so that if say a pr changes files that affect stage0, make will still notice and handle it. <rlb>You see similar behavior when moving around on a branch in a local tree via checkout/rebase/etc. (unless you cross a "breaking change", e.g. backward incompatible change in byte-compiled format). <old>rlb: interresting! I don't like adding too much 3rd party in this. Could we not have this bridge ourself somehow? <rlb>Yes, I think -- see the "Source" button at the bottom. <rlb>that's just a convenience instance I think?