Gentoo VDR own patches

From VDR Wiki
Jump to: navigation, search


The vdr ebuilds can never be feature-complete and include every patch available somewhere. Because of this fact the possibility to include own patches into VDR was created.


To enable this function one simply creates an the empty directory PATCHDIR somewhere - clearly PATCHDIR has to be replaced by a real directory name.

mkdir -p PATCHDIR

The we tell the ebuild in /etc/make.conf where this directory is located.



For PATCHDIR=/usr/src/vdr-patches it looks like this:

mkdir -p /usr/src/vdr-patches

and in /etc/make.conf


Putting patches there

Inside PATCHDIR one creates a subdirectory which is named after the, to be patched, version of VDR. For vdr-VDR_VERSION:


In this directory the patches are stored. Their name has to have the prefix .diff or .patch.

emergeing VDR

If all goes well it works and gives this output with these patches in PATCHDIR/VDR_VERSION

mypatch.diff testing-special.diff

at the next time emerging vdr (here vdr-1.3.36):

>>> Unpacking vdr-1.3.36.tar.bz2 to /var/tmp/portage/vdr-1.3.36/work
>>> Unpacking vdr-1.3.36-enAIO-2.7.diff.gz to /var/tmp/portage/vdr-1.3.36/work
 * Changing pathes for gentoo ...                                        [ ok ]
 * Applying vdr-1.3.34-shutdown-retry.diff ...                           [ ok ]
 * Applying vdr-1.3.36-enAIO-2.7.diff ...                                [ ok ]
 * Applying vdr-1.3.36-SourceCaps.patch ...                              [ ok ]

 * Applying local patches
 * Applying mypatch.diff ...                                             [ ok ]
 * Applying testing-special.diff ...                                     [ ok ]
>>> Source unpacked.


With this posibility to include own patches one has naturally the same problems, the ebuild-makers have. It will never be possible to get all patches playing together nice that they all are applicable.