openSUSE:Standards RepoInfo

Jump to: navigation, search

.repo files are used by some package managers (yum, ZYpp) to allow one click adding of repositories. The format originated as part of yum's /etc/yum.conf file format (which is documented in the [repository] options section of man yum.conf).

The standard consist in a INI-like file with the following keys:

[ruby]
name=Ruby is an Interpreted Object-Oriented Scripting Language (openSUSE_10.2)
type=rpm-md
baseurl=http://software.opensuse.org/download/ruby/openSUSE_10.2/
path=/
gpgcheck=1
gpgkey=http://software.opensuse.org/openSUSE-Build-Service.asc
enabled=1
priority=100
  • The section between [...] is meant to be the unique id of the repository locally, also known as alias. Here it is ruby.
  • name is a more descriptive text used in the UI.
  • type can be rpm-md, YaST, ...
  • baseurl is the base repository URL.
  • path is relative to the baseurl, it's / by default.
  • gpgcheck defines whether the source signatures should be checked using GPG.
  • gpgkey defines URL for a GPG key.
  • enabled is 1 by default, 0 if source is disabled (known, not used, but still listed).
  • priority defines a source priority (99 by default). The highest priority is 1, the lowest is 200 (in YaST), resp. /unlimited/ (integer) in zypper (and others).

libzypp Extensions

  • keeppackages - if set to '1', the packages downloaded from repository will be kept in a cache on the local disk. If the value is set to '0', the packages will be removed after the commit transaction finishes. (supported since libzypp-4.2.7)
  • Instead of yum's mirrorlist plaintext file, the next release of libzypp will use Metalinks for failover handling of URLs. (details ...)

Libzypp stores the .repo files in the directory /etc/zypp/repos.d/.