[opam-devel] [MirageOS-devel] Offline use of mirage?
Anil Madhavapeddy
anil at recoil.org
Sat Feb 15 11:59:51 GMT 2014
On 14 Feb 2014, at 17:05, Louis Gesbert <gesbert at antislash.info> wrote:
>
>> For this to work, though, we'll need to come up with a list of all the packages that will be needed to pass to `opam-admin make`. I notice that "opam-admin make --help" tells me this:
>>
>> -r, --recursive
>> Recurse among the transitive dependencies.
>>
>> --resolve
>> A more advanced version of `--recursive': will attempt to resolve
>> your installation with all dependencies in the best way possible
>> and build the archives accordingly.
>>
>> CCing opam-devel: what on earth does the latter entry mean? :-) What's the downside of using --resolve for everything instead of -r? If there's none, why not get rid of -r entirely?
>
> True, `--recursive` is mostly here for historical reasons. It will actually download _all_ versions of the dependencies. `--resolve` is a bit less predictable but will give you one usable snapshot of the universe.
>
> I've nothing against removing `--recursive`, it's probably not used.
>
> A nice addition would be the ability to prune the repository of unneeded package definitions : for now it keeps them all, just downloads a subset of the archives. That wouldn't be difficult.
Thanks for clarifying this! It sounds like `--resolve` (with just one version per package) would work fine for our needs to use Mirage offline. I've sent a pull request to OPAM to (hopefully) clarify the man page wording.
https://github.com/ocaml/opam/pull/1178
-a
More information about the opam-devel
mailing list