pkgtreediff: Package tree diff tool

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Tool for comparing RPM packages and versions in OS dist trees or instances.


[Skip to Readme]

Properties

Versions 0.1, 0.2, 0.2.1, 0.3, 0.4, 0.4, 0.4.1, 0.5.0, 0.6.0
Change log CHANGELOG.md
Dependencies async, base (<5), directory, filepath, Glob, http-client (>=0.5.0), http-client-tls, http-directory (>=0.1.4 && <0.1.6 || >=0.1.8), semigroups, simple-cmd (>=0.1.4), simple-cmd-args, text [details]
License GPL-3.0-only
Copyright 2019-2020 Jens Petersen
Author Jens Petersen
Maintainer juhpetersen@gmail.com
Category Util
Home page https://github.com/juhp/pkgtreediff
Bug tracker https://github.com/juhp/pkgtreediff/issues
Source repo head: git clone https://github.com/juhp/pkgtreediff.git
Uploaded by JensPetersen at 2020-03-13T09:31:20Z

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for pkgtreediff-0.4

[back to package description]

pkgtreediff

Hackage GPL-3 license Stackage Lts Stackage Nightly Build status

pkgtreediff compares the NVRs (name-version-release) of RPM packages in OS package trees and/or installations:

Usage examples

Containers

Compare the content of two rpm based containers (new added packages in fedora:31)

$ pkgtreediff --new "podman run --rm fedora:30 rpm -qa" "podman run --rm fedora:31 rpm -qa"
libgomp.x86_64  9.2.1-1.fc31
tss2.x86_64  1331-2.fc31
yum.noarch  4.2.9-5.fc31

Package trees

Package source changes between Fedora 30 and 31 Server at GA (ignoring release bumps):

$ pkgtreediff --ignore-release https://dl.fedoraproject.org/pub/fedora/linux/releases/{30,31}/Server/source/tree/Packages/
- 389-ds-base.src  1.4.1.2-2.fc30
- GConf2.src  3.2.6-25.fc30
- GeoIP.src  1.6.12-5.fc30
- GeoIP-GeoLite-data.src  2018.06-3.fc30
- ImageMagick.src  6.9.10.28-1.fc30
ModemManager.src: 1.10.0-1.fc30 -> 1.10.6-2.fc31
NetworkManager.src: 1.16.0-1.fc30 -> 1.20.4-1.fc31
- ORBit2.src  2.14.19-21.fc30
- OpenEXR.src  2.2.0-16.fc30
:
- compface.src  1.5.2-27.fc30
- comps-extras.src  24-5.fc30
+ conmon.src  2.0.1-1.fc31
container-selinux.src: 2.95-1.gite3ebc68.fc30 -> 2.117.0-1.gitbfde70a.fc31
- container-storage-setup.src  0.11.0-5.dev.git413b408.fc30
+ containerd.src  1.2.6-2.20190627gitd68b593.fc31
:
:
zchunk.src: 1.1.1-3.fc30 -> 1.1.2-3.fc31
zd1211-firmware.src: 1.5-4.fc30 -> 1.5-5.fc31
- zerofree.src  1.1.1-3.fc30
- zfs-fuse.src  0.7.2.2-11.fc30
- zile.src  2.4.14-3.fc30
zip.src: 3.0-24.fc30 -> 3.0-25.fc31
zlib.src: 1.2.11-15.fc30 -> 1.2.11-19.fc31
zram.src: 0.3-1.fc30 -> 0.4-1.fc31
zstd.src: 1.3.8-2.fc30 -> 1.4.2-1.fc31
- zziplib.src  0.13.69-5.fc30

Summary
Updated: 918
Added: 17
Deleted: 765
Arch changed: 0
Total packages: 1690 -> 942

Hosts

Compare the packages on local and another host:

pkgtreediff "rpm -qa" "ssh otherhost rpm -qa"

Any types of sources can be compared, together with the use of flags.

Builds

Builds are available in copr for Fedora, EPEL, and OpenSuSE (more details).