Ask Your Question

How to manage local patches?

asked 2012-04-13 10:00:31 -0500

tim.landscheidt gravatar image

When I have a solution to a bug, in addition to posting the patch to Bugzilla I usually build local packages with it and an increased release number and install them. This poses two problems:

  1. When the Fedora package is updated, "yum upgrade" will not regard it as new as the release number is not greater. This is not a problem when the package upgrade is due to my patch having been accepted (or the bug resolved in another way) as I will be notified about that by Bugzilla, but there are other reasons why packages are updated and I don't want to miss them.

  2. I can't just publish the patched packages to my website and let others use them as they will encounter the same first problem and there now might be two packages with the same release number in the wild. Unfortunately, this means that only the package with the bug is published at all, and not my fixed one. Similar problems occur when I package CPAN modules with cpanspec.

What is the best current practice to manage such local patches?

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2012-05-16 14:23:09 -0500

HoboPrimate gravatar image

I'm in the process of re-compiling the kernel with a patch, and am following this guide: this guide

Basically, it says to edit the kernel.spec file, and change:

 #% define buildid .local


%define buildid .<custom_text>



will be appended to the end of the kernel package.

edit flag offensive delete link more

answered 2012-04-13 10:33:13 -0500

lzap gravatar image

You can create your own repo, that is pretty easy. All you need is to tune your yum configuration adding new repo and use yum tools to create metadata above a directory of RPM files (it will only create few XML/SQLite files). Than you can start using it.


You can leverage Pulp project - - its a server-client application you can manage your repositories with. Using pulp-admin command you can "upload" your RPM packages into your repositories and Pulp will do the hard work for ya. You can also use pulp-consumer to setup your clients and do more than that - you could remotely manage your clients (installing packages, updates, erratas). Pulp is very extensible.


You can also try Katello - - which adds more features to Pulp. With Katello you can create "environments" and promote your/other packages among them. There is ongoing work to add more features like provisioning and configuration management into Katello. Stay tuned.

edit flag offensive delete link more

Question Tools


Asked: 2012-04-13 10:00:31 -0500

Seen: 392 times

Last updated: May 16 '12