package opam-client

  1. Overview
  2. Docs

Module OpamActionSource

Handles concrete actions on packages, like installations and removals

Sourceval download_package : OpamStateTypes.rw OpamStateTypes.switch_state -> OpamTypes.package -> (string option * string) option OpamProcess.job

download_package t pkg downloads the source of the package pkg into its locally cached source dir. Returns Some (short_errmsg option, long_errmsg) on error, None on success. See OpamTypes.download.Not_available.

This doesn't update dev packages that already have a locally cached source.

Sourceval download_shared_source : OpamStateTypes.rw OpamStateTypes.switch_state -> OpamFile.URL.t option -> OpamTypes.package list -> (string option * string) option OpamProcess.job

download_same_source_package t url packages As download_package, download upstream shared source url between packages.

Sourceval prepare_package_source : 'a OpamStateTypes.switch_state -> OpamTypes.package -> OpamTypes.dirname -> exn option OpamProcess.job

prepare_package_source t pkg dir updates the given source dir with the extra downloads, overlays and patches from the package's metadata applied.

prepare_package_build env opam pkg dir is a lower level version of `prepare_package_source`, without requiring a switch and without handling extra downloads.

Sourceval build_package : OpamStateTypes.rw OpamStateTypes.switch_state -> ?test:bool -> ?doc:bool -> ?dev_setup:bool -> OpamTypes.dirname -> OpamTypes.package -> exn option OpamProcess.job

build_package t build_dir pkg builds the package pkg within build_dir. Returns None on success, Some exn on error. See download_package and prepare_package_source for the previous steps.

Sourceval install_package : OpamStateTypes.rw OpamStateTypes.switch_state -> ?test:bool -> ?doc:bool -> ?dev_setup:bool -> ?build_dir:OpamTypes.dirname -> OpamTypes.package -> (OpamFile.Dot_config.t option, exn) OpamTypes.either OpamProcess.job

install_package t pkg installs an already built package. Returns updated .config file on success, the exception on error. Do not update opam's metadata. See build_package to build the package.

Sourceval removal_needs_download : 'a OpamStateTypes.switch_state -> OpamTypes.package -> bool

Find out if the package source is needed for uninstall

Sourceval remove_package : OpamStateTypes.rw OpamStateTypes.switch_state -> ?silent:bool -> ?changes:OpamDirTrack.t -> ?force:bool -> ?build_dir:OpamTypes.dirname -> OpamTypes.package -> unit OpamProcess.job

Removes a package. If changes is unspecified, it is read from the package's change file. if force is specified, remove files marked as added in changes even if the files have been modified since.

Returns true whenever remove_package is a no-op.

Sourceval cleanup_package_artefacts : OpamStateTypes.rw OpamStateTypes.switch_state -> OpamTypes.package -> unit

Removes auxiliary files related to a package, after checking that they're not needed

Compute the set of packages which will need to be downloaded to apply a solution. Takes a graph of atomic actions.

OCaml

Innovation. Community. Security.