-
Notifications
You must be signed in to change notification settings - Fork 22
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
Provide JLLs for GAP packages #614
Comments
I've begun to work on this recently. See... |
We now use JLLs for most GAP packages directly in GAP.jl. The JLLs only contain the binaries, the rest of the packages are pulled in as artifacts via one big There is still an idea of having Julia packages
|
I thought we had an issue for this already, but couldn't find one...
The idea here being that we provide JLLs for all GAP packages (resp. at least those which compile code). This would solve a bunch of issues
libjulia-dev
anymore)JuliaInterface
to this, which is slightly more annoying than for other GAP packages; so we might want to postpone that, and focus on packaging things likebrowse
,io
andferret
libncurses
fromncurses_jll
, and perhaps also ensure that when its initialization runs, thenTERMINFO_DIRS
is set right (see issue problem to load GAP's Browse package #456 )NormalizInterface
which would probably be very convenient for some usersSome thoughts on implementation:
GAP_pkgnameinlowercase_jll
PackageInfo.g
files and uses those to producebuild_tarballs.jl
files suitable for use in Yggdrasil; that way, updating to new versions becomes easy (of course for the initial prototyping, we can write the packages "manually")GAP.jl
as a dependencyGAP.Globals.SetPackagePath
in their__init__
section?For this to work properly, though, we must have the dependencies between the packages declared correctly (and this will be a problem because some GAP packages have cyclic dependencies, e.g.Actually, I think this is the way to go.polymake
andalnuth
; so actually we can't use the SetPackagePath idea with them, because they need to be visible to GAP at the same time... )GAP_pkgnameinlowercase_jll.jl
andGAP_pkgnameinlowercase.jl
. This is more work to maintain and get working; but it might help resolve issues with circular dependencies, and reduce download churn (if we have to regenerate a JLL for a given version of a GAP package, a complete new artifact needs to be downloaded, and of course that's a lot smaller if it only contains executables, not GAP data files)The text was updated successfully, but these errors were encountered: