Scroll to navigation

DEBPATCH(1) General Commands Manual DEBPATCH(1)


debpatch - apply a debdiff to a Debian source package


debpatch [options] [orig_dsc_or_dir] [patch_file]
debpatch [options] < [patch_file]


debpatch takes a patchfile that describes the differences between two Debian source packages old and new, and applies it to a target Debian source package orig.

orig could either be the same as old or it could be different. patchfile is expected to be a unified diff between two Debian source trees, as what debdiff(1) normally generates.

Any changes to debian/changelog are dealt with specially, to avoid the conflicts that changelog diffs typically produce when applied naively. The exact behaviour may be tweaked in the future, so one should not rely on it.

If patchfile does not apply to orig, even after the special-casing of debian/changelog, no changes are made and debpatch(1) will exit with a non-zero error code.


Target to apply the patch to. This can either be an unpacked source tree, or a .dsc file. In the former case, the directory is modified in-place; in the latter case, a second .dsc is created. Default: .
Patch file to apply, in the format output by debdiff(1). Default: /dev/stdin


-h, --help
show this help message and exit
-v, --verbose
Output more information
Path to debian/changelog; default: debian/changelog
Distribution to use, if the patch doesn't already contain a changelog; default: experimental
Run the python REPL after processing.
Don't apply the patch; instead print out the version of the package that it is supposed to be applied to, or nothing if the patch does not specify a source version.
Don't apply the patch; instead print out the new version of the package debpatch(1) would generate, when the patch is applied to the the given target package, as specified by the other arguments.

For .dsc patch targets:

Don't clean temporary directories after a failure, so you can examine what failed.
If the building of the new source package fails, try to refresh patches using quilt(1) then try building it again.
Extract the .dsc into this directory, which won't be cleaned up after debpatch(1) exits. If not given, then it will be extracted to a temporary directory.


debpatch and this manual page were written by Ximin Luo <>

Both are released under the GNU General Public License, version 3 or later.


Debian Utilities DEBIAN