vic / asdf-ocaml Goto Github PK
View Code? Open in Web Editor NEWOCaml plugin for ASDF version manager
Home Page: https://github.com/asdf-vm/asdf
License: Apache License 2.0
OCaml plugin for ASDF version manager
Home Page: https://github.com/asdf-vm/asdf
License: Apache License 2.0
Hello!
The installer for this plugin prints the following message upon completion:
1. To configure OPAM in the current shell session, you need to run:
eval (opam config env --root=/home/louis/.asdf/installs/ocaml/4.06.0)
2. To correctly configure OPAM for subsequent use, add the following
line to your profile file (for instance ~/.config/fish/config.fish):
. /home/louis/.asdf/installs/ocaml/4.06.0/opam-init/init.fish > /dev/null 2> /dev/null or true
3. To avoid issues related to non-system installations of `ocamlfind`
add the following lines to ~/.ocamlinit (create it if necessary):
let () =
try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
with Not_found -> ()
;;
It seems that this would be incorrect as versions change.
What's the recommended way to configure this when using this plugin?
louispilfold ~ $ asdf install ocaml 4.07.1
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg
command on your system.
- you won't be able to use darcs repositories unless you install the darcs
command on your system.
[WARNING] Recommended external solver aspcud not found.
=-=- Fetching repository information =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 🐫
[default] synchronized from https://opam.ocaml.org
[NOTE] The repository 'default' will be *permanently* redirected to
https://opam.ocaml.org/1.2.2 (opam-version < "2.0~")
[default] synchronized from https://opam.ocaml.org/1.2.2
Cannot find /home/louispilfold/.asdf/installs/ocaml/4.07.1/compilers/4.07.1/4.07.1/4.07.1.comp: 4.07.1 is not a valid compiler name.
[ERROR] Initialisation failed
OpamGlobals.Exit(1)
mv: cannot move '/tmp/ocaml_onH7qnB/opam' to '/home/louispilfold/.asdf/installs/ocaml/4.07.1/4.07.1/bin/': No such file or directory
4.07.0 does not have the same problem
Is there any hope for also having the plugin build and install aspcud or in general some external resolver? OPAM is barely useful without one -- the very first package I wanted to install with it, install claims it isn't there although I can do info etc on it just fine. Apparently this happens because the internal resolver is junk.
I'd just install one of them with yum but, ha ha, none of them are in the repos for Fedora or RHEL. And really, it'd be nice to have it all packaged together here, if it's possible.
Hi,
Currently asdf-ocaml initializes a switch in the asdf/releases directory during installation (the line ./opam init --yes --root $install_path --comp $release
in install
).
Does this mean that package are also stored in this directory and 'local projects/switches' are not possible? If so I'd like to add OPAMROOT=$ASDF_INSTALL_PATH; export OPAMROOT
to exec-env
to ensure I don't have to set it manually. I can of course create a CR for this.
Best regards,
--Martin
It already works correctly for Linux. I don't know why, but test on macOS still falling, So I need to investigate that more...
When tried to install recent versions of ocaml got the following error
asdf install ocaml 4.08.1
downloading latest opam...
opam 100%[==========================================================>] 5,82M 1,35MB/s за 6,8s
installing specified version of ocaml...
[NOTE] Will configure from built-in defaults.
Checking for available remotes: rsync and local, git, mercurial, darcs. Perfect!
<><> Fetching repository information ><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
<><> Required setup - please read <><><><><><><><><><><><><><><><><><><><><><><>
In normal operation, opam only alters files within ~/.opam.
However, to best integrate with your system, some environment variables
should be set. If you allow it to, this initialisation step will update
your bash configuration by adding the following line to ~/.bash_profile:
test -r /home/roman/.asdf/installs/ocaml/4.08.1/opam-init/init.sh && . /home/roman/.asdf/installs/ocaml/4.08.1/opam-init/init.sh > /dev/null 2> /dev/null || true
Otherwise, every time you want to access your opam installation, you will
need to run:
eval $(opam env)
You can always re-run this setup with 'opam init' later.
Do you want opam to modify ~/.bash_profile? [N/y/f]
(default is 'no', use 'f' to choose a different file) A hook can be added to opam's init scripts to ensure that the shell remains in sync with the opam environment when they are loaded.
Set that up? [y/N] y
[ERROR] No compiler matching '4.08.1' found, use 'opam switch list-available' to see what is available, or use '--packages' to
select packages explicitly.
mv: unable to move '/tmp/ocaml_89YOGZm/opam' to '/home/roman/.asdf/installs/ocaml/4.08.1/4.08.1/bin/': No such file or directory
while the version 4.06.1 installed well
Hi, I just a question about using this plugin with opam (noob to ocaml in general).
After playing around with it for a bit, it seems opam will need to download the compiler version itself regardless of any compilers that have been downloaded previously through this plugin. So, essentially, you get two versions of a compiler in order to use opam. Is this expected? Or am I just configuring it wrong.
Thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.