Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"unofficial-builds" project and musl binaries #1025

Closed
rvagg opened this issue Apr 24, 2019 · 4 comments
Closed

"unofficial-builds" project and musl binaries #1025

rvagg opened this issue Apr 24, 2019 · 4 comments

Comments

@rvagg
Copy link
Member

rvagg commented Apr 24, 2019

Hey @nodejs/docker! This is an informational issue and can be closed whenever you like.

With the release of Node 12, ARMv6 binaries got dropped from nodejs.org. Linux x86 binaries were dropped with Node 10. The user communities of these binary types are small, but not insignificant, so this is a bit rough (particularly for ARMv6 who have a harder time compiling binaries themselves) but it's part of the rationalisation that the Build Working Group have to do to help manage their limited resources (mainly people). Linux x64 libc-musl is another non-trivial community that struggles (somewhat) from not having official binaries although I know you've been able to cope here by doing the compiling yourselves.

So, in an attempt to help some of the people impacted by these limitations, I've started the "unofficial-builds" project, which can be found at https://github.com/nodejs/unofficial-builds and publishes to https://unofficial-builds.nodejs.org/.

It uses a single server and code at that repository to generate 3 types of binaries whenever a new Node release is detected: linux-x86, linux-x64-musl and linux-armv6. It uses a simple Docker pipeline to do this so currently can be contained within a single server but there is potential for it to grow depending on the people that contribute.

The intention is for this not to stretch the Build WG in any way (aside from the allocation of a server). In fact, it'll be considered a failure and may be archived if that's all it ends up being in a few months. The aim is to develop a community of contributors that can help maintain and improve it. I'm currently the only one listed on the README but I'd like that to change, in fact I wouldn't mind being able to remove myself from it at some point!

The docker-node team is a model that I would love to see replicated: your work here is almost entirely independent, it places very little demand on the rest of the Node project, but it's extremely productive and impacts an enormous community of downstream users. I think this team is likely to have ideal candidates to help out with unofficial-builds for that reason and also because I'm hoping that the linux-x64-musl binaries will be helpful for your current Alpine deployment pipeline—that was one of the goals anyway.

So, if you wouldn't mind, please take a look at the project. It's brand new and glued together by Bash, Docker and gaffer tape, so I'm sure your expert eyes will see ways to improve it. Let me know if you've got any questions or if I can help out in any way making it useful for you and also if you have ideas for how you could become involved with it.

For what it's worth, here's the juicy 12.0.0 musl binaries: https://unofficial-builds.nodejs.org/download/release/v12.0.0/

(my announcements to the ARMv6 folks and Linux x86 folks)

@LaurentGoderre
Copy link
Member

Thnaks for this @rvagg this has huge potential for us here!

@LaurentGoderre
Copy link
Member

This has been implemented!

@PeterDaveHello
Copy link
Member

v13.2.0 was released but no official-build built, cc @rvagg #1159

@rvagg
Copy link
Member Author

rvagg commented Nov 22, 2019

Detached signature file didn't get deployed properly with 13.2.0 nodejs/build#2059, so auto-build of unofficial-builds failed.
Have manually kicked off 13.2.0, it's building @ https://unofficial-builds.nodejs.org/logs/201911220939-v13.2.0/, it'll be there soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants