package opam-format

  1. Overview
  2. Docs

Defines the file hierarchy in ~/.opam

Global paths

Type of path root

val state_cache : t -> OpamTypes.filename

State cache

val state_cache_dir : t -> OpamTypes.dirname

Directory containing state cache

val lock : t -> OpamTypes.filename

Global lock file for the whole opamroot. Opam should generally read-lock this (e.g. initialisation and format upgrades require a write lock)

Main configuration file: $opam/config

val redirected : t -> OpamFilename.t

Redirection file for opam root: $opam/redirected-opamroot

val init_config_files : unit -> OpamFile.InitConfig.t OpamFile.t list

The list of configuration files location used by default (/etc/opamrc and ~/.opamrc). More general (lower priority) first.

val config_lock : t -> OpamTypes.filename

Lock for updates on the main config file (write lock when changes to switches, repositories lists are expected. No lock needed otherwise)

val repos_lock : t -> OpamTypes.filename

Global lock file for the repositories mirrors: $opam/repo/lock

val repos_config : t -> OpamFile.Repos_config.t OpamFile.t

Global config file for the repositories mirrors: $opam/repo/repos-config

val init : t -> OpamTypes.dirname

Init scripts location: $opam/opam-init

val hooks_dir : t -> OpamTypes.dirname

Installation dir for configured hooks: $$opam/opam-init/hooks

val log : t -> OpamTypes.dirname

Log dir $opam/log

val backup_dir : t -> OpamTypes.dirname

The directory where global backups are stored

Backup file for state export

val plugin_prefix : string

The prefix for plugin commands ("opam-")

val plugins : t -> OpamTypes.dirname

The directory for plugins data $opam/plugins

val plugins_bin : t -> OpamTypes.dirname

The directory for shared plugin binaries $opam/plugins/bin

val plugin_bin : t -> OpamTypes.name -> OpamTypes.filename

The globally installed binary of the given plugin $opam/plugins/bin/opam-foo

The directory for a given plugin's data $opam/plugins/$name. "bin" is forbidden.

val last_env : t -> OpamTypes.dirname

The last environment used regardless the switch

module type LAYOUT = sig ... end
module Switch : sig ... end

Switch related paths

module Builddir : sig ... end

Location of package-specific files relative to their build directory

OCaml

Innovation. Community. Security.