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

Linux builds #39

Open
lpil opened this issue Nov 25, 2024 · 9 comments
Open

Linux builds #39

lpil opened this issue Nov 25, 2024 · 9 comments

Comments

@lpil
Copy link
Member

lpil commented Nov 25, 2024

Hello all!

I'm trying to contribute to beamup but I'm hitting a problem in that I cannot find any Linux builds that tool could use. It is possible that this project may expand to also provide Linux builds? Or perhaps there's some others we could use?

macOS and Windows are now well supported, so Linux is the missing piece of the puzzle for installing BEAM toolchains on popular operating systems.

Thanks,
Louis

@wojtekmach
Copy link
Collaborator

This is just for Ubuntu but you can use https://github.com/hexpm/bob?tab=readme-ov-file#erlang-builds today. I plan to eventually move them to this repository. These are not perfectly aligned with macOS and Windows builds as they have OpenSSL and dynamically linked (its static linking for other two) but I think it makes sense for Ubuntu builds. For that reason I’m a bit hesitant but I think Ubuntu builds will eventually be moved here.

If someone is able to build Linux builds that are instead distribution independent, I’d love to host them here.

@wojtekmach
Copy link
Collaborator

wojtekmach commented Nov 25, 2024

You can also test https://github.com/cocoa-xu/otp-build or beammachine.cloud. I think I hit some issues when trying them with Ubuntu but I don’t think I’ve reported them unfortunately. If they work across distributions, I’d be happy to move/copy (I don’t think maintainers would mind) them here so there is a central place.

If you end up testing these let us know how it goes!

@lpil
Copy link
Member Author

lpil commented Nov 25, 2024

I looked at hexpm/bob but it's Ubuntu only, which is very limiting. I think we'd want to be able to support at least derivatives of Debian, Fedora, Arch, Alpine, OpenSUSE, and Void.

I've not seen cocoa.build before, but it seems to only have macOS builds for the latest OTP versions.

@tsloughter
Copy link

I've planned that once Ubuntu builds were moved here I'd submit work for adding Fedora builds and commit to maintaining that.

@tsloughter
Copy link

@lpil looks like they have the latest for linux but it got split into 2 releases https://github.com/cocoa-xu/otp-build/releases/tag/v27.1.1

Oh, except they don't have 27.1.2 at all, mac or linux.

@tsloughter
Copy link

I just tried cocoa's linux builds and they may work on Fedora but they warn at start time about "/lib64/libtinfo.so.6: no version information available".

I don't like that their tarballs are paths usr/local/... but maybe they are open to changing that. It can of course be worked around, just a little harder to support in beamup at least.

@wojtekmach
Copy link
Collaborator

@tsloughter I can prepare and commit to maintaining Ubuntu builds to unblock you but yeah if someone is able to make generic Linux builds in the meantime I’d rather do that, seems way more appealing. We could even test them on CI on build time across different distributions using Docker.

@lpil
Copy link
Member Author

lpil commented Nov 26, 2024

Do you think it would be possible to create statically linked or otherwise generic Linux builds? Ubuntu and Fedora are a large portion of the ecosystem but others are still common.

edit: oops, snap Wojtek! :)

@wojtekmach
Copy link
Collaborator

I don’t know. I hope so. Looking at beammachine and cocoa.build that seemed the goal. But if it’s not possible that’s that and we should have per distribution builds here.

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

No branches or pull requests

3 participants