Sophie

Sophie

distrib > Mageia > 6 > x86_64 > media > core-updates > by-pkgid > a039f46bdecdb20074dc367bcca6e5e9 > files > 3

libsolv-doc-0.6.30-1.1.mga6.x86_64.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Libsolv-Constantids(3)</title><link rel="stylesheet" type="text/css" href="docbook-xsl.css" /><meta name="generator" content="DocBook XSL Stylesheets V1.79.1" /></head><body><div xml:lang="en" class="article" lang="en"><div class="titlepage"><div><div><h2 class="title"><a id="idm140398732663488"></a>Libsolv-Constantids(3)</h2></div></div><hr /></div><div class="toc"><p><strong>Table of Contents</strong></p><dl class="toc"><dt><span class="section"><a href="#_name">1. Name</a></span></dt><dt><span class="section"><a href="#_description">2. Description</a></span></dt><dt><span class="section"><a href="#_special_strings">3. Special Strings</a></span></dt><dt><span class="section"><a href="#_solvable_attributes">4. Solvable Attributes</a></span></dt><dt><span class="section"><a href="#_special_solvable_attributes">5. Special Solvable Attributes</a></span></dt><dt><span class="section"><a href="#_solvable_architectures">6. Solvable Architectures</a></span></dt><dt><span class="section"><a href="#_dependency_ids">7. Dependency Ids</a></span></dt><dt><span class="section"><a href="#_data_types">8. Data Types</a></span></dt><dt><span class="section"><a href="#_repository_metadata">9. Repository Metadata</a></span></dt><dt><span class="section"><a href="#_repository_metadata_for_susetags_repos">10. Repository Metadata for Susetags Repos</a></span></dt><dt><span class="section"><a href="#_repository_metadata_for_rpmmd_repos">11. Repository Metadata for RpmMD Repos</a></span></dt><dt><span class="section"><a href="#_delta_package_attributes">12. Delta Package Attributes</a></span></dt><dt><span class="section"><a href="#_author">13. Author</a></span></dt></dl></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_name"></a>1. Name</h2></div></div></div><p>libsolv-constantids - fixed Ids for often used strings</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_description"></a>2. Description</h2></div></div></div><p>Constant Ids are Ids of strings that are often needed. They are defined
to ease programming and reduce the number of pool_str2id calls. The
constant Ids are part of the binary ABI of libsolv, a minor version
update will only add new constants and not change existing Ids to
maintain compatible. The on-disk solv format works does not use the
fixed Ids, but instead references the strings, so solv files can still
be read when the ABI is broken.</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_special_strings"></a>3. Special Strings</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>ID_EMPTY ""</strong></span>
</span></dt><dd>
  The empty string. It will always have Id 1.
</dd><dt><span class="term">
<span class="strong"><strong>SYSTEM_SYSTEM "system:system"</strong></span>
</span></dt><dd>
  The name of the always installed "system" solvable.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_solvable_attributes"></a>4. Solvable Attributes</h2></div></div></div><p>These are Ids for keyname of attributes. They can be used in the
lookup and storage functions to select the correct attribute in the
solvable. The descriptions below describe the intended semantics
of the values stored in the attribute with the keyname.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>SOLVABLE_NAME "solvable:name"</strong></span>
</span></dt><dd>
  The name of the package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_ARCH "solvable:arch"</strong></span>
</span></dt><dd>
  The architecture of the package. See the Solvable Architecture section
  for predefined architecture Id values.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_EVR "solvable:evr"</strong></span>
</span></dt><dd>
  The version of the package. It usually consists of some combination of
  the Epoch, the Version, and the Release of the solvable.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_VENDOR "solvable:vendor"</strong></span>
</span></dt><dd>
  A vendor string. Usually the company or group that created the binary
  package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_PROVIDES "solvable:provides"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that describe the capabilities
  that the package provides.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_OBSOLETES "solvable:obsoletes"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that describe the packages that this
  package replaces.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CONFLICTS "solvable:conflicts"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that describe the capabilities that
  this package conflicts with, i.e. that can’t be installed together with
  this package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_REQUIRES "solvable:requires"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that describe the capabilities that
  also must be installed when this package is installed.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_RECOMMENDS "solvable:recommends"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that describe the capabilities that
  also should be installed when this package is installed. It’s not an
  error if not all capabilities can be met.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_SUGGESTS "solvable:suggests"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that describe the capabilities that
  also useful to have installed when this package is installed. This is
  intended to provide a hint to the user about other packages.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_SUPPLEMENTS "solvable:supplements"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that define that this package should
  be installed if one of the capabilities is met. This is like the
  recommends attribute, but works in the reverse way.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_ENHANCES "solvable:enhances"</strong></span>
</span></dt><dd>
  Stores an array of dependency Ids that define that this package is
  useful to have installed if one of the capabilities is met. This is like
  the suggests attribute, but works in the reverse way.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_SUMMARY "solvable:summary"</strong></span>
</span></dt><dd>
  The summary should be a short string without any newlines that describes
  what a package does.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_DESCRIPTION "solvable:description"</strong></span>
</span></dt><dd>
  The description should be a more verbose description about what a
  package does. It may consist of multiple lines.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_DISTRIBUTION "solvable:distribution"</strong></span>
</span></dt><dd>
  The distribution is a short string that describes the OS and OS version
  this package is built for.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_AUTHORS "solvable:authors"</strong></span>
</span></dt><dd>
  A list of authors of this package. This attribute was used in SUSE
  packages.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_PACKAGER "solvable:packager"</strong></span>
</span></dt><dd>
  The person who created the binary package, see also the vendor attribute.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_GROUP "solvable:group"</strong></span>
</span></dt><dd>
  The package group that this package belongs to. See also the keywords
  attribute.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_URL "solvable:url"</strong></span>
</span></dt><dd>
  An URL that points to more information about the package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_KEYWORDS "solvable:keywords"</strong></span>
</span></dt><dd>
  list of keyword string IDs used for tagging this package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_LICENSE "solvable:license"</strong></span>
</span></dt><dd>
  The license(s) of this package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_BUILDTIME "solvable:buildtime"</strong></span>
</span></dt><dd>
  The seconds since the unix epoch when the binary package was created.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_BUILDHOST "solvable:buildhost"</strong></span>
</span></dt><dd>
  The name of the host on which the binary package was created.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_EULA "solvable:eula"</strong></span>
</span></dt><dd>
  If this attribute is present the user should be asked to accept the end
  user license agreement before the package gets installed.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CPEID "solvable:cpeid"</strong></span>
</span></dt><dd>
  A Common Platform Enumeration string describes the platform this package
  is intended for. See also the distribution attribute.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_MESSAGEINS "solvable:messageins"</strong></span>
</span></dt><dd>
  A message that should be displayed to the user when the package gets
  installed.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_MESSAGEDEL "solvable:messagedel"</strong></span>
</span></dt><dd>
  A message that should be displayed to the user when the package gets
  erased.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_INSTALLSIZE "solvable:installsize"</strong></span>
</span></dt><dd>
  The disk space in bytes needed when installing the package.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_DISKUSAGE "solvable:diskusage"</strong></span>
</span></dt><dd>
  A SUSE extension that stores for each directory the needed amount of
  disk space in kilobytes and inodes.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_FILELIST "solvable:filelist"</strong></span>
</span></dt><dd>
  A list of files that the package contains.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_INSTALLTIME "solvable:installtime"</strong></span>
</span></dt><dd>
  The seconds since the unix epoch when the binary package was installed
  on the system.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_MEDIADIR "solvable:mediadir"</strong></span>
</span></dt><dd>
  The directory on the repository that contains the package. If this
  attribute is set to void, the package architecture is used as
  directory.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_MEDIAFILE "solvable:mediafile"</strong></span>
</span></dt><dd>
  The filename on the repository that contains the package. If this
  attribute is set to void, the canonical file name of the package is
  used (i.e.  a combination of the name, version, architecture).
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_MEDIANR "solvable:medianr"</strong></span>
</span></dt><dd>
  The media number. This is an integer describing on which of a multi-part
  media set this package is on.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_MEDIABASE "solvable:mediabase"</strong></span>
</span></dt><dd>
  This attribute can be used to overwrite the repositories base url.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_DOWNLOADSIZE "solvable:downloadsize"</strong></span>
</span></dt><dd>
  The size of the binary package in bytes.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_SOURCEARCH "solvable:sourcearch"</strong></span>
</span></dt><dd>
  The architecture of the source package that this package belongs to.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_SOURCENAME "solvable:sourcename"</strong></span>
</span></dt><dd>
  The name of the source package that this package belongs to. If set
  to void, the package name attribute is used instead.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_SOURCEEVR "solvable:sourceevr"</strong></span>
</span></dt><dd>
  The version of the source package that this package belongs to. If set
  to void, the package version attribute is used instead.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_TRIGGERS "solvable:triggers"</strong></span>
</span></dt><dd>
  A list of package triggers for this package. Used in the transaction
  ordering code.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CHECKSUM "solvable:checksum"</strong></span>
</span></dt><dd>
  The checksum of the binary package. See the Data Types section for
  a list of supported algorithms.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_PKGID "solvable:pkgid"</strong></span>
</span></dt><dd>
  A string identifying a package. For rpm packages, this is the md5sum
  over the package header and the payload.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_HDRID "solvable:hdrid"</strong></span>
</span></dt><dd>
  A string identifying a package. For rpm packages, this is the sha1sum
  over just the package header.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_LEADSIGID "solvable:leadsigid"</strong></span>
</span></dt><dd>
  A string identifying the signature part of a package. For rpm packages,
  this is the md5sum from the start of the file up to the package header
  (i.e. it includes the lead, the signature header, and the padding).
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_HEADEREND "solvable:headerend"</strong></span>
</span></dt><dd>
  The offset of the payload in rpm binary packages. You can use this
  information to download just the header if you want to display
  information not included in the repository metadata.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CHANGELOG "solvable:changelog"</strong></span>
</span></dt><dd>
  The array containing all the changelog structures.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CHANGELOG_AUTHOR "solvable:changelog:author"</strong></span>
</span></dt><dd>
  The author of a changelog entry.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CHANGELOG_TIME "solvable:changelog:time"</strong></span>
</span></dt><dd>
  The seconds since the unix epoch when the changelog entry was written.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CHANGELOG_TEXT "solvable:changelog:text"</strong></span>
</span></dt><dd>
  The text of a changelog entry.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_special_solvable_attributes"></a>5. Special Solvable Attributes</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>RPM_RPMDBID "rpm:dbid"</strong></span>
</span></dt><dd>
  The rpm database id of this (installed) package. Usually a small
  integer number.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_PATCHCATEGORY "solvable:patchcategory"</strong></span>
</span></dt><dd>
  The category field for patch solvables. Should be named
  “update:category” instead.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_REBOOT "update:reboot"</strong></span>
</span></dt><dd>
  If this attribute is present the system should be rebooted after
  the update is installed.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_RESTART "update:restart"</strong></span>
</span></dt><dd>
  If this attribute is present the software manager should be run
  again after the update is installed.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_RELOGIN "update:relogin"</strong></span>
</span></dt><dd>
  If this attribute is present the user should log off and on again
  after the update is installed.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_MESSAGE "update:message"</strong></span>
</span></dt><dd>
  A message that should be shown to the user to warn him about anything
  non-standard.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_SEVERITY "update:severity"</strong></span>
</span></dt><dd>
  The severity of the update.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_RIGHTS "update:rights"</strong></span>
</span></dt><dd>
  Any legal or other rights of the update.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_COLLECTION "update:collection"</strong></span>
</span></dt><dd>
  The array containing the package list of the update.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_COLLECTION_NAME "update:collection:name"</strong></span>
</span></dt><dd>
  The name of the updated package.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_COLLECTION_EVR "update:collection:evr"</strong></span>
</span></dt><dd>
  The version of the updated package.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_COLLECTION_ARCH "update:collection:arch"</strong></span>
</span></dt><dd>
  The architecture of the updated package.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_COLLECTION_FILENAME "update:collection:filename"</strong></span>
</span></dt><dd>
  The file name of the updated package.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_REFERENCE "update:reference"</strong></span>
</span></dt><dd>
  The array containing the reference list of the update.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_REFERENCE_TYPE "update:reference:type"</strong></span>
</span></dt><dd>
  The type of the reference, e.g. bugzilla.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_REFERENCE_HREF "update:reference:href"</strong></span>
</span></dt><dd>
  The URL of the reference.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_REFERENCE_ID "update:reference:id"</strong></span>
</span></dt><dd>
  The identification string of the reference, e.g. the bug number.
</dd><dt><span class="term">
<span class="strong"><strong>UPDATE_REFERENCE_TITLE "update:reference:title"</strong></span>
</span></dt><dd>
  The title of the reference, e.g. the bug summary.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_REFERENCEFILE "product:referencefile"</strong></span>
</span></dt><dd>
  The basename of the product file in the package.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_SHORTLABEL "product:shortlabel"</strong></span>
</span></dt><dd>
  An identification string of the product.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_DISTPRODUCT "product:distproduct"</strong></span>
</span></dt><dd>
  Obsolete, do not use. Was a SUSE Code-10 product name.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_DISTVERSION "product:distversion"</strong></span>
</span></dt><dd>
  Obsolete, do not use. Was a SUSE Code-10 product version.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_TYPE "product:type"</strong></span>
</span></dt><dd>
  The type of the product, e.g. “base”.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_URL "product:url"</strong></span>
</span></dt><dd>
  An array of product URLs.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_URL_TYPE "product:url:type"</strong></span>
</span></dt><dd>
  An array of product URL types.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_FLAGS "product:flags"</strong></span>
</span></dt><dd>
  An array of product flags.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_PRODUCTLINE "product:productline"</strong></span>
</span></dt><dd>
  A product line string used for product registering.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_REGISTER_TARGET "product:regtarget"</strong></span>
</span></dt><dd>
  A target for product registering.
</dd><dt><span class="term">
<span class="strong"><strong>PRODUCT_REGISTER_RELEASE "product:regrelease"</strong></span>
</span></dt><dd>
  A release string for product registering.
</dd><dt><span class="term">
<span class="strong"><strong>PUBKEY_KEYID "pubkey:keyid"</strong></span>
</span></dt><dd>
  The keyid of a pubkey, consisting of 8 bytes in hex.
</dd><dt><span class="term">
<span class="strong"><strong>PUBKEY_FINGERPRINT "pubkey:fingerprint"</strong></span>
</span></dt><dd>
  The fingerprint of a pubkey, usually a sha1sum in hex. Old V3 RSA keys
  use a md5sum instead.
</dd><dt><span class="term">
<span class="strong"><strong>PUBKEY_EXPIRES "pubkey:expires"</strong></span>
</span></dt><dd>
  The seconds since the unix epoch when the pubkey expires.
</dd><dt><span class="term">
<span class="strong"><strong>PUBKEY_SUBKEYOF "pubkey:subkeyof"</strong></span>
</span></dt><dd>
  The keyid of the master pubkey for subkeys.
</dd><dt><span class="term">
<span class="strong"><strong>PUBKEY_DATA "pubkey:data"</strong></span>
</span></dt><dd>
  The MPI data of the pubkey.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_ISVISIBLE "solvable:isvisible"</strong></span>
</span></dt><dd>
  An attribute describing if the package should be listed to the user
  or not. Used for SUSE patterns.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_CATEGORY "solvable:category"</strong></span>
</span></dt><dd>
  The category of a pattern.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_INCLUDES "solvable:includes"</strong></span>
</span></dt><dd>
  A list of other patterns that this pattern includes.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_EXTENDS "solvable:extends"</strong></span>
</span></dt><dd>
  A list of other patterns that this pattern extends.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_ICON "solvable:icon"</strong></span>
</span></dt><dd>
  The icon name of a pattern.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_ORDER "solvable:order"</strong></span>
</span></dt><dd>
  An ordering clue of a pattern.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_SHARE_NAME "susetags:share:name"</strong></span>
</span></dt><dd>
  Internal attribute to implement susetags shared records. Holds the
  name of the solvable used for sharing attributes.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_SHARE_EVR "susetags:share:evr"</strong></span>
</span></dt><dd>
  Internal attribute to implement susetags shared records. Holds the
  version of the solvable used for sharing attributes.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_SHARE_ARCH "susetags:share:arch"</strong></span>
</span></dt><dd>
  Internal attribute to implement susetags shared records. Holds the
  architecture of the solvable used for sharing attributes.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_solvable_architectures"></a>6. Solvable Architectures</h2></div></div></div><p>Predefined architecture values for commonly used architectures.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>ARCH_SRC "src"</strong></span>
</span></dt><dd>
  Used for binary packages that contain the package sources.
</dd><dt><span class="term">
<span class="strong"><strong>ARCH_NOSRC "nosrc"</strong></span>
</span></dt><dd>
  Used for binary packages that contain some of the package sources,
  but not all files (because of restrictions).
</dd><dt><span class="term">
<span class="strong"><strong>ARCH_NOARCH "noarch"</strong></span>
</span></dt><dd>
  This package can be installed on any architecture. Used for rpm.
</dd><dt><span class="term">
<span class="strong"><strong>ARCH_ALL "all"</strong></span>
</span></dt><dd>
  This package can be installed on any architecture. Used for Debian.
</dd><dt><span class="term">
<span class="strong"><strong>ARCH_ANY "any"</strong></span>
</span></dt><dd>
  This package can be installed on any architecture. Used for Archlinux
  and Haiku.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_dependency_ids"></a>7. Dependency Ids</h2></div></div></div><p>Namespaces are special modifiers that change the meaning of a dependency.
Namespace dependencies are created with the REL_NAMESPACE flag. To make
custom namespaces work you have to implement a namespace callback function.</p><p>The dependency markers partition the dependency array in two parts with
different semantics.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>NAMESPACE_MODALIAS "namespace:modalias"</strong></span>
</span></dt><dd>
  The dependency is a special modalias dependency that matches installed
  hardware.
</dd><dt><span class="term">
<span class="strong"><strong>NAMESPACE_SPLITPROVIDES "namespace:splitprovides"</strong></span>
</span></dt><dd>
  The dependency is a special splitprovides dependency used to implement
  updates that include a package split. A splitprovides dependency contains
  a filename and a package name, it is matched if a package with the
  provided package name is installed that contains the filename.
  This namespace is implemented in libsolv, so you do not need a callback.
</dd><dt><span class="term">
<span class="strong"><strong>NAMESPACE_LANGUAGE "namespace:language"</strong></span>
</span></dt><dd>
  The dependency describes a language. The callback should return true
  if the language was selected by the user.
</dd><dt><span class="term">
<span class="strong"><strong>NAMESPACE_FILESYSTEM "namespace:filesystem"</strong></span>
</span></dt><dd>
  The dependency describes a filesystem. The callback should return true
  if the filesystem is needed.
</dd><dt><span class="term">
<span class="strong"><strong>NAMESPACE_OTHERPROVIDERS "namespace:otherproviders"</strong></span>
</span></dt><dd>
  This is a hack to allow self-conflicting packages. It is not needed
  with current rpm version, so do not use this namespace.
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_PREREQMARKER "solvable:prereqmarker"</strong></span>
</span></dt><dd>
  This marker partitions the normal require dependencies from the
  prerequires. It is not needed for dependency solving, but it is
  used by the transaction ordering algorithm when a dependency cycle
  needs to be broken (non-prereq deps get broken first).
</dd><dt><span class="term">
<span class="strong"><strong>SOLVABLE_FILEMARKER "solvable:filemarker"</strong></span>
</span></dt><dd>
  This marker partitions the package provides dependencies from the
  synthetic file provides dependencies added by pool_addfileprovides().
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_data_types"></a>8. Data Types</h2></div></div></div><p>Each attribute data is stored with a type, so that the lookup functions
know how to interpret the data. The following types are available:</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_VOID "repokey:type:void"</strong></span>
</span></dt><dd>
  No data is stored with this attribute. Thus you can only test if
  the attribute exists or not. Useful to store boolean values.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_CONSTANT "repokey:type:constant"</strong></span>
</span></dt><dd>
  The data is a constant 32bit number. The number is stored in the key
  area, so using it does not cost extra storage space (but you need the
  extra key space).
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_CONSTANTID "repokey:type:constantid"</strong></span>
</span></dt><dd>
  The data is a constant Id. The Id is stored in the key area,
  so using it does not cost extra storage space (but you need the
  extra key space).
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_ID "repokey:type:id"</strong></span>
</span></dt><dd>
  The data is an Id.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_NUM "repokey:type:num"</strong></span>
</span></dt><dd>
  The data is an unsigned 64bit number.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_U32 "repokey:type:num32"</strong></span>
</span></dt><dd>
  The data is an unsigned 32bit number. Obsolete, do not use.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_DIR "repokey:type:dir"</strong></span>
</span></dt><dd>
  The data is an Id of a directory.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_STR "repokey:type:str"</strong></span>
</span></dt><dd>
  The data is a regular string.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_BINARY "repokey:type:binary"</strong></span>
</span></dt><dd>
  The data is a binary blob.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_IDARRAY "repokey:type:idarray"</strong></span>
</span></dt><dd>
  The data is an array of non-zero Ids.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_REL_IDARRAY "repokey:type:relidarray"</strong></span>
</span></dt><dd>
  The data is an array of non-zero Ids ordered so that it needs less
  space.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_DIRSTRARRAY "repokey:type:dirstrarray"</strong></span>
</span></dt><dd>
  The data is a tuple consisting of a directory Id and a basename.
  Used to store file names.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_DIRNUMNUMARRAY "repokey:type:dirnumnumarray"</strong></span>
</span></dt><dd>
  The data is a triple consisting of a directory Id and two 32bit
  unsigned integers. Used to store disk usage information.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_MD5 "repokey:type:md5"</strong></span>
</span></dt><dd>
  The data is a binary md5sum.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_SHA1 "repokey:type:sha1"</strong></span>
</span></dt><dd>
  The data is a binary sha1sum.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_SHA256 "repokey:type:sha256"</strong></span>
</span></dt><dd>
  The data is a binary sha256sum.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_FIXARRAY "repokey:type:fixarray"</strong></span>
</span></dt><dd>
  The data is an array of structures that have all the same layout
  (i.e. the same keynames and keytypes in the same order).
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_FLEXARRAY "repokey:type:flexarray"</strong></span>
</span></dt><dd>
  The data is an array of structures that have a different layout.
</dd><dt><span class="term">
<span class="strong"><strong>REPOKEY_TYPE_DELETED "repokey:type:deleted"</strong></span>
</span></dt><dd>
  The data does not exist. Used to mark an attribute that was deleted.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_repository_metadata"></a>9. Repository Metadata</h2></div></div></div><p>This attributes contain meta information about the repository.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>REPOSITORY_SOLVABLES "repository:solvables"</strong></span>
</span></dt><dd>
  This attribute holds the array including all of the solvables. It is
  only used in the on-disk solv files, internally the solvables are
  stored in the pool’s solvable array for fast access.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_DELTAINFO "repository:deltainfo"</strong></span>
</span></dt><dd>
  This attribute holds the array including all of the delta packages.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_EXTERNAL "repository:external"</strong></span>
</span></dt><dd>
  This attribute holds the array including all of the data to construct
  stub repodata areas to support on-demand loading of metadata.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_KEYS "repository:keys"</strong></span>
</span></dt><dd>
  This should really be named "repository:external:keys", it contains an
  array if Ids that consists of (keyname, keytype) pairs that describe the
  keys of the stub.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_LOCATION "repository:location"</strong></span>
</span></dt><dd>
  This is used to provide a file name in the stub.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_ADDEDFILEPROVIDES "repository:addedfileprovides"</strong></span>
</span></dt><dd>
  This attribute holds an array of filename Ids, that tell the library,
  that all of the Ids were already added to the solvable provides.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_RPMDBCOOKIE "repository:rpmdbcookie"</strong></span>
</span></dt><dd>
  An attribute that stores a sha256sum over the file stats of the
  Packages database. It’s used to detect rebuilds of the database,
  as in that case the database Ids of every package are newly
  distributed.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_TIMESTAMP "repository:timestamp"</strong></span>
</span></dt><dd>
  The seconds since the unix epoch when the repository was created.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_EXPIRE "repository:expire"</strong></span>
</span></dt><dd>
  The seconds after the timestamp when the repository will expire.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_UPDATES "repository:updates"</strong></span>
</span></dt><dd>
  An array of structures describing what this repository updates.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_DISTROS "repository:distros"</strong></span>
</span></dt><dd>
  Also an array of structures describing what this repository updates.
  Seems to be the newer name of REPOSITORY_UPDATES.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_PRODUCT_LABEL "repository:product:label"</strong></span>
</span></dt><dd>
  Should really be called "repository:updates:label". What distribution
  is updated with this repository.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_PRODUCT_CPEID "repository:product:cpeid"</strong></span>
</span></dt><dd>
  The cpeid of the platform updated by this repository. Is both used
  in REPOSITORY_UPDATES and REPOSITORY_DISTROS to maximize confusion.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOID "repository:repoid"</strong></span>
</span></dt><dd>
  An array of Id strings describing keywords/tags about the repository
  itself.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_KEYWORDS "repository:keywords"</strong></span>
</span></dt><dd>
  An array of Id strings describing keywords/tags about the content of
  the repository.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REVISION "repository:revision"</strong></span>
</span></dt><dd>
  An arbitrary string describing the revision of the repository.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_TOOLVERSION "repository:toolversion"</strong></span>
</span></dt><dd>
  Some string describing somewhat the version of libsolv used to create
  the solv file.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_repository_metadata_for_susetags_repos"></a>10. Repository Metadata for Susetags Repos</h2></div></div></div><p>Attributes describing repository files in a susetags repository.
<span class="strong"><strong>SUSETAGS_DATADIR "susetags:datadir"</strong></span>::
  The directory that contains the packages.</p><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>SUSETAGS_DESCRDIR "susetags:descrdir"</strong></span>
</span></dt><dd>
  The directory that contains the repository file resources.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_DEFAULTVENDOR "susetags:defaultvendor"</strong></span>
</span></dt><dd>
  The default vendor used when a package does not specify a vendor.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_FILE "susetags:file"</strong></span>
</span></dt><dd>
  An array of file resources of the repository.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_FILE_NAME "susetags:file:name"</strong></span>
</span></dt><dd>
  The filename of the resource.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_FILE_TYPE "susetags:file:type"</strong></span>
</span></dt><dd>
  The type of the resource, e.g. “META”.
</dd><dt><span class="term">
<span class="strong"><strong>SUSETAGS_FILE_CHECKSUM "susetags:file:checksum"</strong></span>
</span></dt><dd>
  The file checksum of the resource.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_repository_metadata_for_rpmmd_repos"></a>11. Repository Metadata for RpmMD Repos</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD "repository:repomd"</strong></span>
</span></dt><dd>
  An array of file resources of the repository.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD_TYPE "repository:repomd:type"</strong></span>
</span></dt><dd>
  The type of the resource, e.g. “primary”.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD_LOCATION "repository:repomd:location"</strong></span>
</span></dt><dd>
  The location (aka filename) of the resource
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD_TIMESTAMP "repository:repomd:timestamp"</strong></span>
</span></dt><dd>
  The seconds since the unix epoch when the resource was created.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD_CHECKSUM "repository:repomd:checksum"</strong></span>
</span></dt><dd>
  The file checksum of the resource.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD_OPENCHECKSUM "repository:repomd:openchecksum"</strong></span>
</span></dt><dd>
  The checksum over the uncompressed contents of the resource.
</dd><dt><span class="term">
<span class="strong"><strong>REPOSITORY_REPOMD_SIZE "repository:repomd:size"</strong></span>
</span></dt><dd>
  The size of the resource file.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_delta_package_attributes"></a>12. Delta Package Attributes</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term">
<span class="strong"><strong>DELTA_PACKAGE_NAME "delta:pkgname"</strong></span>
</span></dt><dd>
  The target package name for the delta package. Applying the delta
  will recreate the target package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_PACKAGE_EVR "delta:pkgevr"</strong></span>
</span></dt><dd>
  The version of the target package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_PACKAGE_ARCH "delta:pkgarch"</strong></span>
</span></dt><dd>
  The architecture of the target package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_LOCATION_DIR "delta:locdir"</strong></span>
</span></dt><dd>
  The directory in the repository that contains the delta package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_LOCATION_NAME "delta:locname"</strong></span>
</span></dt><dd>
  The first part of the file name of the delta package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_LOCATION_EVR "delta:locevr"</strong></span>
</span></dt><dd>
  The version part of the file name of the delta package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_LOCATION_SUFFIX "delta:locsuffix"</strong></span>
</span></dt><dd>
  The suffix part of the file name of the delta package.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_LOCATION_BASE "delta:locbase"</strong></span>
</span></dt><dd>
  This attribute can be used to overwrite the repositories base url for
  the delta.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_DOWNLOADSIZE "delta:downloadsize"</strong></span>
</span></dt><dd>
  The size of the delta rpm file.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_CHECKSUM "delta:checksum"</strong></span>
</span></dt><dd>
  The checksum of the delta rpm file.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_BASE_EVR "delta:baseevr"</strong></span>
</span></dt><dd>
  The version of the package the delta was built against.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_SEQ_NAME "delta:seqname"</strong></span>
</span></dt><dd>
  The first part of the delta sequence, the base package name.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_SEQ_EVR "delta:seqevr"</strong></span>
</span></dt><dd>
  The evr part of the delta sequence, the base package evr. Identical
  to the DELTA_BASE_EVR attribute.
</dd><dt><span class="term">
<span class="strong"><strong>DELTA_SEQ_NUM "delta:seqnum"</strong></span>
</span></dt><dd>
  The last part of the delta sequence, the content selection string.
</dd></dl></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="_author"></a>13. Author</h2></div></div></div><p>Michael Schroeder &lt;<a class="ulink" href="mailto:mls@suse.de" target="_top">mls@suse.de</a>&gt;</p></div></div></body></html>