tarides / opam-monorepo

Assemble dune workspaces to build your project and its dependencies as a whole
ISC License
130 stars 27 forks source link

Disable filtering of available packages for availability of their depexts #322

Closed Leonidas-from-XIV closed 2 years ago

Leonidas-from-XIV commented 2 years ago

OPAM by default filters out packages for which the system on which it is running does not have the depexts. Which is nice in theory but when building a lockfile we want all packages to be available.

The problem here is that some configurations do not have a queryable package list, e.g. when using Docker containers the package list might have been deleted to save on space in the container, thus available_packages would be just a subset and missing packages, despite these existing in the OPAM repositories.

This is the reason why on the Tezos CI it needs apk update because if the package list is missing it will just silently exclude a lot of the necessary conf-* packages. I tested it locally in a Docker container built in the same way as Tezos where I could reproduce the issue and disabling this in the config makes it work out of the box, without the need for workarounds.