OPAM(1)

NAME

opam - source-based OCaml package management

SYNOPSIS

opam COMMAND ...

DESCRIPTION

OPAM is a package manager for OCaml. It uses the powerful mancoosi tools to handle dependencies, including support for version constraints, optional dependencies, and conflict management.

It has support for different remote repositories such as HTTP, rsync, git, darcs and mercurial. It handles multiple OCaml versions concurrently, and is flexible enough to allow you to use your own repositories and packages in addition to the central ones it provides.

Use either opam <command> --help or opam help <command> for more information on a specific command.

COMMANDS

config
    Display configuration options for packages.

help
    Display help about OPAM and OPAM commands.

init
    Initialize OPAM state.

install
    Install a list of packages.

list
    Display the list of available packages.

pin Pin a given package to a specific version.

reinstall
    Reinstall a list of packages.

remove
    Remove a list of packages.

repository
    Manage OPAM repositories.

search
    Search into the package list.

show
    Display information about specific packages.

switch
    Manage multiple installation of compilers.

update
    Update the list of available packages.

upgrade
    Upgrade the installed package to latest version.

COMMANDS ALIASES

info
    An alias for show.

remote
    An alias for repository.

uninstall
    An alias for remove.

COMMON OPTIONS

These options are common to all commands.

--color=WHEN (absent=auto)
    Colorize the output. WHEN must be `always', `never' or `auto'.

--compat-mode-1.0
    Compatibility mode with OPAM 1.0

--debug
    Print debug message on stdout. This is equivalent to setting $OPAMDEBUG to a non-empty value.

--git-version
    Print the git version if it exists and exit.

--help[=FMT] (default=pager)
    Show this help in format FMT (pager, plain or groff).

--no-aspcud
    Do not use the external aspcud solver, even if available.

--no-base-packages
    Do not install base packages (useful for testing purposes). This is equivalent to setting $OPAMNOBASEPACKAGES to a non-empty string.

-q, --quiet
    Be quiet when installing a new compiler.

-r ROOT, --root=ROOT (absent=~/.opam)
    Use ROOT as the current root path. This is equivalent to setting $OPAMROOT to ROOT.

--strict
    Fail whenever an error is found in a package definition or a configuration file. The default is to continue silently if possible.

--switch=SWITCH
    Use SWITCH as the current compiler switch. This is equivalent to setting $OPAMSWITCH to SWITCH.

-v, --verbose
    Be more verbose. This is equivalent to setting $OPAMVERBOSE to a non-empty value.

--version
    Show version information.

-y, --yes
    Disable interactive mode and answer yes to all questions that would otherwise be asked to the user. This is equivalent to setting $OPAMYES to a non-empty string.

ENVIRONMENT VARIABLES

opam makes use of environment variables listed here.

OPAMCOLOR, when set to always or never, sets a default value for the --color option

OPAMCURL can be used to define an alternative for the 'curl' command-line utility to download files

FURTHER DOCUMENTATION

See https://opam.ocaml.org.

AUTHORS

Thomas Gazagnaire <thomas@gazagnaire.org>

Anil Madhavapeddy <anil@recoil.org>

Fabrice Le Fessant <Fabrice.Le_fessant@inria.fr>

Frederic Tuong <tuong@users.gforge.inria.fr>

Louis Gesbert <louis.gesbert@ocamlpro.com>

Vincent Bernardoff <vb@luminar.eu.org>

Guillem Rieu <guillem.rieu@ocamlpro.com>

BUGS

Check bug reports at https://github.com/OCamlPro/opam/issues.