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

Use BinDeps2 to install binaries #48

Closed
wants to merge 5 commits into from
Closed

Conversation

Keno
Copy link

@Keno Keno commented Jan 30, 2018

Let's see if this works


@write_deps_file libRmath
else
error("Your platform $(Sys.MACHINE) is not supported by this package!")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

leave a fallback

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What kind of fallback did you have in mind?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Presumably some way to build from source for folks on systems which don't have BinaryBuilder support yet, such as FreeBSD.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the answer to that is to add FreeBSD support to BinaryBuilder.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See JuliaPackaging/BinaryBuilder.jl#32. If that's the solution then we shouldn't pull the trigger on this until that's implemented. But even still, there are also systems such as Alpine, which support Julia but will similarly be left out in the cold without a fallback.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can add a fallback for now, but BinDeps will not be maintained anymore once we switch a good fraction of the ecosystem over to the new stuff.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then that's a pretty major hole in the design and plan for BinaryProvider.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I said, I'm happy to have the fallback until we add sufficient support to BinaryBuilder to add the two remaining platforms that julia supports (musl/Linux, FreeBSD), but BinaryBuilder does not. We've been through this. If you want support for your platform, go through BinaryBuilder.

@Keno
Copy link
Author

Keno commented Jan 31, 2018

BinaryProvider needs a small update and a tag, but other than that, this seems to be working. Yay!


# Listing of files generated by BinaryBuilder:
download_info = Dict(
BinaryProvider.Linux(:aarch64, :glibc) => ("$bin_prefix/rmath.aarch64-linux-gnu.tar.gz", "0e56d5c5472ef832f76949e863958676c272eeaa2405b3239930e1e0b8d6313d"),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My remark it completely unrelated to this PR, but I wonder why one needs to list manually files for all architectures. Wouldn't it be possible for BinaryBuilder to automatically generate a file with this list (and checksums), and download that file to get this information? Then only one URL/checksum pair would have to be listed here, and platform details wouldn't pollute the code.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The file does get generated and uploaded (look at the release artifacts here: https://github.com/JuliaStats/Rmath-julia/releases). We could certainly just download and execute that, though I do like this because it's very explicit. I think it's fine to go with this style for now and maybe revisit it once we have some more experience.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, great. I wasn't too concerned about this package, but more about less experienced package authors who might be scared by all the platform-specific code.

@andreasnoack andreasnoack reopened this Jun 12, 2018
This was referenced Jun 12, 2018
@andreasnoack
Copy link
Member

Superseded by #55

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

Successfully merging this pull request may close these issues.

None yet

5 participants