Danny Milosavljevic writes: >> +(define (bootstrap-binary program-name) > ... >> + (license gpl3+) > > I can't believe I'm nitpicking on this - but can we fish that out of the package > > (search-bootstrap-binary program-name (%current-system)) > > using package-license ? At first I tried to do what you suggest, but then it occurred to me that this might create a loop in the module dependency graph. For example, if in the case of "bash" I use a form like (package-license bash) to obtain the actual license used by the canonical bash package, the (gnu packages bootstrap) module will now depend on the (gnu packages bash) module. I don't know how that will interact with the rest of Guix; it seems safer to just avoid adding that and accept this small discrepancy in the bootstrap packages. It is simpler. Note that the bootstrap binaries' licenses are not currently correctly surfaced in every place to begin with. For example, the license of the "bootstrap-binaries" package (i.e., the %bootstrap-coreutils&co) is defined to be gpl3+, even though it contains xz, which actually uses gpl2+ and lgpl2.1+. Since (I suspect) these packages are intended for internal use, and since the canonical versions of these packages do have correct sources, licenses, and so forth, I'm not so sure we need to be very concerned about minor discrepancies like this. ludo@gnu.org (Ludovic Courtès) writes: > Chris Marusich skribis: > >> * gnu/packages/bootstrap.scm (bootstrap-binary): New procedure. >> (%bootstrap-bash, %bootstrap-mkdir, %bootstrap-tar, %bootstrap-xz): >> Use it to create these new packages, and export them. > > For ‘guix pack --bootstrap’, I believe we could avoid defining these > packages and simply use ‘%bootstrap-coreutils&co’ when ‘--bootstrap’ is > used. > > Would that work for you? I considered this. However, my understanding is that a network connection is required to build %bootstrap-coreutils&co. Would we want to use it in tests even if it requires a network connection? -- Chris