Portable External Dependencies for Dune Package Management

An equivalent way would be to create platform-specific lock dirs (Dune supports generating multiple lock dirs and setting the relevant variables by declaring multiple lock directories in dune-workspace) and then in your CI you chose the relevant lock directory to use manually.

1 Like

@hannes I’m interested in these files. Is the file format documented somewhere ? A quick look on the one you mentioned seems to indicate that they are more than a switch-state.

as far as i know it is not currently documented but we should. I’ve opened a ticket: ocaml/opam#6595. As far as i understand the format evolved from the simple switch-state format back when the switch export/import capabilities were first added in 2012, and then features got slowly added to it over time but we forgot to add an entry to the manual when things started diverging.

3 Likes