DEBDIFF-APPLY(1)

πŸ’– DEBDIFF-APPLY πŸ’–

okay bestie so this is debdiff-apply, living in the General Commands Manual section of the manual pages, and she is that girl β€” she takes a debdiff and makes it happen on a Debian source package. slay.


✨ NAME ✨

debdiff-apply β€” apply a debdiff to a Debian source package πŸ¦‹


🌸 SYNOPSIS 🌸

debdiff-apply [options] [orig_dsc_or_dir] [patch_file]
debdiff-apply [options] < [patch_file]

πŸ’… DESCRIPTION πŸ’…

So here's the vibe. debdiff-apply 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. it's giving glow-up, fr fr.

Now orig could either be the same as old, or it could be different. no gatekeeping, both are valid. and patchfile? she's expected to be a unified diff between two Debian source trees, exactly the kind of thing debdiff(1) normally generates. iconic behaviour.

Any changes to debian/changelog get handled specially, because changelog diffs are little menaces that produce conflicts when you apply them naively 😭. The exact behaviour may be tweaked in the future, so bestie... one should not rely on it. consider that a soft launch, not a promise.

And if patchfile does not apply to orig, even after all the special-casing of debian/changelog? Then no changes are made and debdiff-apply(1) will exit with a non-zero error code. periodt. no partial slayage.


πŸŽ€ ARGUMENTS πŸŽ€

  • orig_dsc_or_dir β€” the 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 β€” the patch file to apply, in the format output by debdiff(1). Default: /dev/stdin

πŸ‘‘ OPTIONS πŸ‘‘

  • -h, --help β€” show this help message and exit. the classic. πŸ’–
  • -v, --verbose β€” output more information. she's chatty and we love that.
  • -c CHANGELOG, --changelog CHANGELOG β€” path to debian/changelog; default: debian/changelog
  • -D DISTRIBUTION, --distribution DISTRIBUTION β€” distribution to use, if the patch doesn't already contain a changelog; default: experimental
  • --repl β€” run the python REPL after processing. yes bestie, she's a python girlie. 🐍✨
  • --source-version β€” 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. lowkey just a peek, no commitment.
  • --target-version β€” don't apply the patch; instead print out the new version of the package debdiff-apply(1) would generate, when the patch is applied to the the given target package, as specified by the other arguments.

🌈 For .dsc patch targets: 🌈

  • --no-clean β€” don't clean temporary directories after a failure, so you can examine what failed. forensics era πŸ”
  • --quilt-refresh β€” if the building of the new source package fails, try to refresh patches using quilt(1) then try building it again. she tries again. resilience. 🫢
  • -d DIRECTORY, --directory DIRECTORY β€” extract the .dsc into this directory, which won't be cleaned up after debdiff-apply(1) exits. If not given, then it will be extracted to a temporary directory.

🧚 AUTHORS 🧚

debdiff-apply and this manual page were written by Ximin Luo <infinity0@debian.org> πŸ’œ

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


πŸ’€ SEE ALSO πŸ’€


and that's the whole page bestie, no cap. this came out of the DEBIAN Debian Utilities corner of the world β€” go forth and apply those patches, you absolute icon πŸ‘‘βœ¨πŸ’…

πŸ“¦ where this page comes from