OpamPath.SwitchSourceSwitch related paths
Locations of opam internal dirs and files
The switch prefix: $opam/$switch
The name of the subdir of the switch prefix where opam data is stored (".opam-switch")
The subdirectory of the prefix where opam data lives: $opam/$switch/.opam-switch
lock file: $meta/lock
The directory where backups are stored for this switch
Backup file for state export
Switch selections $meta/switch-state
Temporary folders used to decompress and compile the corresponding archives: $meta/build/$packages
Temporary folders used to decompress the corresponding archives, used only for package removal $meta/remove/$packages
Temporary folder: $meta/build
Temporary folder: $meta/remove
Installed files for a given package: $meta/install/$name.install
File registering the changes made by the installation of the given package $meta/install/$name.changes
Installed files: $meta/install/
Packages to reinstall on next upgrade: $meta/reinstall
Configuration folder: $meta/config
Global config for the switch: $meta/switch-config
Package-specific configuration file for installed packages: $meta/config/$name.config
Clean, uncompressed sources for this switch: $meta/sources/
Clean, uncompressed source directory for this package: $meta/sources/$name.$version/
Temporary switch-local directory where a by-hash map of extra files may be stored. This is used for switch-imports: $meta/extra-files-cache
Extra file with the given hash from the temporary switch-import cache: $meta/extra-files-cache/HASH
Mirror of the sources for a given pinned package: $meta/sources/$name/ (without version)
Cached environment updates.
Like environment, but from the switch prefix dir
A Nix specific environment file
Directory where the metadata of installed packages is mirrored. $meta/packages/
Cache file for the mirrored installed package metadata $meta/packages/cache
The mirror of the package definition for the given installed package $meta/packages/$name.$version/
The mirror of the opam file for the given installed package $meta/packages/$name.$version/opam
val installed_opam_files_dir :
t ->
OpamTypes.switch ->
OpamTypes.package ->
OpamTypes.dirnameMirror of the extra files attached to the package definitions of installed packages $meta/packages/$name.$version/files/
Locations for the visible part of the installation
Fuctorised version of Default, for replicating a switch's layout in non-switch contexts
Actual config handling the global-config.config indirections
Package-independent dirs
val get_stdpath :
t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.std_path ->
OpamTypes.dirnameLibrary path: $prefix/lib
DLL paths
toplevel path: $prefix/lib/toplevel
Documentation path: $prefix/doc/
Shared directory: $prefix/share
Etc directory: $prefix/etc
val man_dir :
?num:string ->
t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.dirnameMan pages path: $prefix/man/. The optional num argument will add a manN suffix if specified
Man pages pathes: $prefix/man/manN/
Installed binaries: $prefix/bin
Installed system binaries: $prefix/sbin
Package dependent dirs
val lib :
t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.name ->
OpamTypes.dirnameLibrary path for a given package: $prefix/lib/$name
val doc :
t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.name ->
OpamTypes.dirnameDocumentation path for a given package: $prefix/doc/$name
Share directory for a given package: $prefix/share/$package
val etc :
t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.name ->
OpamTypes.dirnameEtc directory for a given package: $prefix/etc/$package