[opam-devel] OPAM + Docker
nicolas at braud-santoni.eu
Tue Nov 19 09:12:20 GMT 2013
On 19/11/2013 05:03, ygrek wrote:
> On Mon, 18 Nov 2013 10:43:59 -0800
> Anil Madhavapeddy <anil at recoil.org> wrote:
>> I've made some notes about using OPAM and Docker for easier local bulk builds here:
>> One semi-interesting issue I've already discovered with depexts is that just a "ubuntu" tag isn't enough, since some depexts are only valid in a specific version of Ubuntu.
>> This unfortunately feels like it might be a job for the constraint system and not for flat tags (since I want to say >precise or <saucy). We could do it with flat tags for now, but I have a bad feeling that it'll get unmanageable quite quickly..
1. Using the version numbers might be much less confusing than the codenames
2. I agree that we need to agree on useable syntax (and semantics) for
depexts. See https://github.com/ocaml/opam/issues/991
> I personally dislike this depexts field to mention OS packages at all.
This seems to be the most sane and generic option if we wish to interact
with the system's package manager .
> Maybe it's better to specify which external libraries are needed (as .so or as pkg-config files) and then
> use native OS way (at installation time) to determine which package contains that .so or .pc file (e.g. apt-file on Debian).
Not all package managers provide these kind of facilities.
That is someting that, for instance, will not exist in any source-based
distribution that I am aware of.
Moreover, it seems unwise to fill in information that ought to belong in
the distribution's packages :
if I depend on libfoo, major version 1, any minor version, should
I specify “libfoo-1.so”, “libfoo-1(.\d+)*.so” (dots implicitly
escaped), or some crazier scheme ?
Where will I look for the .so ?
(And while using pkg-config is better, it still isn't supported by all
> If apt-file is not present it is at least possible to tell (with dpkg -S or ldconfig -p) whether the .so is present and what is
> precisely needed for the build to succeed (and mention how to find the needed package manually).
Don't the conf-* packages already achieve this (in an hackish way) ?
> It may be even possible to gater information about .so files automatically - by inspecting generated cmxa and cma
> files with ocamlobjinfo - so it can be done by ocamlot or something like that.
How would you get them to build in the first place ?
: Though our definition should include thing such as Homebrew (and
other equivalents for OSX and/or Windows).
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 836 bytes
Desc: OpenPGP digital signature
More information about the opam-devel