README.md

This application is an RPM packaging utility based on python-rpkg library. It works with both DistGit and Git repositories and it handles two types of directory content: packed content and unpacked content.

"Packed" content is that composed of tarballs, patches, and a .spec file. "Unpacked" content is that composed of plain source files and a .spec file.

For packed, if you ask rpkg to make srpm (rpkg srpm) out of the content in the current directory, it will download any external files from the appropriate storage (e.g. lookaside cache for DistGit) and then it will invoke rpmbuild -bs with _sourcedir, _specdir, _builddir, _srcrpmdir, _rpmdir macros all set to the current working directory.

For unpacked, if you ask rpkg to do the same thing, it will download external sources if any and then it will also generate a tarball from the whole content of the current directory named according to Source0 definition present in the associated .spec file. This tarball and the .spec are then passed to the same rpmbuild command as above for the packed content.

Note that by dynamically creating the tarball in the current working directory according to the Source0 definition, the directory content becomes packed because there is at least one file, which is referenced from the .spec file as Source or Patch. You can find the exact definitions of "packed" and "unpacked" in rpkg man pages (see EXAMPLES section for examples) or with rpkg make-source --help.