Hi,
I am happy to announce the first stable release of opam-bin
,
version 1.0.0, a framework to CREATE, USE and SHARE binary relocatable
packages with opam, to speed-up installation of packages. It is easily
installable from opam-repository, and available on Github:
With opam-bin, you can :
- build binary packages while installing their source counterpart with opam
- automatically reuse previously created binary packages instead of
compiling them again - export and share your binary packages as part of opam repositories
for other users/computers to use
opam-bin
is a framework in 3 parts :
- a tool
opam-bin
to create binary packages:
https://ocamlpro.github.io/opam-bin - a set of patches to make some packages relocatable (
opam-bin
will
apply them automatically when building packages), including patches to
make the OCaml distribution relocatable from version 4.02.0 to 4.11.1:
https://github.com/ocamlpro/relocation-patches - a set of contributed repositories of binary packages. For now, there
is only one contribution, during the summer, by Origin Labs :
https://www.origin-labs.com/opam-bin/debian10.4-amd64/
containing 5 repos, among which the “4.10.0” repo contains more than
1800 packages. These repos can be used DIRECTLY WITH opam, WITHOUT
USING opam-bin.
This is the first stable release:
- Specific support has been added in the current
master
branch of
opam
to make working with this version more convenient, by printing
pre- and post- installation messages. Yet, it will still work with
previous version of opam, but with no output on the terminal when
calling opam. - The
sharing
option can be enabled to share files with hard-links
between switches, making the creation of new local switches almost
costless in time and disk space.
opam-bin
is a collaborative work between OCamlPro and Origin Labs.
opam-bin
is particularly useful if you create many local switches,
as they become unexpensive. Tools like Drom (an OCaml project
scaffolder, https://ocamlpro.github.io/drom) can take advantage of
that to provide a cargo-like experience.
Enjoy !
Fabrice LE FESSANT