Image Packaging System

The Image Packaging System, also known as IPS[1] or pkg(5), is a cross-platform (written in Python) package management system created by the OpenSolaris community in coordination with Sun Microsystems. It is used by Solaris 11, several illumos-based distributions: OpenIndiana, OmniOS, XStreamOS[2] and a growing number of layered applications, including GlassFish, across a variety of OS platforms.

Features

Features include:

  • Use of ZFS, allowing multiple boot environments and easy package operation rollbacks
  • Transactional actions
  • Support for multiple platform architectures within a single package
  • Legacy support for SVR4 packages
  • Extensive search grammar
  • Remote search capability
  • Changes-only based package updates
  • Network package repository
  • File and network-based package publication
  • Package operation history
  • On-disk package format (p5p)
  • Multi-platform ports for layered applications:

Advantages

The fact that IPS delivers each single file in a separate shelf with a separate checksum, a package update only needs to replace files that have been modified. For ELF binaries, it computes checksums only from the loaded parts of an ELF binary; this permits e.g. to avoid to update an ELF binary that changed only the ELF comment section.

Trade offs

Due to the fact that IPS delivers each single file in a separate shelf, slow operation is caused when the input source is on a medium with high latency (e.g. internet with higher round trip time or CD/DVD media with slow seeks).

References

  1. "Packaging and Delivering Software With the Image Packaging System in Oracle Solaris 11.1". Oracle Solaris 11.1 Information Library. Retrieved 18 December 2012.
  2. "Distributions - illumos - illumos wiki". Illumos wiki. Retrieved 12 May 2015.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.