OS Manuals

/usr/bin/pkgdiff

A tool for visualizing changes in Linux software packages

From pkgdiff 1.8-r3 (os), captured 2026-11-05 by running pkgdiff --help (exit 0). permalink

NAME:
  Package Changes Analyzer
  A tool for visualizing changes in Linux software packages

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).

  The tool is intended for Linux maintainers who are interested
  in ensuring compatibility of old and new versions of packages.

  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.

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.

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
Options (30)
OptionDescriptionSource
-dumpversionPrint the tool version (1.8) and don't do anything else.help
-report-path PATHPath to the report.help
-detailsTry to create detailed reports.help
-size-limit SIZEDon't analyze files larger than SIZE in kilobytes.help
-width WIDTHWidth of the Visual Diff.help
-prelines NUMSize of the context in the Visual Diff.help
-ignore-space-changeIgnore changes in the amount of white space.help
-ignore-all-spaceIgnore all white space.help
-ignore-blank-linesIgnore changes whose lines are all blank.help
-quickQuick mode without creating of Visual Diffs for files.help
-minimalTry to find a smaller set of changes.help
-no-wdiffDo not use GNU Wdiff for analysis of changes.help
-check-usageCheck if package content is used by other packages in the repository.help
-pkg-manager NAMESpecify package management tool.help
-templateCreate XML-descriptor template ./VERSION.xmlhelp
-extra-info DIRDump extra info to DIR.help
-tmp-dir DIRUse custom temp directory.help
-debugShow debug info.help
-name NAMESet name of the package to NAME.help
-title TITLESet name of the package in the title of the report to TITLE.help
-vnum1 NUMSet version number of the old package to NUM.help
-vnum2 NUMSet version number of the new package to NUM.help
-links-target TARGETSet target attribute for links in the report: _self (default) _blankhelp
-list-added-removedShow content of added and removed text files.help
-skip-subarchivesSkip checking of archives inside the input packages.help
-skip-pattern REGEXDon't check files matching REGEX.help
-all-textTreat all files in the archive as text files.help
-check-byte-codeWhen comparing Java classes, also check for byte code changes.help
-full-method-diffsPerform a full diff of method bodies when -check-byte-code is specified.help
-track-unchangedTrack unchanged files in extra info.help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.