Linux Package Management: Keeping Up with the Times
Introduction to Package Types
It's easy to just kind of trundle along without giving much thought to how our software changes over the years. We use the same old features version after version unless a new one jumps out at us through a new clickable button, or someone's newsgroup post. The longer you've been working with something, the more you get behind, and I certainly find that's true in my case from time to time.
So, to benefit both myself and my readers, I figured it was time to take a trip down Linux package management lane and see how far we've come from the days of manually placing each tar file so we can extract it to just the right spot.
Some of you might see this material as a little basic, but bear with me, not everyone is as omniscient as you are! I don't claim that the following list is exhaustive, but there are a number of popular package types in the Linux world, and you can recognize them by their filename extensions:
|.bz||Burrows-Wheeler algorithmic compression||bzip2, bunzip2|
|.gz||Lempel-Ziv algorithmic compression||gzip, gunzip|
|.deb||Debian GNU/Linux package manager||dselect, dpkg, apt-get, dpkg-deb, dpkg-split, apt-cdrom, dpkg-ftp, mirror, mirror-master, dpkg-mountable, make-kpkg|
|.rpm||Red Hat Linux package manager||rpm, rpmfind, rpmsearch, rpm2html, rpmwatch|
|.tar||File and directory packager||tar .tar.gz or .tgz|
|Tarball||common combination of file and directory packaging, and compression||tar, gzip, gunzip|
|.Z||Adaptive Lempel-Ziv algorithmic compression||compress, uncompress|
|.zip||Windows Zip compatible compression||zip, unzip, zipcloak, zipnote, zipsplit|
As you can see, some of the formats are specific to particular Linux distributions, such as .deb and .rpm. Others, such as .gz, .tgz, .tar.gz, and .tar are quite common in the Linux world, and are still used alongside the more complex package managers. Others, such as .Z, .zip, and .bz, are more common in other forms of Unix, or for particular uses such as using .zip to transfer compressed files between operating systems.
Let's take a look at the more commonly-used formats, and then at some of the tools that are lingering in the wings.