DEBDELTA(1)
πΈ DEBDELTA π
okay bestie, welcome to the manual page for debdelta from the User Commands section of the manual. she computes changes between Debian packages and she is, frankly, iconic for it β¨
β¨ NAME β¨
debdelta β compute changes between Debian packages π¦
π SYNOPSIS π
debdelta [OPTION]... FROMFILE TOFILE DELTA
π DESCRIPTION π
so here's the whole vibe: this program computes the changes between two Debian packages, FROMFILE and TOFILE, and it stashes all those changes in the file DELTA. that's it, that's the job π
and then β plot twist β that DELTA file can later get used by the debpatch program to recreate TOFILE out of FROMFILE. like, full reconstruction. no cap. π«Ά
in a sense, the pair debdelta/debpatch operates on Debian packages kind of the same way the pair diff/patch operates on text files. fr fr. and yes, the output of debdelta may be used to store and transmit only the changes between Debian packages, which is a whole slay.
but β and this is the important part β contrary to the diff output, the output of debdelta is not human readable. it's not giving pretty. it's giving small. it's intended to be as small as possible, to optimize for less disk usage and/or faster transmission. tiny and efficient, main character energy π
β¨ OPTIONS β¨
--signing-key KEYβ the key used to sign the delta (using GnuPG). cryptographic glow-up π--no-md5β do not include MD5 info in delta. no MD5, no problem π--needsoldβ create a patch that can only be used if the old.debis available. it's needy, literally π--delta-algo ALGOβ use a specific backend for computing binary diffs; possible values are:xdeltaxdelta-bzipxdelta3bsdiff. pick your fighter βοΈ-M Mbβ maximum memory to use (for'bsdiff'or'xdelta'). be kind to your RAM bestie πΈ-vβ verbose (can be added multiple times). the more-vs, the more she talks π£οΈ-dβ print full traceback on Python errors; save useful info in temporary files in case that a backend crashes. debug mode, but make it β¨thoroughβ¨
(if -d is added multiple times, it also adds to the patches other extra debugging checks: only for advanced bug tracking). for the true detectives π΅οΈβοΈ
-kβ keep temporary files (use for debugging). don't clean up, we're investigating π--gpg-homeβ specify a different home for GnuPG, default for root is/etc/debdelta/gnupgwhile for other users is unset. see--homediringpg(1)for details. π--disable-feature FEATUREβ disable an internal feature. see the documentation inREADME.features. turn it off, bestie π«
π EXAMPLE π
the command
debdelta libglib_2.12_all.deb libglib_2.14_all.deb /tmp/glib.debdelta
will express the difference between two versions of libglib in /tmp/glib.debdelta π« ; and the command
debpatch -A /tmp/glib.debdelta libglib_2.12_all.deb /tmp/glib.deb
will create in /tmp/glib.deb a perfect copy of libglib_2.14_all.deb. perfect. copy. periodt. π
π‘οΈ SECURITY π‘οΈ
a Debian package that is recreated using debpatch is byte-by-byte identical to the original one. so the cryptographic archive authentication support for APT (see apt-secure(8)) may be used to assert that it can be trusted to be installed. trust the process, trust the bytes π
moreover, if a GnuPG key is specified using --signing-key then the delta file itself is cryptograhically protected using GnuPG, MD5 and SHA1 (using the same method as dpkg-sig(1)). triple protection, we love to see it π₯
note that, for non-root users, the master debdelta keyring /usr/share/keyrings/debian-debdelta-archive-keyring.gpg is added to the list of keyrings for gnupg. π
π EXIT STATUS π
0β if OK, we ate π1β if there was a retriable problem (e.g., out-of-disk-space, or an auxiliary program such'lzma'is missing and the user is asked to install the package'lzma'). like, just try again bestie π2β if there was a non-retriable problem. okay this one's for real π3β if there was an error in a command-line option, or in a configuration file. typo era π4β if there is an internal error, and. it's not me, it's her π5β if exited due to keyboard interrupt. you hit ctrl-c, that was you π«΅
π REPORTING BUGS π
report bugs to <mennucc1@debian.org>. tell them everything, they want to know π
π AUTHORS π
Debdelta was written and is copyright Β© 2006-09 Andrea Mennucci. This man page was written by Jegou Pierre-yves <pierreyves.jeg@voila.fr>. legends, both of them π
π COPYING π
This is free software. You may redistribute copies of it under the terms of the GNU Library General Public License <http://www.gnu.org/licenses/lgpl-2.0.html>. There is NO WARRANTY, to the extent permitted by law. (yes the caps are load-bearing, it's giving legal β οΈ)
π¦ SEE ALSO π¦
debdelta-upgrade(1), debpatch(1), debdeltas(1), /usr/share/doc/debdelta/README.
and that's the whole page bestie π«Ά this debdelta manual is from aug 2009, so go give her some love, she's been holding it down since before some of us could read πβ¨
π¦ where this page comes from
- debian bookworm: debdelta 0.67 Β· GPL-2.0-only
- debian trixie: debdelta 0.70+nmu1 Β· GPL-2.0-only
- ubuntu jammy: debdelta 0.67 Β· GPL-2.0-only
- ubuntu noble: debdelta 0.70 Β· GPL-2.0-only
- ubuntu questing: debdelta 0.70+nmu2
- ubuntu resolute: debdelta 0.70+nmu2build1 Β· GPL-2.0-only
- ubuntu stonking: debdelta 0.70+nmu2build1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms