The rpm.versions File
Last modified: April 17, 2024
Overview
The /usr/local/cpanel/etc/rpm.versions
file contains all of the cPanel-provided settings for the rpm.versions system. We provide these settings based on the version of cPanel & WHM that your server runs. Your server automatically updates this file whenever cPanel & WHM updates.
The system stores the /usr/local/cpanel/etc/rpm.versions
file in YAML format. The sections below describe each of the file’s headers and their contents.
We strongly recommend that you never directly edit this file, because you will lose your changes when you perform an upgrade. Instead, use the /var/cpanel/rpm.versions.d/local.versions
file to make changes.
install_targets — Target components and dependencies
The install_targets
section of the /usr/local/cpanel/etc/rpm.versions
file lists each target with its component packages and dependencies.
Each target entry displays information in the following format:
|
|
This example uses the following variables:
package_target
is the name of the target.component_package_1
andcomponent_package_2
are packages that are necessary for thepackage_target
service to function properly.dependency_1
anddependency_2
are additional packages on which the component packages are dependent.
Instead of individual packages, the components
and dependencies
sections may also list the names of package groups, as the rpm_groups
section of the /usr/local/cpanel/etc/rpm.versions
file defines.
obsolete — Obsolete packages
The obsolete
section of the /usr/local/cpanel/etc/rpm.versions
file lists packages that your version of cPanel & WHM no longer supports. If the package system detects any packages on this list, it will remove them from the system.
Each obsolete package entry appears in the following format:
compat-MySQL50-shared: 1
This example uses the following variables:
compat-MySQL50-shared
is the package’s name.1
is a Boolean value that will always equal1
.
rpm_groups — Package groups
The rpm_groups
section of the /usr/local/cpanel/etc/rpm.versions
file lists groups of packages under their assigned group name. In the other sections of the file, this group name represents that list of packages, which eliminates the need for repetitive lists of frequently-used package names.
Each group entry appears in the following format:
|
|
This example uses the following variables:
groupname
is the name of the package group.grouped_package_1
andgrouped_package_2
are the names of individual packages that are part of the group.
rpm_locations — Package file locations
The rpm_locations
section of the /usr/local/cpanel/etc/rpm.versions
file specifies which URL template the rpm.versions system uses to find that target’s packages.
Each file location entry appears in the following format:
package: template
This example uses the following variables:
package
is the package’s name.template
is the name of the URL template, as the file’surl_templates
section specifies.
srpm_sub_packages — Source package information
The srpm_sub_packages
section of the /usr/local/cpanel/etc/rpm.versions
file specifies a list of source packages (formerly known as source RPMs, or SRPMs) for each package target.
Each source package entry appears in the following format:
|
|
This example uses the following variables:
package_target
is the package target’s name.srpm1
,srpm2
, andsrpm3
are the names of the target’s source packages.
srpm_versions — Source package versions
The srpm_versions
section of the /usr/local/cpanel/etc/rpm.versions
file specifies the exact version number for each package target.
Each source package version entry appears in the following format:
package_target: version-revision.distribution
This example uses the following variables:
package_target
is the package target’s name.version
is the exact version number.revision
is the package’s revision number.distribution
corresponds to the major version of cPanel & WHM with which we released this version.
For example, the source package version for the cpanel-ng-whm-initial-setup-wizard
target appears similar to the following example:
cpanel-ng-whm-initial-setup-wizard: 118.16.16-1.cp11118
This example uses the following variables:
- The WHM version is
118.16.16
. - The revision number is
1
. - The version of cPanel & WHM is version 118.
target_settings — Target installation settings
The target_settings
section of the /usr/local/cpanel/etc/rpm.version
file specifies each package target’s default installation status.
For more information about package targets, read our Target Settings documentation.
unsupported_rpms - Unsupported packages
The unsupported_rpms
section of the /usr/local/cpanel/etc/rpm.versions
file specifies packages that an operating system will not install.
The following example from cPanel & WHM version 118 demonstrates this section of the file:
|
|
url_templates — URL templates
The url_templates
section defines the template that the rpm.versions system uses to find specific package files. In the /usr/local/cpanel/etc/rpm.versions
file, all of these templates point to locations on cPanel’s httpupdate server.
Each URL template appears in one of the following formats:
|
|
This example uses the following variables:
deb_default
,deb_default-noarch
anddeb_ng
are the names of package file location templates readable by Debian systems.default
,default-noarch
, andng
are the names of the RPM file location templates readable by Red-Hat® systems.httpupdate
is the hostname at which to download the packages.source_package
is the source package name.version
is the cPanel & WHM major version that first contained that package target.rpm_dist
is the name of the Red-Hat system’s OS distribution (for example,centos
).rpm_dist_ver
is the Red-Hat system’s OS distribution’s version number (for example,5
).rpm_arch
is the Red-Hat system’s OS architecture (for example,i686
).package
is the package’s name.package_version
is the package’s version number.package_revision
is the package’s revision number.
The presence or absence of default-noarch
in the package’s location indicates differences in the package template, which changes how the rpm.versions system generates information, such as package filenames, for that package.