OPAM-PIN(1)

NAME

opam-pin - Pin a given package to a specific version.

SYNOPSIS

opam pin [OPTION]... [PACKAGE] [PIN]

DESCRIPTION

This command will 'pin' a package to a specific version, or use a specific source path for installing and upgrading the package. Using opam pin <package> none will undo the 'pinned' status of <package>.

It is possible to pin a package to a specific git commit/tag/branch with opam pin <package> </path/to/git>#<commit>.

By default, local directories will be pinned as `local` backends. You can change that default choice by forcing a given backend kind using the --kind option.

To list all the currently pinned packages, call the opam pin without arguments or use --list.

ARGUMENTS

PACKAGE
    Package name.

PIN Specific version, local path, git or darcs url to pin the package to, or 'none' to unpin the package.

OPTIONS

-e, --edit
    Edit the OPAM file associated to the given package.

-f, --force
    Disable consistency checks.

-k KIND, --kind=KIND
    Force the kind of pinning.

-l, --list
    List the currently pinned packages.

-u, --unpin
    Unpin the given package.

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.