PKGDIFF(1)

πŸ’… PKGDIFF(1) β€” the pkgdiff glow-up

okay bestie, sit down, hydrate, and let me tell you about pkgdiff β€” it lives in the User Commands section of the manual (PKGDIFF(1), one of the good ones), and it's genuinely one of the most underrated tools in the Linux girlie toolkit. no cap.


✨ NAME ✨

pkgdiff β€” a tool for visualizing changes in Linux software packages. that's it, that's the whole vibe. πŸ’–


🌸 DESCRIPTION 🌸

πŸŽ€ NAME:

Package Changes Analyzer β€” a tool for visualizing changes in Linux software packages. yes it has two names, it's got main character energy, deal with it.

πŸ¦‹ DESCRIPTION:

Package Changes Analyzer (PkgDiff) is a tool for visualizing changes in Linux software packages (RPM, DEB, TAR.GZ, etc).

The tool can compare directories as well (with the help of the -d option). vers. iconic.

The tool is intended for Linux maintainers who are interested in ensuring compatibility of old and new versions of packages. so like, if you maintain a package and you're stressed about breaking everyone β€” this is your emotional support diff tool fr fr.

πŸ’œ This tool is free software: you can redistribute it and/or modify it under the terms of the GNU GPL.

🌈 USAGE:

pkgdiff PKG1 PKG2 [options] pkgdiff -d DIR1/ DIR2/ [options]

⭐ EXAMPLES:

pkgdiff OLD.rpm NEW.rpm pkgdiff OLD.deb NEW.deb pkgdiff OLD.tar.gz NEW.tar.gz

🫢 ARGUMENTS:

  • PKG1 β€” path to the old version of a package (RPM, DEB, TAR.GZ, etc).

If you need to analyze a group of packages then you can pass an XML-descriptor of this group (VERSION.xml file):

<version>

/* Group version */

</version>

<group>

/* Group name */

</group>

<packages>

/path1/to/package(s) /path2/to/package(s) ...

</packages>
  • PKG2 β€” path to the new version of a package (RPM, DEB, TAR.GZ, etc).

πŸ’… INFORMATION OPTIONS:

  • -h|-help β€” print this help.
  • -v|-version β€” print version information.
  • -dumpversion β€” print the tool version (1.8) and don't do anything else. one job and it ate.

πŸ‘‘ GENERAL OPTIONS:

  • -report-path PATH β€” path to the report. Default: pkgdiff_reports/<pkg>/<v1>_to_<v2>/changes_report.html
  • -details β€” try to create detailed reports.
  • -size-limit SIZE β€” don't analyze files larger than SIZE in kilobytes.
  • -width WIDTH β€” width of the Visual Diff. Default: 80
  • -prelines NUM β€” size of the context in the Visual Diff. Default: 10
  • -ignore-space-change β€” ignore changes in the amount of white space.
  • -ignore-all-space β€” ignore all white space.
  • -ignore-blank-lines β€” ignore changes whose lines are all blank.
  • -quick β€” quick mode without creating of Visual Diffs for files.
  • -minimal β€” try to find a smaller set of changes.
  • -no-wdiff β€” do not use GNU Wdiff for analysis of changes. This may be two times faster, but produces lower quality reports. fast but messy, we love a tradeoff πŸ’€

πŸ“ OTHER OPTIONS:

  • -check-usage β€” check if package content is used by other packages in the repository.
  • -pkg-manager NAME β€” specify package management tool. Supported:
    • urpm β€” Mandriva URPM
  • -template β€” create XML-descriptor template ./VERSION.xml
  • -extra-info DIR β€” dump extra info to DIR.
  • -tmp-dir DIR β€” use custom temp directory.
  • -c|-hide-unchanged β€” don't show unchanged files in the report.
  • -debug β€” show debug info.
  • -name NAME β€” set name of the package to NAME.
  • -title TITLE β€” set name of the package in the title of the report to TITLE.
  • -vnum1 NUM β€” set version number of the old package to NUM.
  • -vnum2 NUM β€” set version number of the new package to NUM.
  • -links-target TARGET β€” set target attribute for links in the report:
    • _self (default)
    • _blank
  • -list-added-removed β€” show content of added and removed text files.
  • -skip-subarchives β€” skip checking of archives inside the input packages.
  • -skip-pattern REGEX β€” don't check files matching REGEX.
  • -d|-directories β€” compare directories instead of packages.
  • -all-text β€” treat all files in the archive as text files.
  • -check-byte-code β€” when comparing Java classes, also check for byte code changes.
  • -full-method-diffs β€” perform a full diff of method bodies when -check-byte-code is specified.
  • -track-unchanged β€” track unchanged files in extra info.

🧚 REPORT:

Report will be generated to:

pkgdiff_reports/<pkg>/<v1>_to_<v2>/changes_report.html

πŸ’€ EXIT CODES:

  • 0 β€” Unchanged. The tool has run without any errors.
  • non-zero β€” Changed or the tool has run with errors.

πŸ”₯ MORE INFORMATION:

https://github.com/lvc/pkgdiff


πŸ’– AUTHOR πŸ’–

This manual page was written by Peter Spiess-Knafl <dev@spiessknafl.at> for the Debian GNU/Linux system (but may be used by others). okay king, thank you for your service 🫢

Written by Andrey Ponomarenko.


Copyright Β© 2022 Andrey Ponomarenko's ABI Laboratory License: GNU GPL <http://www.gnu.org/licenses/> This program is free software: you can redistribute it and/or modify it.


and that's the whole page bestie, no notes, she ate and left no crumbs πŸ’…

Package Changes Analyzer (PkgD... β€” August 2025 β€” PKGDIFF(1) 🌈✨ that's the version-and-date sign-off, mwah, go diff something and slay πŸ’–πŸ¦‹πŸŽ€
πŸ“¦ where this page comes from