TECHNOLOGY
- Dokuwiki
- Miscellaneous
Its pretty simple really… I got my first exposure to RedHat at the Atlanta Linux Showcase in the mid-90s. At that time, high-speed home internet connections didn't exist so multi-CD Linux distros were a great thing. RedHat and SuSE both had offerings, so I used their distributions for several years.
RedHat created the RPM format, and it was fantastic in the early days of Linux. It combined an archiver, an installer, and a software catalog. There's a good article on its development here. Looking back, I think it contributed more to the success of Linux than any other tool.
But times changed. SuSE integrated the idea of a network repository into their YaST administration tool. that let users download the latest package updates directly from the internet. Right away, I started using that to keep my system current. But I also realized that RPM must not have networking features built into it. RPM was beginning to show its age.
Almost simultaneously, I was introduced to Debian by a friend. It was nowhere close to SuSE in terms of GUI polish. I remember calling it “the little engine that could”. But he really praised it and I wanted to understand why. So he brought his laptop to work one day and walked me through a distribution upgrade. With a single command-line (“apt-get dist-upgrade”) and a few well-answered questions, he completely upgrade his distribution from the internet and everything worked. I was impressed.
At that moment, I became convinced that repository-based software distribution was superior to anything else. I switched my distribution to Debian and I've never looked back. I've tried a few other distributions since that time, but they've all been Debian variants which use the same repository system.
Getting back to RPM…
Here's an example of using up2date. First, we need to find out if a package is available in the repository. So we invoke this command.
up2date --showall | grep -i your-package-name
A similar process exists for apt:
apt-cache search your-package-name
Then we need to download the package and install it. We do this in 2 steps with up2date:
up2date --get your-package-name up2date your-package-name
It only takes one step with apt:
apt-get install your-package-name
So while RPM itself is still valuable, the features it needs are being built by the community to fill the void left by RedHat. There is a good article at Linux Weekly News that compares package managers like rpm, urpmi, installpkg, and apt. It basically agrees with what I've said here.