Personal tools
     DOCUMENTATION

Conary:Configuration

From rPath Wiki

Jump to: navigation, search

Conary's configuration may be defined in the configuration file conaryrc, which can exist in three possible locations:

  • The current working directory: ./conaryrc
  • The user's home directory: $HOME/.conaryrc
  • The system configuration directory: /etc/conaryrc

Configuration directives consisting of "name value" pairs specified in ./conaryrc override those specified in $HOME/.conaryrc which in turn, override those specified in /etc/conaryrc.

The following table lists valid conaryrc file directives, their default values, and a description of each directive's purpose; directives appearing in bold text are most commonly required.

Directive Default Value Description
archDirs/etc/conary/arch, /etc/conary/distro/arch, ~/.conary/archSpecify directories containing architecture definition files
autoResolveFalseWhether to resolve dependencies by default when installing
autoResolvePackagesTrueConary will install the package a component dependency is resolved to when this option is set to True.

buildFlavorNoneThe flavor that Conary will use when building troves.

buildLabelNoneThe default label for troves during source code operations (checkout, diff, etc) and for cooks.

buildPath~/conary/buildsThe path packages are built under.
cleanAfterCookTrueWhether to remove the contents of the build directory created by a successful cvc cook operation.

contactNoneContact information for the builder of the package; can be any string, but it should be an email address or a URL.
contextNoneSpecify a particular context to use by default, for example in the conaryrc of a specific directory used in operations pertaining to a specific project.
dbpath/var/lib/conarydbThe path for the system database (relative to root)
debugExceptionsFalseNormally errors in Conary itself cause an error message to be displayed and Conary exits. If this is set to true the python debugger is invoked when the exception occurs.
debugRecipeExceptionsFalseNormally errors in recipes cause an error message to be displayed and Conary exits. If this is set to true the python debugger is invoked when the exception occurs.
defaultMacros/etc/conary/macrosSpecify default location of the macros file
downloadRateLimit0Specify a bandwidth limit (in bytes per second) for Conary's download rate
emergeUseremergeUser to switch to for conary emerge operations
entitlementDirectory/etc/conary/entitlementsSpecify directories where Conary should expect to find entitlements
environmentNoneSpecify an environment variable and its associated value to set (or, if no value is provided, the environment variable to unset) while building packages. These may be set within contexts, and the values may include macros.

excludeTrovesNoneA space-separated list of regular expressions. Troves whose names match any of the regular expressions in this list are only installed if they are specifically requested.

flavorNoneThe flavor that Conary will use to find troves to install when the trove is not yet installed on the system, or when updating troves, to fill in any flavors not specified in the trove. It is specified using the same syntax as flavors are specified on the command line.
fullFlavorsFalseBy default, Conary tries to make a guess at what parts of a trove's flavor will be relevant to you by looking at what troves you have installed, your install flavors, and the other troves with the same name being displayed. Setting this directive to True causes Conary to display the full flavor.
FullVersionsFalseFull version strings are displayed instead of abbreviated version numbers.

installLabelPathNoneThe labels from which to install and query, specified in the order of use. If installLabelPath is not set, Conary will exit with an error message.
interactiveFalseIf set to True, Conary will ask for confirmation before performing actions that modify system or repository state.
localRollbacksFalseWith this directive set to True, Conary will preserve files from changes locally so that a rollback might be performed without access to a repository.
logFile/var/log/conary, ~/.conary/logSpecify Conary's log output file
lookaside~/conary/cacheThe transient lookaside cache, used during building of packages.
macrosNoneSpecify macros which will override the values of macros in Conary recipes.

mirrorDirs/etc/conary/mirrorsSpecify directories containing mirror list files used by mirror:// URLs. The default mirror lists located in /etc/conary/mirrors include debian, fedora, gentoo, and sourceforge.

nameNoneThe name of the packager (used for changelog entries)
pinTrovesNoneSpecify a list of troves to pin by default
policyDirs/usr/lib/conary/policy, /etc/conary/policy, ~/.conary/policySpecify location of Conary policy directories
proxyNoneused to define the proxy that Conary will use. This can be an authenticated proxy, a secure proxy, or standard proxy. For more information, see Proxy Information
pubRing/etc/conary/pubring.gpg, ~/.gnupg/pubring.gpgThe filename of the OpenPGP Keyring to refer to for signature keys
quietTrueWhen this directive is set to True, Conary's output is less verbose.
recipeTemplateNoneSpecify a recipe template (useful in a context) for use with the cvc newpkg command.
recipeTemplateDirs~/.conary/recipeTemplates, /etc/conary/recipeTemplates]]Specify directory paths to search for recipe templates.

repositoryMaphttp://hostname/conary/Maps a hostname from a label to a full URL for a networked repository. Multiple lines can be provided.
resolveLevel1Determines the level of effort conary will put into resolving dependencies. resolveLevel 1: Attempt to resolve dependencies by adding new troves that fulfill those missing dependencies. resolveLevel 2: If updating trove 'a' removes a dependency needed by trove 'b', attempt to update 'b' to solve the dependency issue.

root/The path to install files into.
show LabelsFalseIf set to True, Conary displays <label>/<revision> instead of abbreviated version numbers.
showComponentsFalseWhether to display components

signatureKeyNoneKey fingerprint of default OpenPGP key used for packet signatures. If not specified, troves will not be signed.

signatureKeyMapNone Provides a mechanism to map an OpenPGP Key from a local keyring to a repository.
sourceSearchDirCurrent working directory (.)An extra path (within the root) to search for source files
threadedTrueWhether to execute in multi-threaded mode
tmpDir/var/tmpDirectory for temporary files
trustThreshold0Specify a threshold of trust for trove signatures, with accepted values being: 0 - Any valid signature is trusted. 4 - Marginal trust of signatures. 5 - Full trust of signatures. 6 - Signatures are your own.
updateThreshold10Defines the upper limit on the number of unrelated troves that will be downloaded at one time from the repository.
uploadRateLimit0Specify a bandwidth limit (in bytes per second) for Conary's download rate
useDirs/etc/conary/use, /etc/conary/distro/use, ~/.conary/useSpecify location of use flag file directories

userNoneEach entry maps a hostname (or set of hostnames specified as a glob) to the username and password to use (Conary will prompt interactively if a necessary user entry is missing). Note that "hostname", in this context, refers to the hostname part of a label, not the hostname used to access a repository. (which may not be the same if a repositoryMap is being used)

Example

Here's a useful example to copy to $HOME/.conaryrc and modify:

buildLabel       conary.example.com@rpl:devel
buildPath        /home/janedoe/conary/builds
contact          Jane.Doe@example.com
installLabelPath conary.rpath.com@rpl:devel contrib.rpath.org@rpl:devel
lookaside        /home/janedoe/conary/cache
name             Jane Doe
repositoryMap    conary.example.com https://conary.example.com/path/for/conary/
user             conary.example.com example-username example-password
user             *.rpath.org rBuilder-Online-username rBuilder-Online-password
#root            /home/janedoe/conary/testroot
signatureKey     F7440D78FE813C882212C2BF8AC2828190B1E477

Conary Configuration Contexts

Several Conary configuration directives detailed on this page may be used within special configuration blocks contained within the conaryrc file; these configuration contexts offer tremendous flexibility in working with multiple projects and repositories. See Conary:Contexts for more information on configuration contexts.