RPM Package Manager
宣言部には、パッケージの説明的な詳細を書き、実行部は、スクリプトとしての役割を果たしている。
パッケージのインストールには、ローカルパッケージ、及びHTTP、FTPを通じたネットワークからのパッケージに対応している。ただし、依存性の解決は行わず、依存性に欠如があった場合は、ユーザーが独自にパッケージをインストールするか、YUM、APT for rpmといった別のツールを使って解決しなければいけない。独自にソースコードからインストールした場合は、パッケージ管理の対象にならず、この場合は、依存性の解決には利用されない。
RPMは、通常はバイナリのインストールに使われるが、ソースコードからのパッケージ作成もサポートしている。パッケージをspecファイルに従ってその場で作成し、インストールすることになる。
RPMは、C言語で書かれ、C言語、Java、Perl、Python、Rubyなどの言語バインディングも提供、または独自に作成されており、これにより、コマンド以外からもRPMのパッケージを扱うことが出来る。