Client library for opam 2.1
val select_packages : [ `Atom of OpamTypes.atom | `Filename of OpamTypes.filename | `Dirname of OpamTypes.dirname ] list -> 'a OpamStateTypes.switch_state -> 'a OpamStateTypes.switch_state * OpamTypes.package_set

Select packages to lock. If a package have at least one of its direct dependencies not installed in the switch, it is dropped. Returns the state with non present packages pinned, and kept packages.

val lock_opam : ?only_direct:bool -> 'a OpamStateTypes.switch_state -> OpamFile.OPAM.t -> OpamFile.OPAM.t

Returns the locked opam file, according its depends, depopts, and pins.