Module OpamPath.SwitchSource
Switch 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
val install :
OpamPath.t ->
OpamTypes.switch ->
OpamTypes.name ->
OpamFile.Dot_install.t OpamFile.tInstalled 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
val config :
OpamPath.t ->
OpamTypes.switch ->
OpamTypes.name ->
OpamFile.Dot_config.t OpamFile.tPackage-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
val installed_package_dir :
OpamPath.t ->
OpamTypes.switch ->
OpamTypes.package ->
OpamTypes.dirnameThe mirror of the package definition for the given installed package $meta/packages/$name.$version/
val installed_opam :
OpamPath.t ->
OpamTypes.switch ->
OpamTypes.package ->
OpamFile.OPAM.t OpamFile.tThe mirror of the opam file for the given installed package $meta/packages/$name.$version/opam
val installed_opam_files_dir :
OpamPath.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 :
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.std_path ->
OpamTypes.dirnameLibrary path: $prefix/lib
val stublibs :
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.dirnameDLL paths
val toplevel :
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.dirnametoplevel path: $prefix/lib/toplevel
Documentation path: $prefix/doc/
Shared directory: $prefix/share
Etc directory: $prefix/etc
val man_dir :
?num:string ->
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.dirnameMan pages path: $prefix/man/. The optional num argument will add a manN suffix if specified
val man_dirs :
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.dirname listMan pages pathes: $prefix/man/manN/
Installed binaries: $prefix/bin
Installed system binaries: $prefix/sbin
Package dependent dirs
val lib :
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.name ->
OpamTypes.dirnameLibrary path for a given package: $prefix/lib/$name
val doc :
OpamPath.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 :
OpamPath.t ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.name ->
OpamTypes.dirnameEtc directory for a given package: $prefix/etc/$package