Red Hat Bugzilla – Bug 1261031
createrepo_c cannot generate DeltaRPMs even when compiled with drpm
Last modified: 2015-11-01 16:50:19 EST
Description of problem:
createrepo_c doesn't expose options for generating DeltaRPMs, even though it's compiled with drpm now.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Install createrepo_c
2. Try to use --deltas switch in a createrepo_c call
--deltas switch is not recognized and nothing happens
--deltas switch is recognized and DeltaRPM generation works
The man page indicates that DeltaRPM functionality is available, but using the switches related to it returns "Argument parsing failed: Unknown option" for all of them.
I've determined the root cause of this problem: DeltaRPM support isn't being properly compiled in.
Firstly, the flag CR_DELTA_RPM_SUPPORT wasn't being passed through as a compile-time definition, so the code blocks encapsulated by the definition were being skipped. I corrected this locally and submitted a pull request on GitHub for it: https://github.com/rpm-software-management/createrepo_c/pull/37
Secondly, the BuildRequire for DeltaRPM support in createrepo_c is set to drpm, rather than drpm-devel. Meaning that when the DeltaRPM support is properly enabled, it fails to build properly because it is missing the development headers and such required for incorporating DeltaRPM support. A simple adjustment to change the BuildRequire from "drpm" to "drpm-devel" will correct this.
With these two fixes, I was able to activate and use the DeltaRPM functionality in createrepo_c successfully.
Fixed in upstream:
createrepo_c-0.9.1-1.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2015-735f979d01
createrepo_c-0.9.1-1.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'dnf --enablerepo=updates-testing update createrepo_c'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-735f979d01
createrepo_c-0.9.1-1.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.