Image Packaging System

From Wikipedia, the free encyclopedia

The Image Packaging System, also known as IPS[1] or pkg(5), is a cross-platform 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. IPS is coded in the Python programming language.


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:


The fact that IPS delivers each single file in a separate shelf[clarification needed] 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[edit]

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).


  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.

External links[edit]