If possible, I would not just like to provide raw packages (stuff in packages/) but also the precompiled .ji files (stuff in compiled/).
A user, when he first starts julia, and types add XY will just get a reference to this system wide installation of XY in his Projects.toml. When he then tries to using XY it should just work (without another precompilation).
UPDATE: Ok, I probably don’t need the compiled/ stuff to be system wide.
@jlperla, I guess these files are rather small and there are few of them. Hence it’s not too importat to provide them in a centralized fashion. Also (guessing here) they might depend on the user’s system (image). Is that right?
(Concretely, I am looking at Conda, which ends up really big when no system python is used. Turns out that it’s the dependencies in packages/Conda/deps which (understandably) blow up.)
@carstenbauer Can you point to a specific problem here?
One thing to note - the Modules environment is always useful in HPC clusters https://modules.sourceforge.net
I have simple Modules file which I use to work on either 0.6.4 and 1.0.0
I think we should recognize that there will ALWAYS be a need for old/current/test versions of software packages on a shared system.
When Julia 1.1 debuts it might be marvellous. But no-one will move wholesale to ti without being confident that 1.0.0 is available. Modules makes this easy.
I want to set up a centralized installation of julia in a multi-user institution network. So far (<v0.7) I could basically only provide the binaries and every user has it’s own .julia. This leads to packages and so on being installed many many times.
WIth Pkg3 in Julia 1.0 it should be possible to also have some popular packages in a centralized julia-depot folder somewhere (see doc quote above).
Hi @carstenbauer, have you managed to setup such a depot?
I looked into how the slug is calculated and managed to install packages to the /usr/share/julia directory (the last path in DEPOT_PATH). But the problem is I still have to manually add the metadata into ~/.julia/environments/v1.0/Manifests.toml and Project.toml in order import it from julia. For example