FACTOID # 3: South Carolina has the highest rate of violent crimes and aggravated assaults per capita among US states.
 
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 
   
 
WHAT'S NEW
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Package management system
Illustration of a package management system being used to download new software. A typical manual action requested is restarting the computer.
Illustration of a package management system being used to download new software. A typical manual action requested is restarting the computer.

A package management system is a collection of tools to automate the process of installing, upgrading, configuring, and removing software packages from a computer. The term is most commonly used with regards to Unix-like systems, particularly Linux, and these systems may rely heavily on it, with a typical Linux distribution including thousands of discrete packages. Image File history File links No higher resolution available. ... Shortcut: WP:WIN Wikipedia is an online encyclopedia and, as a means to that end, also an online community. ... Image File history File links This is a lossless scalable vector image. ... Image File history File links This is a lossless scalable vector image. ... A soft reboot (also known as a warm reboot, in contrast to a cold reboot) is restarting a computer under software control, without removing power or (directly) triggering a reset line. ... A software package is a bundle of one or several files that either are necessary for the execution of a computer program, or add features for a program already installed on the computer or network of computers. ... This article is about the machine. ... Diagram of the relationships between several Unix-like systems A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification. ... This article is about operating systems that use the Linux kernel. ... A Linux distribution, often simply distribution or distro, is a member of the Linux family of Unix-like operating systems comprising the Linux kernel, the non-kernel parts of the GNU operating system, and assorted other software. ...


In such a system, software is distributed in packages, usually encapsulated into a single file. As well as the software itself, packages often include other important information, such as the full name, a description of its purpose, the version number, vendor of the software, checksum information, and a list of other packages, known as dependencies, that are required for the software to run properly. This meta-information is typically entered into a local package database. A checksum is a form of redundancy check, a simple way to protect the integrity of data by detecting errors in data that are sent through space (telecommunications) or time (storage). ... In computer science, coupling or dependency is the degree to which each program module relies on each one of the other modules. ... Meta-information is information that defines information. ...


The differences between a package management system and an installer are: An installation program or installer is a computer program that installs files, such as applications, drivers, or other software, onto a computer. ...

Package Management System Installer
Typically part of the operating system. Each product comes bundled with its own installer.
Uses a single installation database. Tracks its own installation.
Can verify and manage all packages on the system. Only works with its bundled product.
Single package management system vendor. Multiple installer vendors.
Single package format. Multiple installation formats.

Ian Murdock has commented that package management is "the single biggest advancement Linux has brought to the industry", that it blurs the boundaries between operating system and applications, and that it makes it "easier to push new innovations [...] into the marketplace and [...] evolve the OS".[1] Ian Murdock is the founder of the Debian project and the commercial Progeny Debian distribution. ... This article is about operating systems that use the Linux kernel. ...

Contents

Function

Package management systems are charged with the task of organising all of the packages installed on a system and maintaining their usability. These systems meet these goals using various combinations of the following techniques:

  • Verification of file checksums to help prevent differences between the local and official versions of a package
  • Checking of digital signatures
  • Simple installation, upgrade, and removal facilities (c.f. file archiver)
  • Dependency tracking to deliver working software from a package
  • Update checking to provide the latest version of software, which often includes bug fixes and security updates
  • Grouping of packages by function to help eliminate user confusion when installing or maintaining them.

Several of the widely used package management systems take advantage of simple backends for actually installing the packages. For instance, yum relies on rpm as a backend, and apt relies on dpkg. A file archiver combines a number of files together into one archive file, or a series of archive files, for easier transportation or storage. ... The Yellow dog Updater, Modified (YUM) is a free software/open source command line package management utility for RPM-compatible Linux operating systems. ... RPM Package Manager (originally Red Hat Package Manager, abbreviated RPM) is a package management system. ... Advanced Packaging Tool, or APT, is a package management system used by Debian and its derivatives. ... dpkg (short for Debian PacKaGe) is the base of the Debian package management system. ...


Challenges with shared libraries

On systems where applications share pieces of machine instructions (i.e. packages' binaries are dynamic, as opposed to static), such as most Linux distributions, dependency checking becomes a necessity when installing and uninstalling packages. In computer science, a Dynamic Library, also refered to as a Dynamically Linked Library, is a computer library that implements the concept of dynamic linking. ... now. ... A Linux distribution, often simply distribution or distro, is a member of the Linux family of Unix-like operating systems comprising the Linux kernel, the non-kernel parts of the GNU operating system, and assorted other software. ...


Failure of package management systems to deal with complex relationships between different packages, or even a lack of a management system that would handle such a thing in the first place, results in what is habitually known as "dependency hell". The most popular specific kind of that is the DLL hell, which refers to clusters of problems that could be observed with dynamically linked libraries on Windows systems. Dependency hell is a colloquial term for the frustration of some software users who have installed software packages which have dependencies on specific versions of other software packages. ... DLL hell is a colorful term given to any problem based on a difficulty in managing Dynamically Linked Libraries (DLLs) installed on a particular copy of an operating system. ...


Some of the more advanced package management features are recursive and cascading package removal [2], in which all packages that depend on the target package and all packages that only the target package depends on, are also removed, respectively.


Front-ends for locally compiled packages

It is common for local administrators to install software not available in the repositories available through the package management. An example would be a newer version of a software application than that supplied with a distribution, or an alternative to that chosen by the distribution. If the additional software is distributed in source-only form, this approach requires local compilation. However, if additional software is locally added, the state of the local system may fall out of synchronization with the state of the package manager's database. If so, the local administrator user will be required to take additional measures to ensure the entire system is kept up to date. The package manager may no longer be able to do so automatically.


There are tools available to ensure that locally compiled packages are integrated with the package management. For distributions based on .deb and .rpm files as well as Slackware Linux, there is CheckInstall, and for recipe-based systems such as Gentoo Linux and hybrid systems such as Arch Linux, it is usually easy to write a recipe first, which then ensures that the package fits into the local package database.[citation needed] CheckInstall is a computer program which eases the installation and uninstallation of software compiled from source by making use of package management systems. ... The Gentoo Linux operating system (pronounced ) is a Linux distribution named after the Gentoo penguin. ... Arch Linux is a Linux distribution inspired by CRUX and intended to be lightweight and simple for advanced users. ...


Conversion of binary packages

Further information: Alien (computing)

Alien is a program that converts between different Linux package formats. It supports conversion between Linux Standard Base, RPM, deb, Stampede (.slp) and Slackware (tgz) packages. Alien is a computer program that converts between different Linux package distribution file formats. ... Alien is a computer program that converts between different Linux package distribution file formats. ... Linux package formats are the different file formats used to package software for various GNU/Linux distributions. ... The Linux Standard Base, or LSB, is a joint project by several GNU/Linux distributions under the organizational structure of The Free Standards Group to standardize the internal structure of Linux-based operating systems. ... RPM Package Manager (originally Red Hat Package Manager, abbreviated RPM) is a package management system. ... deb is the extension of the Debian software package format and the most often used name for such binary packages. ... Slackware was one of the earliest Linux distributions, and is the oldest, and most UNIX-like, distribution still being maintained[1]. It was created by Patrick Volkerding of Slackware Linux, Inc. ... In computing, the tar file format is a type of archive file format: the Tape ARchive format. ...


Maintenance of configuration

Particularly troublesome with software upgrades are upgrades of configuration files. Since package management systems, at least on Unix systems, originated as extensions of file archiving utilities, they can usually only either overwrite or retain configuration files, rather than applying rules to them. There are exceptions to this that usually apply to kernel configuration (which, if broken, will render the computer unusable after a restart). Problems can be caused if the format of configuration files changes. For instance, if the old configuration file does not explicitly disable new options that should be disabled. Some package management systems, such as Debian's dpkg, allow configuration during installation. In other situations, it is desirable to install packages with the default configuration and then overwrite this configuration, for instance, in headless installations to a large number of computers. (This kind of pre-configured installation is also supported by dpkg.) A file archiver combines a number of files together into one archive file, or a series of archive files, for easier transportation or storage. ... Debian is a free operating system. ... dpkg (short for Debian PacKaGe) is the base of the Debian package management system. ... In software, headless refers to computer programs that use textual input/output to interact with users, instead of using graphics or graphical user interfaces (GUIs). ... dpkg (short for Debian PacKaGe) is the base of the Debian package management system. ...


Repositories

In order to give users easy 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 repositories.[3]


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 things to be done (usually the list of packages to be upgraded, and possibly giving the old and new version numbers), and allow him to either accept the upgrade in bulk, or select individual packages for upgrades. Many package management systems can be configured to never upgrade certain packages, or only upgrade them 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*,[4] pacman with IgnorePkg = openoffice[2] (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[5]
  • aptitude has "hold" and "forbid" flags

Advanced Packaging Tool, or APT, is a package management system used by Debian and its derivatives. ... aptitude is a front-end to APT. It displays a list of software packages and allows the user to interactively pick packages to install or remove. ...

Examples

Free software systems

See also: Linux package formats

By the nature of free software, packages under similar and compatible licenses are available for use on a number of operating systems. These packages can be easily combined and distributed using configurable and internally complex packaging systems to handle many permutations of software and manage version-specific dependencies and conflicts. Some packaging systems of free software are also themselves released as free software. One typical difference between package management in proprietary operating systems, such as Mac OS X and Windows, and those in free software, such as Linux, is that free software systems permit third party packages to also be installed and upgraded through the same mechanism, whereas the PMS of Mac OS X and Windows will only upgrade software provided by Apple and Microsoft, respectively (with the exception of some third party drivers in Windows). The ability to continuously upgrade third party software is typically added by adding the URL of the corresponding repository to the package management's configuration file. Linux package formats are the different file formats used to package software for various GNU/Linux distributions. ... Free software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions only to ensure that further recipients can also do these things. ... “URL” redirects here. ...


For binary packages

FreeBSD
  • pkg_add(1) - an utility for installing software package distributions
  • pkg_create(1) - an utility for creating software package distributions
  • pkg_delete(1) - an utility for deleting previously installed software package distributions
  • pkg_info(1) - an utility for displaying information on software packages

GNU/Linux

dpkg (short for Debian PacKaGe) is the base of the Debian package management system. ... Debian is a free operating system. ... deb is the extension of the Debian software package format and the most often used name for such binary packages. ... Advanced Packaging Tool, or APT, is a package management system used by Debian and its derivatives. ... RPM Package Manager (originally Red Hat Package Manager, abbreviated RPM) is a package management system. ... For other uses, see Red Hat (disambiguation). ... A Linux distribution, often simply distribution or distro, is a member of the Linux family of Unix-like operating systems comprising the Linux kernel, the non-kernel parts of the GNU operating system, and assorted other software. ... The Linux Standard Base, or LSB, is a joint project by several GNU/Linux distributions under the organizational structure of The Free Standards Group to standardize the internal structure of Linux-based operating systems. ... The title given to this article is incorrect due to technical limitations. ... up2date is a tool used by Red Hat Enterprise Linux, CentOS and Fedora Core that downloads and installs new software and upgrades to the operating system. ... Mandriva (merger of Mandrakesoft, Lycoris, and Conectiva) is a French software company, and creator of Mandriva Linux. ... urpmi is a Mandrake Linux package management tool for installing, removing, updating and querying software packages of local or remote (networked) media. ... openSUSE is a community project, sponsored by Novell, to develop and maintain a general purpose Linux distribution. ... YaST from SUSE 9. ... The Yellow Dog Updater, Modified (yum for short) acts as a package manager for RPM-compatible Linux computer systems. ... Fedora (previously called Fedora Core) is an RPM-based, general purpose Linux distribution, developed by the community-supported Fedora Project and sponsored by Red Hat. ... Yellow Dog Linux (often abbreviated YDL) is a free software, open-source Linux distribution for Power Architecture hardware. ... In computing, the tar file format is a type of archive file format: the Tape ARchive format. ... In computing, the tar file format is a type of archive file format: the Tape ARchive format. ... gzip is a software application used for file compression. ... Slackware was one of the earliest Linux distributions, and is the oldest, and most UNIX-like, distribution still being maintained[1]. It was created by Patrick Volkerding of Slackware Linux, Inc. ... slapt-get is an APT-like system for Slackware package management. ... slackpkg is a tool for installing or upgrading packages automatically through a network or over the Internet for Slackware. ... Swaret is a program for the Slackware distribution of Linux that resolves dependencies. ... The pacman logo pacman at work Pacman is the official software package manager for the Linux distribution Arch Linux. ... Arch Linux is a Linux distribution inspired by CRUX and intended to be lightweight and simple for advanced users. ... In computing, tar (derived from tape archive) is both file format (in the form of a type of archive bitstream) and the name of the program used to handle such files. ... Smart is a package manager software project. ... dpkg (short for Debian PacKaGe) is the base of the Debian package management system. ...

Mac OS X
  • fink, for Mac OS X, derives partially from dpkg/apt and partially from ports.
  • MacPorts, formerly called DarwinPorts, originated from the OpenDarwin project.

In computing, the Fink project is an effort to port Unix programs to Mac OS X. Fink uses dpkg and APT (Debians package management system), as well as its own frontend program, fink (which is implemented as a set of Perl modules). ... Mac OS X (pronounced ) is a line of graphical operating systems developed, marketed, and sold by Apple Inc. ... MacPorts, formerly called DarwinPorts,[1] is an open source project to simplify installation of other open source software on the Mac OS X and Darwin operating systems. ... Hexley, the mascot of OpenDarwin OpenDarwin is a freely available, multi-platform BSD / Mach 3. ...

Windows
  • Appupdater - Appupdater provides advanced functionality to Windows, similar to apt-get or yum on Linux. Fully customizable for use in a corporate environment.
  • Windows-get - Windows-get is a command-line package manager with very similar syntax to linux apt-get. The repositories is maintained by volunteers and includes browsers, archive handlers, text editors etc
  • Winpackman - The Windows Package Manager is a graphical package manager under development.
  • GetIt - Uses several other packet managers as sources and combines their repositories to one big catalog.
  • Appsnap - An advanced packet managers for windows in python released under a GPL.
  • FileHippo Update Checker - Not really a fully-featured packet manager but checks for updates for a big number of software of all licenses.
  • Installpad - Very basic: Lets you install a small number of applications, no update functionality.
  • VersionTracker - Checks for updatable software on your computer. Commercial.
  • AppGet - Comunity-based update checker.
  • WinLibre - Very basic: Lets you install a small number of applications, no update functionality.
  • Google Pack - Google's applications suite, that deploys many third party applications and includes Google Updater to keep the software up-to-date.

Google Pack is a one-stop software package that helps you discover, install, and maintain a wide range of essential PC programs,[1] intended for buyers of new PCs. ...

Solaris
  • SysV format (sometimes called pkgadd format), used by Solaris.

Solaris is a computer operating system developed by Sun Microsystems. ...

Cross platform

OpenPKG is a open source package management system for Unix. ... RPM Package Manager (originally Red Hat Package Manager, abbreviated RPM) is a package management system. ... This article is about operating systems that use the Linux kernel. ... BSD redirects here; for other uses see BSD (disambiguation). ... Solaris is a computer operating system developed by Sun Microsystems. ...

For installing using compile scripts

  • Portage and emerge are used by Gentoo Linux. They were inspired by the BSD ports system and use scripts called ebuilds to install software.
  • A recipe file contains information on how to download, unpack, compile and install a package in GoboLinux distribution using its Compile tool.

Portage is an advanced package management system. ... Look up Emerge in Gentoo-wiki, the wiki about the Gentoo Linux distribution. ... The Gentoo Linux operating system (pronounced ) is a Linux distribution named after the Gentoo penguin. ... An ebuild is a specialized bash script format created by the Gentoo Linux project for use in its Portage software management system which automates compilation and installation procedures for software packages. ... This article is about culinary recipes. ... GoboLinux is an alternative Linux distribution. ... GoboLinux is an alternative Linux distribution. ...

Hybrid systems

The FreeBSD Ports Collection provides an easy and consistent way of installing software ported to FreeBSD. It uses Makefiles laid out in a directory hierarchy, so software can be installed and deinstalled with the make command. ... make is a computer program that automates the compilation of programs whose files are dependent on each other. ... MacPorts, formerly called DarwinPorts,[1] is an open source project to simplify installation of other open source software on the Mac OS X and Darwin operating systems. ... NetBSD is a freely redistributable, open source version of the Unix-like BSD computer operating system. ... pkgsrc (package source) is a package management system for Unix-like operating systems. ... OpenBSD is a Unix-like computer operating system descended from Berkeley Software Distribution (BSD), a Unix derivative developed at the University of California, Berkeley. ... Ports collections (or ports trees, or just ports) are the sets of makefiles and patches provided by the BSD-based operating systems, FreeBSD, NetBSD and OpenBSD, as a simple method of installing software or creating binary packages. ...

Meta package managers

The following unify package management for several or all Linux and sometimes Unix variants. These, too, are based on the concept of a recipe file.

  • Autopackage uses .package files.
  • epm, developed by Easy Software Products (creators of CUPS), is a "meta packager", that allows to create native packages for all Linux and Unix operating systems (.deb, .rpm, .tgz for Linux, pkg for Solaris and *BSD, .dmg for OS X,...) controlled from a single *.list file.
  • klik aims to provide an easy way of getting software packages for most major distributions without the dependency problems so common in many other package formats.
  • Zero Install installs each package into its own directory and uses environment variables to let each program find its libraries. Package and dependency information is downloaded directly from the software authors' pages in an XML format, similar to an RSS Feed.
  • The Nix Package Manager manages packages in a purely functional way.

Autopackage Autopackage aims to make it simple to create a package that can be installed on all Linux distributions and have that package integrate well into the desktop environment. ... Cups may refer to: the Common Unix Printing System cup as a drinking vessel, a unit of volume, etc. ... The correct title of this article is klik. ... Zero Install is a means of distributing (currently only) Linux software. ... RSS, pronounced arr-ess-ess, is a web syndication protocol primarily used by news websites and weblogs. ... Nix is a package manager for computer systems. ... Purely functional is a term in computing used to describe algorithms, data structures or programming languages that exclude destructive modifications (updates). ...

Proprietary software systems

A wide variety of package management systems are in common use today by proprietary software operating systems, handling the installation of both proprietary and free packages. Proprietary software is software with restrictions on copying and modifying as enforced by the proprietor. ...

AIX (Advanced Interactive eXecutive) is a proprietary operating system developed by IBM based on UNIX System V. Before the product was ever marketed, the acronym AIX originally stood for Advanced IBM UNIX. AIX has pioneered numerous network operating system enhancements, introducing new innovations later adopted by Unix-like operating systems... The introduction to this article provides insufficient context for those unfamiliar with the subject matter. ... Software Distributor (SD) is the Hewlett-Packard companys name for their HP-UX software package management system. ... HP-UX (Hewlett Packard UniX) is Hewlett-Packards proprietary implementation of the Unix operating system, based on System V (initially System III). ... Microsoft . ... In the Microsoft . ... A diagram of the operation of a typical multi-language, multi-target compiler. ...

Application level package managers

Aside of the systems level application managers, there are some add-on package managers for operating systems with limited capabilities and for programming languages where developers need the latest libraries. Those include:

In contrast to systems level application managers, application level package managers focus on a small part of the operating system. They typically reside within a directory tree that is not maintained by the systems level package manager (like c:cygwin or /usr/local/fink). Though, this is not the case for the package managers that deal with programming libraries. This leads to a conflict as both package managers claim to "own" a file and might break upgrades. In computing, the Fink project is an effort to port Unix programs to Mac OS X. Fink uses dpkg and APT (Debians package management system), as well as its own frontend program, fink (which is implemented as a set of Perl modules). ... Mac OS X is the latest version of the Mac OS operating system for Macintosh computers. ... Cygwin (pronounced ) is a collection of free software tools originally developed by Cygnus Solutions to allow various versions of Microsoft Windows to act similar to a Unix system. ... 1. ... CPAN is an acronym standing for Comprehensive Perl Archive Network. ... Programming Republic of Perl logo Perl, also Practical Extraction and Report Language (a backronym, see below), is a programming language released by Larry Wall on December 18, 1987 that borrows features from C, sed, awk, shell scripting (sh), and (to a lesser extent) from many other programming languages. ... This article does not cite any references or sources. ... For the PHP Cold War history project, see Parallel History Project. ... RubyGems is a package manager for the Ruby programming language that provides a standard format for distributing Ruby programs and libraries (in a self-contained format called gems), a tool to easily manage the installation of gems, and a server for distributing them. ... Ruby is a reflective, object-oriented programming language. ... Python is an interpreted programming language created by Guido van Rossum in 1990. ...


See also

Free software Portal

Image File history File links Free_Software_Portal_Logo. ... Conary is a free software package management system created by rPath Inc and distributed under the terms of the Common Public License. ... A software repository is a storage location from which software packages may be be retrieved and installed on a computer. ...

References

  1. ^ http://ianmurdock.com/2007/07/21/how-package-management-changed-everything/
  2. ^ a b http://www.archlinux.org/pacman/pacman.8.html
  3. ^ Linux repository classification schemes. Retrieved on 2006-05-05.
  4. ^ http://lists.centos.org/pipermail/centos/2005-May/046320.html
  5. ^ http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.en.html#s-pin

Year 2006 (MMVI) was a common year starting on Sunday of the Gregorian calendar. ... is the 125th day of the year (126th in leap years) in the Gregorian calendar. ...

External links


  Results from FactBites:
 
Encyclopedia: Package management system (1397 words)
A package management system is a collection of tools to automate the process of installing, upgrading, configuring, and removing software packages from a computer.
Packages often include other important information, such as the full name, version, and vendor of the software, checksum information, and a list of other packages, known as dependencies, that are required for the software to run properly.
Package management systems are charged with the task of organising all of the packages installed on a system and maintaining their usability.
RPM Package Manager - Wikipedia, the free encyclopedia (749 words)
RPM Package Manager (or RPM, originally called "Red Hat Package Manager") is a package management system primarily intended for Linux.
However, note that package label is contained within the file and does not necessarily need to match the name of the file.
When using packages that are from a particular distribution (say Red Hat) or built for a particular distribution (for example Freshrpms [1] for Red Hat), then automatic dependency checking can work, using tools such as yum or apt (see below).
  More results at FactBites »

 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m