PGFPlots.jl icon indicating copy to clipboard operation
PGFPlots.jl copied to clipboard

Provide dependencies with BinDeps.jl

Open juliohm opened this issue 7 years ago • 5 comments

It would be great to have PGFPlots and other binary dependencies installed automatically upon a simple Pkg.add("PGFPlots"). If you have the time, please check the super nice BinDeps.jl package.

juliohm avatar Aug 19 '17 18:08 juliohm

See discussion here: https://github.com/sisl/TikzPictures.jl/issues/23 Texlive is pretty big. Maybe we should have a separate package that handles the install called texlive.jl or something. What do you think?

mykelk avatar Aug 19 '17 20:08 mykelk

I think it is a good idea to have a separate TexLive.jl package for installation purposes. :) The starter deps/build.jl script that Zach has written on that issue is not using the high-level BinDeps.jl interface though. One of the nicest things about BinDeps.jl is that it has providers such as AptGet, Yum, Pacman that take care of the versioning nightmare for different OS.

A few examples of the the high-level interface being used in other packages:

  • https://github.com/JuliaMath/GSL.jl/blob/master/deps/build.jl
  • https://github.com/JuliaGraphics/Cairo.jl/blob/master/deps/build.jl

juliohm avatar Aug 19 '17 20:08 juliohm

Nice. I like this a lot. Do you think we should ask the user whether we want to install texlive for the full system, not at all (but provide a link), or just locally inside of the package?

mykelk avatar Aug 19 '17 21:08 mykelk

I am not following the latest TeXLive distribution, but I remember it was huge. By providing the correct rules to BinDeps.jl, I think it will be capable of identifying and using the system-wise installation when available.

If no provider is found in the script for a specific OS, then you could fallback to an error message saying that TexLive needs to be manually installed and that pull requests are welcome pointing to deps/build.jl :+1:

juliohm avatar Aug 19 '17 21:08 juliohm

Sounds like a good plan. We would welcome PRs! I'll mark this one as up for grabs.

mykelk avatar Aug 19 '17 22:08 mykelk

Hi @mykelk , hope you are doing well! Closing this one given that the entire Julia ecosystem for binary dependencies changed. Nowadays the recommended method is BinaryBuilder.jl

Best,

juliohm avatar Jul 23 '23 02:07 juliohm