Skip to content
Latchkey

rpm -i: Usage, Options & Common CI Errors

rpm -i installs a single local .rpm package without resolving dependencies.

rpm is the low-level package tool on the Red Hat family - the dpkg equivalent. rpm -i installs a downloaded .rpm but, like dpkg, does not fetch dependencies; for that you use dnf/yum.

What it does

rpm -i installs a local .rpm and rpm -U upgrades (installing if absent). It checks dependencies but does NOT resolve them from repositories - missing deps cause a hard failure. In CI it is usually cleaner to let dnf install ./pkg.rpm handle dependency resolution.

Common usage

Terminal
rpm -ivh ./package.rpm                 # install, verbose, progress hash
rpm -Uvh ./package.rpm                 # upgrade or install
dnf install -y ./package.rpm           # preferred: resolves deps
rpm -q --qf '%{VERSION}\n' curl        # query installed version
rpm -qa | grep nginx                   # list installed packages

Common errors in CI

"error: Failed dependencies: libX.so.1 is needed by Y" - rpm will not pull dependencies; install them first or use dnf install ./pkg.rpm. "warning: pkg.rpm: Header V4 RSA/SHA256 Signature, key ID ...: NOKEY" means the signing key is not imported (rpm --import the key, or accept it for a trusted local rpm). "package X is already installed" needs -U (upgrade) or --replacepkgs. --nodeps forces past dependency checks but produces a broken install - avoid in CI.

Options

FlagWhat it does
-i / -U / -FInstall / upgrade-or-install / freshen
-v -hVerbose with a progress hash bar
-e <pkg>Erase (remove) a package
-q / -qa / -qlQuery / list all / list files
--nodepsSkip dependency checks (produces a broken state)
--import <key>Import a GPG signing key

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →