What are the features of good packaging?

What different features do Debian and Red Hat packaging formats (deb and RPM) offer?

  • Are there things that one provides that the other doesn't? What kind of trade-offs are made between the two?

  • Answer:

    Very little if any differences in features. Neither distribution is considered bleeding edge. (Fedora, a Red Hat project is). Red Hat will include binaries for which there is no source code, or open source license. Debian, may offer them, but they will be a separate download. Broadcom Ethernet cards for example. The actual Debian distribution will be truly open source, but with concessions to reality. The big difference is the package manager apt vs. yum. But the feature set is very much the same. //EDIT// Since , made his edits; this is a continuation. Debian uses aptitude or apt-get for package management Red Hat uses yum. Yellowdog Updater Modified. There really isn't much of a difference. Both verify the software exists, both verify that it can be installed and both will offer to download any package that you might need to make the install. And both will make suggestions as other software you might want to install. There may be some subtle differences, but there is no trade-off of any importance that would make me choose one distribution over the other because of its package manager.

Alan Cohen at Quora Visit the source

Was this solution helpful to you?

Other answers

I am more familiar with RPM on CentOS, though I have used DEB a bit on Maemo Linux and briefly on a Beaglebone. Both package software into a single container. Both allow a spotware package to be installed or removed, Both keep track of what packages are installed on a system and what files belong to them. Both track dependencies. RPM stores a hash of all files in a database, so that the installed files can be checked against the database (for changes to hash or timetamp) for corruption or tampering. RPM uses digital signatures to verify downloaded pacakges before installation. It can have pre and post installation and uninstall scripts; e.g. a package upgrade will typically trigger a reload of running processes. DEB has a trigger feature but I am less familiar with that. My overall impression is that RPM is richer and more powerful, and correspondingly more complex to create. RPM can also store source code, in SRPM, in a form that can be rebuilt according to a spec file. Typically an SRPM consists of a regular tarball with makefiles, documentation, autoconfig files etc. plus a series of patches. RedHat typically includes an original distribution tarball for third-party software, together with a series of patch files to customise the installation for the RedHat directory conventions, back-port security patches for enterprise versions etc. The spec file directs the build, applying the patches, setting options for configure and make, defining dependencies, and creating one or more binary RPM packages (standard, development, debug etc). Rebuilding binary RPMs from source SRPM is trivial; writing a spec file for a new program less so.

Andrew Daviel

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.