[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#38546] [PATCH 0/3] Julia: fix package build and add julia-xyz
From: |
nixo |
Subject: |
[bug#38546] [PATCH 0/3] Julia: fix package build and add julia-xyz |
Date: |
Mon, 9 Dec 2019 14:36:25 +0100 |
Hello Guix!
Changes:
This set of patches improve the state of julia-build-system.
1. set path JULIA_LOAD_PATH to enable installing packages, and
JULIA_DEPOT_PATH to allow guix-precompiled cache to be recognized by julia. To
do this, a small "hack" with libfaketime was required (julia decides if the
cache is valid by comparing source ".jl" mtime with cache ".ji" file, in which
julia stores a timestamp. We need to force this timestamp to be equal to the
mtime of guix-store files).
2. Enable package tests
3. Add a first package (julia-compat) definition. If this is fine, I'll start
pushing many many more (I have them ready, but I need to update many of them)
Thanks! :)
One note: with this PATH changes, julia will not be able to find packages
installed by Julia Pkg3.jl anymore. This is expected (it should happen for R,
python, emacs... too) but since we still need to merge the packages, this
patch renders julia pretty unusable. The workaround is for users to add to
JULIA_LOAD_PATH and JULIA_LOAD_PATH local user-writable folders, activate a
profile, and then install packages manually:
#+begin_src bash
JULIA_LOAD_PATH=/tmp/julia:$JULIA_LOAD_PATH
JULIA_DEPOT_PATH=/tmp/julia:$JULIA_DEPOT_PATH julia
#+end_src
nixo (3):
gnu: julia: Set to JULIA_LOAD_PATH and JULIA_DEPOT_PATH variables.
gnu: julia-build-system: Enable tests.
gnu: julia-xyz: Add julia-compat.
#+begin_src julia
using Pkg
Pkg.activate("/tmp/julia")
Pkg.add("PACKAGE_NAME")
#+end_src
--
2.24.0
gnu/packages/julia-xyz.scm | 62 +++++++++++++
gnu/packages/julia.scm | 146 +++++++++++++++---------------
guix/build-system/julia.scm | 4 +-
guix/build/julia-build-system.scm | 28 ++++--
4 files changed, 159 insertions(+), 81 deletions(-)
create mode 100644 gnu/packages/julia-xyz.scm
- [bug#38546] [PATCH 0/3] Julia: fix package build and add julia-xyz,
nixo <=