in headless installations to a large number of computers. This kind of pre-configured installation is also supported by dpkg. Repositories To give users more control over the kinds of software that they are allowing to be installed on their system (and sometimes due to legal or convenience reasons on the distributors' side), software is often downloaded from a number of software repositories. Upgrade suppression When a user interacts with the package management software to bring about an upgrade, it is customary to present the user with the list of actions to be executed (usually the list of packages to be upgraded, and possibly giving the old and new version numbers), and allow the user to either accept the upgrade in bulk, or select individual packages for upgrades. Many package managers can be configured to never upgrade certain packages, or to upgrade them only when critical vulnerabilities or instabilities are found in the previous version, as defined by the packager of the software. This process is sometimes called version pinning. For instance: yum supports this with the syntax exclude=openoffice* pacman with IgnorePkg= openoffice (to suppress upgrading openoffice in both cases) dpkg and dselect support this partially through the hold flag in package selections APT extends the hold flag through the complex "pinning" mechanism (Users can also blacklist a package) aptitude has "hold" and "forbid" flags portage supports this through the package.mask configuration file Cascading package removal Some of the more advanced package management features offer "cascading package removal", in which all packages that depend on the target package and all packages that only the target package depends on, are also removed. Comparison of commands Although the commands are specific for every particular package manager, they are to a large extent translatable, as most package managers offer similar functions. The Arch Linux Pacman/Rosetta wiki offers an extensive overview. Prevalence Package managers like dpkg have existed as early as 1994. Linux distributions oriented to binary packages rely heavily on package management systems as their primary means of managing and maintaining software. Mobile operating systems such as Android (Linux-based), iOS (Unix-based), and Windows Phone rely almost exclusively on their respective vendors' app stores and thus use their own dedicated package management systems. Comparison with installers A package manager is often called an "install manager", which can lead to a confusion between package managers and installers. The differences include: Comparison with build automation utility Most