<!-- 
The contents of this Documentation are subject to the Public Documentation
License Version 1.01 (the "License"); you may only use this Documentation if
you comply with the terms of this License. A copy of the License is
available at http://www.opensolaris.org/os/community/documentation/license.
-->

<chapter id="index"><title>Introduction to IPS</title><highlights><para>The Image Packaging System, <command>pkg(5)</command>, is a framework
that provides for software lifecycle management such as installation, upgrade,
and removal of packages. IPS also provides users the ability to create their
own software packages, create and manage packaging repositories, and mirror
existing packaging repositories.</para><para>The OpenSolaris 2009.06 release uses IPS as its packaging system.</para><para>After an initial installation of the OpenSolaris 2009.06 operating system,
you may find that many of the software applications that you use on a regular
basis are not immediately available for use. You can install these software
applications from a packaging repository through the Image Packaging System
CLI and GUI (Package Manager) clients.</para><para>After you have installed the packages on your system, the IPS clients
can be used to search, upgrade, and manage them.</para><para>The IPS clients can be also used to upgrade an entire system to a new
release of OpenSolaris, create and manage repositories, and mirror an existing
repository. For more information, see <olink type="auto-generated" targetptr="learn_ips" remap="internal"></olink> and <olink type="auto-generated" targetptr="ips_cmds" remap="internal"></olink>.</para><para>If the system on which IPS is installed can access the Internet, then
the clients can access and install software from the OpenSolaris packaging
repositories, <ulink url="http://pkg.opensolaris.org/dev" type="url"></ulink> and <ulink url="http://pkg.opensolaris.org/release" type="url"></ulink>. For a list of
repositories available for the OpenSolaris 2009.06 release, see <olink type="auto-generated" targetptr="gimgh" remap="internal"></olink>.</para>
</highlights><sect1 id="gikyk"><title>Getting Started With OpenSolaris 2009.06</title><para>You can install the OpenSolaris 2009.06 release on your system from
the OpenSolaris LiveCD. Alternatively, you can download a bootable image of
the OpenSolaris operating system and mount it in a virtual machine on your
system.</para><para>See the <ulink url="http://dlc.sun.com/osol/docs/content/dev/getstart/roadmap.html" type="text">Installation Roadmap</ulink> in the <ulink url="http://dlc.sun.com/osol/docs/content/2009.06/getstart/index.html" type="text"><citetitle>Getting Started  With OpenSolaris 2009.06</citetitle></ulink> document
to install and explore the OpenSolaris 2009.06 operating system.</para><note><para>The OpenSolaris 2009.06 release supports both x86 and SPARC platforms.</para>
</note>
</sect1><sect1 id="gikyv"><title>Setting Up Your OpenSolaris Development Environment</title><para>The OpenSolaris 2009.06 release offers complete support for developing
and deploying applications for the web. The software needed for development
of web applications are available as packages in the <ulink url="http://pkg.opensolaris.org/dev" type="url"></ulink> and <ulink url="http://pkg.opensolaris.org/release" type="url"></ulink> repositories. </para><para>See <ulink url="http://wikis.sun.com/display/OpenSolarisInfo/OpenSolaris+2008.11+Development+Environment+Guide" type="text"><citetitle>Setting up Your OpenSolaris Development Environment</citetitle></ulink> to
learn how to download and install applications such as Sun Studio compilers
and <trademark>NetBeans</trademark> software and to obtain the tools required
to set up a Web Stack Development environment.</para>
</sect1><sect1 id="pkg_mgr"><title>Package Manager (GUI)</title><para>The Package Manager application provides a graphical user interface
(GUI) for IPS.  It provides a subset of the functionality offered by the command-line
(CLI) clients provided with IPS.</para><para>The Package Manager enables you to do the following:</para><itemizedlist><listitem><para>Configure IPS</para>
</listitem><listitem><para>Search and manage packages</para>
</listitem><listitem><para>Create, rename, and remove boot environments</para>
</listitem>
</itemizedlist><mediaobject><imageobject><imagedata entityref="pmlatest"/>
</imageobject><textobject><simpara></simpara>
</textobject>
</mediaobject><para>Start the Package Manager application in one of the following ways:</para><variablelist><varlistentry><term><emphasis role="strong">Desktop Menu</emphasis></term><listitem><para>Click System-&gt;Administration&mdash;&gt;Package Manager. </para>
</listitem>
</varlistentry><varlistentry><term><emphasis role="strong">Command line</emphasis></term><listitem><para>Execute the following command at the prompt:</para><para><userinput>$ gksu packagemanager &amp;</userinput></para>
</listitem>
</varlistentry>
</variablelist><para>The complete documentation for the Package Manager is available in the Help
menu of the application.</para><para>You can also view the <ulink url="http://webcast-west.sun.com/interactive/09B01790/index.html" type="text">screencast</ulink> to learn about the Package Manager.</para>
</sect1><sect1 id="update_mgr"><title>Update Manager</title><para>The Update Manager is a desktop application that enables users to update
all installed packages in an <olink type="custom-text" targetptr="glossary-1" remap="internal">image</olink>.</para><mediaobject><imageobject><imagedata entityref="update_all_new"/>
</imageobject><textobject><simpara></simpara>
</textobject>
</mediaobject><para>The Update Manager notifies the user when updates to the installed packages
are available. </para><para>The complete documentation for the Update Manager is available in the
Help menu of the Package Manager application.</para>
</sect1><sect1 id="cmd_line"><title>Installing and Managing Packages</title><para>The following table provides a list of commands to help you get started
with installing and managing IPS packages from the command-line.</para><para>For advanced IPS commands and tasks, see <olink type="auto-generated" targetptr="image" remap="internal"></olink> and <olink type="auto-generated" targetptr="ips_dev_tasks" remap="internal"></olink>.</para><para>See <olink type="auto-generated" targetptr="cmd_ref" remap="internal">Command Reference
Table</olink> and the <ulink url="http://opensolaris.org/sc/src/pkg/gate/src/man/pkg.1.txt" type="text">pkg(1)</ulink> man pages for a complete list of pkg(1) commands.</para><note><para>The default repository for an OpenSolaris system is <literal>http://pkg.opensolaris.org/release</literal>. </para>
</note><table frame="all" id="gijkf"><title>Basic IPS Commands (Task Map)</title><tgroup cols="2" colsep="1" rowsep="1"><colspec colwidth="33*"/><colspec colwidth="33*"/><thead><row><entry><para>Task and Description</para>
</entry><entry><para>Instructions</para>
</entry>
</row>
</thead><tbody><row><entry><para>Add or update software (packages) to your system</para>
</entry><entry><para><olink type="auto-generated" targetptr="gihhp" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Perform a dry-run installation of packages to see the changes that will
occur on the system when a package is installed, without actually installing
the package</para>
</entry><entry><para><olink type="auto-generated" targetptr="gihej" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Search for a package that is installed on your system or search in a
remote repository</para>
</entry><entry><para><olink type="auto-generated" targetptr="gihfn" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Display and modify publisher and repository information</para>
</entry><entry><para><olink type="auto-generated" targetptr="gijkn" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Display package information such as  package summary, publisher information,
license, and copyright information</para>
</entry><entry><para><olink type="auto-generated" targetptr="gijmp" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Upgrade your system (updating all packages)</para><caution><para>A new boot environment is created.</para>
</caution>
</entry><entry><para><olink type="auto-generated" targetptr="gikyb" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Remove a package</para>
</entry><entry><para><olink type="auto-generated" targetptr="gijmk" remap="internal"></olink></para>
</entry>
</row><row><entry><para>View the list of available commands</para>
</entry><entry><para><command>pkg help</command></para>
</entry>
</row><row><entry><para>View operation history</para>
</entry><entry><para><olink type="auto-generated" targetptr="gijku" remap="internal"></olink></para>
</entry>
</row><row><entry><para>Remove operation history</para>
</entry><entry><para><command>pfexec pkg purge-history</command></para>
</entry>
</row>
</tbody>
</tgroup>
</table>
</sect1><sect1 id="giigk"><title>Updating All Packages (Upgrading Your System)</title><para>Choose one of the following methods to upgrade all the packages on your
system to the latest available version.</para><note><para>Upgrading all packages on your system is equivalent to updating
your system. A new boot environment with the latest packages and a clone of
the current boot environment are created. For more information, see the section
on <ulink url="http://dlc.sun.com/osol/docs/content/dev/snapupgrade/" type="text">Introduction to Boot Environments</ulink>.</para>
</note><itemizedlist><listitem><para><emphasis role="strong">Package Manager</emphasis> &ndash;
Click the Update All icon in the Package Manager to update all packages on
your system. This constitutes a <emphasis role="strong">system upgrade</emphasis>.
See the Online Help in the Package Manager to learn more about the Update
All process.</para>
</listitem><listitem><para><emphasis role="strong">Update Manager</emphasis> &ndash;
The Update Manager is a desktop application that enables users to <emphasis role="strong">update all installed packages</emphasis> in an image. The Update
Manager notifies the user when updates to the installed packages are available.</para>
</listitem><listitem><para><emphasis role="strong">Command Line</emphasis> &ndash; Use
the following command to update all packages:</para><para><command>$ pfexec
pkg image-update</command></para><para>See <olink type="auto-generated" targetptr="gikyb" remap="internal"></olink> for additional
information.</para>
</listitem>
</itemizedlist>
</sect1>
</chapter>