rpkg utility

  • If you are looking for an easy way to make installation packages out of your application sources…
  • If you want to make free and open-source software out there easily available to end users…
  • If you like configurability without limits…


rpkg is an rpm packaging utility that you can use to maintain your application sources. It is designed to work on top of Git repositories but it can also handle just any plain directory content. It will allow you to easily transform raw sources into an rpm source package that you can build (also by using rpkg) in a public build system, which will produce packages that any user can install and start using afterwards.


The main subsections of this wiki:

  • Tutorials: Learn how to use rpkg in a quick and easy way
  • Macro reference: Learn all about macros that you can use in spec templates


rpkg is available on all Fedora platforms. You can run:

# dnf install rpkg

to install it.

If you would like to install rpkg directly from the upstream sources, run:

$ git clone https://pagure.io/rpkg-util
$ cd rpkg-util
$ rpkg local
$ sudo dnf -C install /tmp/rpkg/rpkg-util-*/noarch/rpkg*.noarch.rpm

But the easier way to always get the latest, greatest rpkg is:

# dnf copr enable clime/rpkg-util
# dnf install rpkg

You need to have dnf-plugins-core installed ;).

clime/rpkg-util currently also provides a version for EPEL7 together with a newer versions of tar and git that rpkg needs for correct operation. You can install it on EPEL7 with:

# yum install yum-plugin-copr
# yum copr enable clime/rpkg-util
# yum install rpkg  # this will also upgrade tar and git on the system