PackageShell was first developed in 1996 as an addition to Microsoft SMS 1.1. Since then it has evolved with the System Center line of products. PackageShell is currently supported in conjunction with:

  • Systems Management Server 2003
  • System Center Configuration Manager 2007
  • System Center Configuration Manager 2012

The integration consists of the following features:

Invocation
  • PackageShell is typically invoked from a Configuration Manager 'Program' inside a Package.
  • In Configuration Manager 2012 it can also be invoked as a Scripted Installation Deployment Type.
  • PackageShell scripts use a superset of the well-known SMS package definition file format. This simple ini-based syntax is well accepted by package authors.
  • As a wrapper for scripted installations, it complements the Configuration Manager client and offers new features.
Interaction
  • PackageShell extends the Configuration Manager hardware inventory.
  • The distribution of software and updates is automatically paused during a package execution. This prevents errors from concurrent activities.
  • Installation Status MIFs are additionally used to indicate errors back to Configuration Manager.
Awareness
  • When started by a Configuration Manager software distribution, PackageShell will detect and report the used Package ID, Advertisement ID and original source path.
  • PackageShell will also detect if it is started inside a running Task-Sequence and will negotiate reboot requests as necessary.
Interfaces
  • WMI classes as documented in the SDK.
  • Configuration.mof, sms_def.mof.
  • Package Definition File format .SMS (optional)

See also the demo video on more details.