# How to create a Patch RPM?

**URL:** <https://forums.suse.com/t/how-to-create-a-patch-rpm/27296>\
**Category:** SLES Configure-Administer\
**Created:** [August 3, 2015, 8:28pm UTC](https://forums.suse.com/t/how-to-create-a-patch-rpm/27296 "2015-08-03T20:28:38Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![richard\_amuzu](https://avatars.discourse-cdn.com/v4/letter/r/e47774/32.png) [@richard\_amuzu](https://forums.suse.com/u/richard_amuzu)\
**Post date:** [August 3, 2015, 8:28pm UTC](https://forums.suse.com/t/how-to-create-a-patch-rpm/27296/1 "2015-08-03T20:28:38Z")

</div>

Hello folks,

I wasn’t quite sure where to post this and was kindly directed here from the Chatting over the back fence forum, so again apologies if this is the wrong place. I would like to be able to create a patch RPM as hinted at in section 6.2.3 of the SLES guide here: [https://www.suse.com/documentation/s…a/sec\_rpm.html](https://www.suse.com/documentation/s...a/sec_rpm.html). Unfortunately the man pages referenced and numerous google searches have failed to garner any more information than in the section linked.

As far as I can see this is a binary patch rather than a source code patch of an SRPM but I can find no information on how to actually create such an RPM. We are currently producing delta RPMS using the makedeltarpm command (on SLES 11 SP3) but want a way to update an existing installation of our application without the need to reinstall the full package in a production environment.

Can anyone point me in the right direction of how to create these patch RPM files.

Thanks.

---

<div class="post-metadata">

**Author:** ![malcolmlewis](https://sea2.discourse-cdn.com/flex022/user_avatar/forums.suse.com/malcolmlewis/32/11375_2.png) [@malcolmlewis](https://forums.suse.com/u/malcolmlewis)\
**Post date:** [August 3, 2015, 10:15pm UTC](https://forums.suse.com/t/how-to-create-a-patch-rpm/27296/2 "2015-08-03T22:15:20Z")

</div>

> [@](#):
>
> On Mon 03 Aug 2015 05:34:01 PM CDT, richard amuzu wrote:
> 
> Hello folks,
> 
> I wasn’t quite sure where to post this and was kindly directed here from  
> the Chatting over the back fence forum, so again apologies if this is  
> the wrong place. I would like to be able to create a patch RPM as hinted  
> at in section 6.2.3 of the SLES guide here:  
> [https://www.suse.com/documentation/s…a/sec\_rpm.html](https://www.suse.com/documentation/s...a/sec_rpm.html). Unfortunately the  
> man pages referenced and numerous google searches have failed to garner  
> any more information than in the section linked.
> 
> As far as I can see this is a binary patch rather than a source code  
> patch of an SRPM but I can find no information on how to actually create  
> such an RPM. We are currently producing delta RPMS using the  
> makedeltarpm command (on SLES 11 SP3) but want a way to update an  
> existing installation of our application without the need to reinstall  
> the full package in a production environment.
> 
> Can anyone point me in the right direction of how to create these patch  
> RPM files.
> 
> Thanks.

Hi  
I see you finally made it here from  
[http://forums.opensuse.org/showthread.php?t=508942](http://forums.opensuse.org/showthread.php?t=508942) 😉

AFAIK, there are only delta’s I can’t see any reference in either rpm  
or rpmbuild. I did find a 2003 reference to it, but the suggestion then  
was deltas… maybe it’s just gone away (maybe check the changelogs for  
rpm and rpmbuild).

So I note it’s just a bandwidth issue, you can configure zypper  
(/etc/zypp/zypp.conf) for the min and max download speed?

You can also use YaST to create patch images and send off a CD/DVD or  
USB device if that is possible?

–  
Cheers Malcolm Â°Â¿Â° LFCS, SUSE Knowledge Partner (Linux Counter #276890)  
SUSE Linux Enterprise Desktop 12 GNOME 3.10.1 Kernel  
3.12.44-52.10-default If you find this post helpful and are logged into  
the web interface, please show your appreciation and click on the star  
below… Thanks!

---

<div class="post-metadata">

**Author:** ![richard\_amuzu](https://avatars.discourse-cdn.com/v4/letter/r/e47774/32.png) [@richard\_amuzu](https://forums.suse.com/u/richard_amuzu)\
**Post date:** [August 5, 2015, 12:10pm UTC](https://forums.suse.com/t/how-to-create-a-patch-rpm/27296/3 "2015-08-05T12:10:41Z")

</div>

Hi Malcolm,

Yes finally made it :), unfortunately it’s part bandwidth, part volume and time to install - the update has to take place on thousands of machines, part infrastructure, the country in which they operate is prone to power cuts and so they are worried about things being left in an inconsistent state if an RPM installation fails before completing. Hence they prefer the idea of a patch RPM that just updates a small(ish) number of files that may have changed and is still small and so can be sent across a very limited bandwith link to a number of locations as they perceive it as being less risky. Unfortunately i haven’t seen anying further after the reference to a patchrpm package on the openSUSE forums and can’t find any evidence of that package on the SLES 11 SP1, SP2 or SP3 installation DVD’s that we still have.

Thanks.

---

<div class="post-metadata">

**Author:** ![malcolmlewis](https://sea2.discourse-cdn.com/flex022/user_avatar/forums.suse.com/malcolmlewis/32/11375_2.png) [@malcolmlewis](https://forums.suse.com/u/malcolmlewis)\
**Post date:** [August 5, 2015, 4:42pm UTC](https://forums.suse.com/t/how-to-create-a-patch-rpm/27296/4 "2015-08-05T16:42:39Z")

</div>

> [@](#):
>
> On Wed 05 Aug 2015 09:14:01 AM CDT, richard amuzu wrote:
> 
> Hi Malcolm,
> 
> Yes finally made it :), unfortunately it’s part bandwidth, part volume  
> and time to install - the update has to take place on thousands of  
> machines, part infrastructure, the country in which they operate is  
> prone to power cuts and so they are worried about things being left in  
> an inconsistent state if an RPM installation fails before completing.  
> Hence they prefer the idea of a patch RPM that just updates a small(ish)  
> number of files that may have changed and is still small and so can be  
> sent across a very limited bandwith link to a number of locations as  
> they perceive it as being less risky. Unfortunately i haven’t seen  
> anying further after the reference to a patchrpm package on the openSUSE  
> forums and can’t find any evidence of that package on the SLES 11 SP1,  
> SP2 or SP3 installation DVD’s that we still have.
> 
> Thanks.

Hi  
OK, so then one suggestion is to set zypp.conf to download first so  
it’s in cache before any update commences, that should remove the issue  
of partial updates occurring.

Like I said, AFAIK it’s not part of rpm/rpmbuild these days…?

Came across this archive mail which I think is what your wanting?  
[http://rpm5.org/community/rpm-users/0428.html](http://rpm5.org/community/rpm-users/0428.html)

I’ll ask my SUSE Contacts about the comment in the docs and see if  
there are some pointers to what they indicate.

–  
Cheers Malcolm Â°Â¿Â° LFCS, SUSE Knowledge Partner (Linux Counter #276890)  
SUSE Linux Enterprise Desktop 12 GNOME 3.10.1 Kernel  
3.12.44-52.10-default If you find this post helpful and are logged into  
the web interface, please show your appreciation and click on the star  
below… Thanks!

---

<div class="post-metadata">

**Author:** ![richard\_amuzu](https://avatars.discourse-cdn.com/v4/letter/r/e47774/32.png) [@richard\_amuzu](https://forums.suse.com/u/richard_amuzu)\
**Post date:** [August 6, 2015, 3:29pm UTC](https://forums.suse.com/t/how-to-create-a-patch-rpm/27296/5 "2015-08-06T15:29:59Z")

</div>

Thanks Malcolm,

I think partial updates relate to one of the many (scheduled / unscheduled) powercuts occuring when the installation is taking place . I am also thinking about other methods of achieving their goal by maybe restructuring the packages. If you do here anything from the SUSE team please let me know.

Thanks
