A package manager (such as RPM) is in charge of maintaining the integrity of an operating system by dividing its installed software into packages.

Some sample package managers:

  • Slackware at first GNU tar and gzip as a primitive package manager; its packages *.tar.gz are often called tarballs. It has since added some basic checking (please fill me in on this).
  • Microsoft Windows uses InstallShield, WISE, etc., which provide very little if any dependency management; each package must include a copy of whatever libraries it uses (such as MFC, etc.). This leads to DLL hell unless you use a Windows implementation such as Windows 2000 or Windows XP that lets applications use their own versions of DLLs without overwriting system DLLs.
  • Red Hat uses rpm which is a recursive name for "rpm package manager". (It's not Red Hat Package Manager; otherwise, it'd be RHPM.) rpm tracks dependencies (packages and/or package versions on which a particular package relies) in a centralized database so you know what other stuff you need installed to run a package. Debian GNU/Linux's dpkg is similar.
Some package managers have learned to fetch packages automatically from the Internet.
  • Debian's APT (which replaced the older dpkg-ftp) is a frontend to other package managers, especially dpkg. APT can download packages from repositories on the Internet and upgrade your whole distribution in one fell swoop. Interested? (Read More...)
  • Windows uses Windows Update, which appears to do something similar except it restricts you to Microsoft's package repositories and provides a web interface that cannot readily be automated.

Return to PM

A package manager is also supplied with ActiveState's Win32 port of Perl. The executable, "ppm" can interactively pull down precompiled Perl modules from ActiveState's FTP server and install them for you. It comes with support for querying for a list of installed packages and updating them dynamically. It's a replacement for the CPAN module (implementing functionality roughly similar to "perl -MCPAN -e shell"), which is basically a Unix critter, and doesn't work so good under Windows.

Let's also not forget that Debian packages can have configuration scripts. This makes upgrading as well as initial installation a lot smoother than RPM.

In many cases you can upgrade the entire operating system (minus kernel) without reconfiguring or rebooting.

Log in or register to write something here or to contact authors.