When a program or a library is packaged as a Deb or RPM package for distribution, several metadata files are included in the package. One of them is a "changelog" file, which records in reverse chronological order what changes occurred each time the package has been updated.
So if you want to find out what changes are made to the package that you are about to install or already installed, you can view the package's changelog. Here is how to check the changelog on Debian-based or Red-Hat based Linux.
View the Changelog of a Deb Package
There are several ways to view the changelog of an (installed or uninstalled) Deb package on Debian based Linux.
Method One: apt-get or aptitude
The latest apt-get allows you to check the changelog of a package, whether or not it is installed on your system.
aptitude, another command-line package manager, comes with the same option as apt-get to show the changelog of a package. aptitude comes pre-installed on all Debian-based distros except for Ubuntu desktop.
A nice thing about aptitude is that it can be supplemented with ncurses-based user interface.
To open ncurses-enhanced aptitude:
To search for a particular package on aptitude-curses, press "/" and type its name. On the description page of a package, press "C" to see its changelog.
Method Two: Synaptic
If you are a desktop user, an additional option to view a package's changelog is via synaptic, a graphical package management tool for Deb packages.
You can install it on Debian-based systems with:
Once you launch synaptic, you can easily check the changelog by clicking on "Get Changelog" button on any package description page.
Method Three (Ubuntu-specific): Software-Updater
Another GUI method, which is specific to Ubuntu desktop, is via Software Updater. This GUI tool alerts you of any new Ubuntu software updates, and installs them on your command. You can use Software Updater to check the changes made in any "to-be-installed" software. Note that Software Updater cannot show the changelog of any arbitrary package as all the other methods do.
Once it is launched with:
It can show the changelog of packages to-be installed (but not downloaded yet).
Method Four: /usr/share/doc
If you want to check the changelog of any "already-installed" package, you can simply read changelog files installed on your system as follows.
$ zless /usr/share/doc/<package-name>/changelog.gz
View the Changelog of an RPM Package
There are several ways to view the changelog of an (installed or uninstalled) RPM package on Red Hat based Linux.
Method One: Rpm
If you want to check the changelog of any "installed" package, you can use rpm command as follows.
Method Two: Repoquery
If you want to check the changelog of a package which is NOT installed on your system, you cannot use rpm command. Instead, you can use the repoquery command which will work whether or not a package is installed. You can install repoquery with:
To see the changelog of any arbitrary package using repoquery:
Method Three: yum-changelog
Another way to view a package's changelog is via yum's changelog plugin. Install the plugin as follows.
Now you can use yum command to see the changelog of individual packages before/after installing them.
The changelog plugin has additional options to customize the changelog view. For example:
To view the 5 most recent changelogs of a package:
To view all changelogs of a package since 2015/06/01:
Method Four (Fedora-specific): dnf
All three above methods still work on Fedora, except that you need to install yum if you have switched to dnf as a default package manager.
As of this writing, dnf does not yet provide an option to check the changelog of individual packages. One thing you can do with dnf is to show update advisories of any critical bug fixes, security patches and enhancements (similar to Ubuntu's Software Updater). To see the changelog of such critical updates, run:
Subscribe to Ask Xmodulo
Do you want to receive Linux related questions & answers published at Ask Xmodulo? Enter your email address below, and we will deliver our Linux Q&A straight to your email box, for free. Delivery powered by Google Feedburner.
Did you find this tutorial helpful? Then please be generous and support Xmodulo!