* Re: branch master updated: gnu: Add musl-cross. [not found] <20200502155209.18737.35721@vcs0.savannah.gnu.org> @ 2020-05-03 19:26 ` Ludovic Courtès 2020-05-03 20:17 ` Danny Milosavljevic 0 siblings, 1 reply; 4+ messages in thread From: Ludovic Courtès @ 2020-05-03 19:26 UTC (permalink / raw) To: guix-devel Hi Danny, guix-commits@gnu.org skribis: > commit f7228e317703808a8a193f6db8a3cb6ba5380f2f > Author: Danny Milosavljevic <dannym@scratchpost.org> > AuthorDate: Sat May 2 14:48:29 2020 +0200 > > gnu: Add musl-cross. > > * gnu/packages/patches/musl-cross-locate.patch: New file. > * gnu/packages/heads.scm: New file. > * gnu/local.mk (dist_patch_DATA): Add one. > (GNU_SYSTEM_MODULES): Add the other. [...] > +(define-public musl-cross > + (let ((revision "3") > + (commit "a8a66490dae7f23a2cf5e256f3a596d1ccfe1a03")) > + (package > + (name "musl-cross") It’s an unconventional way to provide a cross-toolchain. What about expressing along the lines of what cross-base.scm does? I understand cross-base.scm is becoming messy and we would need an abstraction to facilitate its use. Still, to me it sounds like a better option over big monolithic packages. WDYT? Ludo’. ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: branch master updated: gnu: Add musl-cross. 2020-05-03 19:26 ` branch master updated: gnu: Add musl-cross Ludovic Courtès @ 2020-05-03 20:17 ` Danny Milosavljevic 2020-05-03 20:45 ` Vincent Legoll 2020-05-06 14:01 ` Ludovic Courtès 0 siblings, 2 replies; 4+ messages in thread From: Danny Milosavljevic @ 2020-05-03 20:17 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 1230 bytes --] Hi Ludo, On Sun, 03 May 2020 21:26:23 +0200 Ludovic Courtès <ludo@gnu.org> wrote: > I understand cross-base.scm is becoming messy and we would need an > abstraction to facilitate its use. Still, to me it sounds like a better > option over big monolithic packages. > > WDYT? In general I'm all for using our cross toolchain mechanism. However, this is the toolchain used by heads[1]--and they have reproducible builds. The use case is to be able to build heads in Guix without modification. Their attestation of secure boot actually verifies (and asks the user and documents the correct hashes in their README) whether the output hashes are correct--so the toolchain doesn't need to be just similar, it needs to make exactly the same executables. Also, they are using musl instead of glibc. I don't think we have a musl-gcc yet and I've never done a musl gcc before. Could be easy, could be hard--who knows. That said, I'm all for it. However, I need heads for work--and one way or another it has to actually build the official version :) [1] https://github.com/osresearch/heads/ , basically a Linux that goes on the BIOS flash ROM. [2] https://github.com/osresearch/heads/pull/710 [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 488 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: branch master updated: gnu: Add musl-cross. 2020-05-03 20:17 ` Danny Milosavljevic @ 2020-05-03 20:45 ` Vincent Legoll 2020-05-06 14:01 ` Ludovic Courtès 1 sibling, 0 replies; 4+ messages in thread From: Vincent Legoll @ 2020-05-03 20:45 UTC (permalink / raw) To: Danny Milosavljevic, Ludovic Courtès; +Cc: guix-devel Hello, On 03/05/2020 22:17, Danny Milosavljevic wrote: > The use case is to be able to build heads in Guix without modification. I was about to ask you what was the motivation for that commit, thanks for reading my mind ! I'm obviously interested in the subject. I'd love to explore bootstrapping guix with a musl libc. > Also, they are using musl instead of glibc. I don't think we have a > musl-gcc yet and I've never done a musl gcc before. We have musl, but are currently disabling the building/installation of its musl-gcc wrapper, I'm not sure you're speaking of this one though. But maybe we can revisit enabling it, I'll put that on my todo list, if you won't beat me to it. -- Vincent Legoll ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: branch master updated: gnu: Add musl-cross. 2020-05-03 20:17 ` Danny Milosavljevic 2020-05-03 20:45 ` Vincent Legoll @ 2020-05-06 14:01 ` Ludovic Courtès 1 sibling, 0 replies; 4+ messages in thread From: Ludovic Courtès @ 2020-05-06 14:01 UTC (permalink / raw) To: Danny Milosavljevic; +Cc: guix-devel Hi, Danny Milosavljevic <dannym@scratchpost.org> skribis: > On Sun, 03 May 2020 21:26:23 +0200 > Ludovic Courtès <ludo@gnu.org> wrote: > >> I understand cross-base.scm is becoming messy and we would need an >> abstraction to facilitate its use. Still, to me it sounds like a better >> option over big monolithic packages. >> >> WDYT? > > In general I'm all for using our cross toolchain mechanism. > > However, this is the toolchain used by heads[1]--and they have reproducible > builds. > > The use case is to be able to build heads in Guix without modification. > > Their attestation of secure boot actually verifies (and asks the user and > documents the correct hashes in their README) whether the output hashes are > correct--so the toolchain doesn't need to be just similar, it needs to make > exactly the same executables. OK, I see the practical need. If we take a step back, I think that Heads would be stronger by using Guix all the way down: it’d benefit from not just reproducible builds, but also provenance tracking and a reduced set of bootstrap binaries. In this grand scheme of things, the secure boot attestation of binaries “built their way” should be compared with the benefits of having binaries “built our way”. There are also practical issues: building a whole toolchain as part of this one package is expensive for our build farm and for users of said package. > Also, they are using musl instead of glibc. I don't think we have a musl-gcc > yet and I've never done a musl gcc before. > Could be easy, could be hard--who knows. I think it should be simpler than the MinGW or even GNU/Hurd cross-toolchains that we have. :-) > That said, I'm all for it. > > However, I need heads for work--and one way or another it has to actually > build the official version :) Yup, makes sense! Let’s just try and see how Heads and Guix can build upon each other eventually. Ludo’. ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-05-06 14:01 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <20200502155209.18737.35721@vcs0.savannah.gnu.org> 2020-05-03 19:26 ` branch master updated: gnu: Add musl-cross Ludovic Courtès 2020-05-03 20:17 ` Danny Milosavljevic 2020-05-03 20:45 ` Vincent Legoll 2020-05-06 14:01 ` Ludovic Courtès
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.