Hi, I'm back. I fixed the problem I had (I forgot the ./pre-inst-env -.-") Following this discussion, I'm adding ``native-search-paths'' to the julia package. Now, without any other hack (like the setup.jl one), it can find the packages but only when installed with guix package -i . It cannot find them when in an environment (guix environment --ad-hoc julia-package). Can you help? Except from this, I cleaned everything a bit, and added a draft of the documentation. I'm attaching the new patches here (without the julia-xyz part one, to which I'll add all package synopsis and description, and I'll split in multiple patches before re-submitting). Thanks, Nicolò Il giorno mar 30 lug 2019 alle ore 16:02 Nicolò Balzarotti < anothersms@gmail.com> ha scritto: > Thanks for the quick response! > > Well, the environment variable JULIA_LOAD_PATH (that inside julia is just > LOAD_PATH) works exactly like that (is a column-concatenated path list). It > just needs the special ":@stdlib" path to let julia find its standard > libraries. > Example: > > JULIA_LOAD_PATH=/my/new/path/:/profile/path/:@stdlib julia --startup=no > -E 'LOAD_PATH' > ["/my/new/path/", "/profile/path/", "@stdlib"] > > Is setting this variable from guix fine, or we need a special > GUIX_SOMETHING variable? > Where exactly should I set this? > > Thanks > > Il giorno mar 30 lug 2019 alle ore 14:33 Ricardo Wurmus < > rekado@elephly.net> ha scritto: > >> >> Julien Lepiller writes: >> >> > Le 30 juillet 2019 16:11:19 GMT+02:00, Ricardo Wurmus < >> rekado@elephly.net> a écrit : >> >> >> >>Nicolò Balzarotti writes: >> >> >> >>> 3. By adding a simple startup.jl script, inspired by what emacs does. >> >>This >> >>> is simplified so I'm not sure it works for every corner case. >> >>> #+begin_src julia >> >>> let paths = [expanduser("~/.guix-profile"), >> >>"/run/current-system/profile"] >> >>> ("GUIX_ENVIRONMENT" in keys(ENV)) && push!(paths, >> >>> ENV["GUIX_ENVIRONMENT"]) >> >>> empty!(LOAD_PATH) >> >>> push!.(Ref(LOAD_PATH), joinpath.(paths, "share/julia/packages/")) >> >>> push!(LOAD_PATH, "@stdlib") >> >>> push!.(Ref(DEPOT_PATH), joinpath.(paths, "share/julia/")) >> >>> nothing >> >>> end >> >>> #+end_src >> >> >> >>Could this perhaps be handled by a profile hook that is included only >> >>when the profile manifest contains a julia package? >> > >> > Or simply with an environment variable? GUIX_JULIA_PATH or something? >> >> If this is the route you go down, please ensure that it can be used as a >> search path with more than one directory. This would make it possible >> to extend a Julia environment with the contents of more than one >> profile. >> >> -- >> Ricardo >> >>