Sun Software Package Management

Introduction

Notes on how to query the status of sun software packages. This includes the vendor software Sun provides and the open source initiative Blastwave.

Typographical conventions in this document

We shall use the font for actual command output or command names and italic type for man pages. To indicate a shell prompt we shall use $ to indicate a non-root user prompt and # for a root user prompt.

Man Pages

The pertinent man pages are pkginfo(1), pkgmk(1), pkgparam(1), pkgproto(1), pkgtrans(1), installf(1M), pkgask(1M), pkgrm(1M), removef(1M), admin(4), attributes(5).

Querying Package States

Suppose we want to list all installed packages on the system. We run pkginfo without any options. The second column is the package name as is confirmed by querying a single package:

$ pkginfo SUNWspl
system      SUNWspl        Spell Checking Engine - Base Release (English)
<snipped the rest of the output>

Querying a particular package (along with the -l option) more info.

pkginfo -l SUNWspl
   PKGINST:  SUNWspl
      NAME:  Spell Checking Engine - Base Release (English)
  CATEGORY:  system
      ARCH:  sparc
   VERSION:  3.3.1,REV=10.1999.12.02
   BASEDIR:  /usr
    VENDOR:  Sun Microsystems, Inc.
      DESC:  Spell Checking Engine - Base Release (English)
    PSTAMP:  togos19991202021047
  INSTDATE:  May 24 2004 16:22
   HOTLINE:  Please contact your local service provider
    STATUS:  completely installed
     FILES:       13 installed pathnames
                   3 shared pathnames
                   5 directories
                   1 executables
                1834 blocks used (approx)
We are told there are various types of files installed but we are not told what they are. How to list them? For this one uses the pkgchk command. For example, for the SUNWspl package
$ pkgchk -l SUNWspl
Pathname: /usr/dt
Type: directory
Expected mode: 0775
Expected owner: root
Expected group: bin
Referenced by the following packages:
        SUNWfdl        SUNWeusru      SUNWeuezt      SUNWeudmg      SUNWeudlg
        SUNWeudiv      SUNWeudis      SUNWeudhs      SUNWeudhr      SUNWeudda
        SUNWeudbd      SUNWeudba      SUNWdtct       SUNWdtcor      SUNWdticn
        SUNWdthez      SUNWdtim       SUNWdtjxt      SUNWdtdst      SUNWdtwm
        NSCPcom        SUNWsregu      SUNWscgui      SUNWwsrv       SUNWdtezt
        SUNWspl        SUNWj2pi       SUNWjmfp       SUNWdtbax      SUNWdtdem
        SUNWdtmaz      SUNWdtnsc      SUNWmfdev      SUNWpdas       SUNWdtdte
        SUNWxwfa
Current status: installed

Pathname: /usr/dt/config
Type: directory
Expected mode: 0775
Expected owner: root
Expected group: bin
Referenced by the following packages:
        SUNWeudmg      SUNWeudlg      SUNWeudhs      SUNWdtdmn      SUNWdtdst
        SUNWdtwm       SUNWsregu      SUNWdthe       SUNWdthed      SUNWscgui
        SUNWspl        SUNWdtbas      SUNWdtdte
Current status: installed

Pathname: /usr/dt/config/sdtdict
Type: directory
Expected mode: 0775
Expected owner: root
Expected group: bin
Referenced by the following packages:
        SUNWspl
Current status: installed

<snipped the rest>
Not quite as compact as one would like. It's important to realize that pkgchk actually checks the integrity of files and will fix them. All the data is stored /var/sadm/install/contents file. Hence running as non-root seems sensible.

The CSW packages

These are the packages provides by the Blastwave project. All of these are installed primarily in /opt/csw and are prefixed by CSW. On core.cs we have
application CSWaudiofile         audiofile - Silicon Graphics Audio File Library
application CSWbdb4              berkeleydb4 - Embedded database libraries and utilities
application CSWbdb43             berkeleydb43 - BerkeleyDB 4.3 libraries and utilities
application CSWbonobo2           libbonobo2 - GNOME component and compound document system
application CSWbzip2             bzip2 - a high-quality block-sorting file compressor
system      CSWcommon            common - common files and dirs for CSW packages
application CSWddd               ddd - GNU DDD (Data Display Debugger)
application CSWdtopfutils        desktopfileutils - utilities for working with desktop entries and .menu files
application CSWesound            esound - EsounD, The Enlightened Sound Daemon
application CSWexpat             expat -  XML Parser Toolkit
system      CSWfam               fam - File Alteration Monitor, daemon and interface library
application CSWfconfig           fontconfig - A library for configuring and customizing font access.
application CSWfirefox           firefox - mozilla.org browser
application CSWfreeradius        freeradius - radius server
application CSWftype2            freetype2 - The free and portable high quality font engine
application CSWgcc3corert        gcc3corert - GNU C Compiler Run Time
application CSWgcc3g++rt         gcc3g++rt - GNU C++ Compiler Run Time
application CSWgconf2            gconf2 - GNOME configuration database system
system      CSWgd                gd - libgd, Graphics creation library and utilities
system      CSWgdbm              gdbm - GNU dbm
system      CSWggettext          ggettext - GNU gettext
application CSWglib2             glib2 - Low-level core library that forms the basis of GTK+
application CSWgnomemime2        gnomemime2 - MIME type database for GNOME
application CSWgnomevfs2         gnomevfs2 - GNOME Virtual File System
application CSWgs                ghostscript - GPL Ghostscript, a PostScript and PDF interpreter for previewing, conversion and printing
application CSWgsed              gsed - The GNU non-interactive text Stream-oriented EDitor (sed)
system      CSWgsfonts           gsfonts - Fonts and AFMs for use with GhostScript
application CSWgtk2              gtk2 - GTK+, The multi-platform toolkit for GUI development
system      CSWiconv             libiconv - GNU iconv library
application CSWjasper            jasper - An image data software toolkit for JPEG-2000 codec standard
system      CSWjbig2dec          jbig2dec - decoder implementing JBIG2 bi-level image compression
system      CSWjpeg              jpeg - lib and tools for JPEG image format
application CSWkrb5lib           krb5_lib - MIT Kerberos 5 core libraries
application CSWlibatk            libatk - Accessibility toolkit for GNOME
application CSWlibcairo          libcairo - The Cairo 2D Graphics Library
application CSWlibcups           libcups - Library and Header Files for the Common UNIX Printing System
application CSWlibgnome          libgnome - The main GNOME library
application CSWlibidl            libidl - Library for handling CORBA IDL
system      CSWlibnet            libnet - the libnet packet construction library
application CSWlibpopt           libpopt - Command line option parsing library
application CSWlibtool           libtool - Generic library support script
application CSWlibxft2           libxft2 - FreeType-based font drawing library for X
application CSWlibxml2           libxml2 - XML Parser Library
application CSWlibxrender        libxrender - fontconfig.org Xrender library
application CSWncurses           ncurses - ncurses library and utilities
application CSWoldap             openldap - OpenLDAP standalone server and update replication daemons (oldap)
application CSWoldapclient       openldap_client - OpenLDAP client executables (oldapclient)
application CSWoldaprt           openldap_rt - OpenLDAP runtime libraries (oldaprt)
application CSWorbit2            orbit2 - ORBit 2.x CORBA tools and libs
application CSWossl              openssl - The Open Source toolkit for SSL and TLS.
application CSWpango             libpango - Library for laying out and rendering text
application CSWperl              perl - A high-level, general-purpose programming language.
system      CSWpkgget            pkg_get - CSW version of automated package download tool
system      CSWpmtk              pm_tk - a Graphical User Interface ToolKit perl module
system      CSWpng               png - library for Portable Network Graphics format (PNG)
system      CSWreadline          readline - library to enable interactive line editing
application CSWrenderdev         render_dev - fontconfig.org render development files
application CSWsambalib          samba_lib - Tools to access a server's filespace and printers via SMB (lib)
application CSWsasl              sasl - Simple Authentication and Security Layer
system      CSWsunmath           libsunmath - Sun maths library
application CSWt1lib             t1lib - Type1 font renderering library
system      CSWtcpwrap           tcpwrappers - (ipv6.4 patched) lib and tools for pre-screening tcp connections
application CSWtetex             tetex - A complete TeX distribution
application CSWtexinfo           texinfo - The GNU Documentation System
application CSWthunderbird       thunderbird - Mozilla Thunderbird Mail Client
system      CSWtiff              tiff - lib and tools for Tag Image File Format
application CSWtransfig          transfig - facility for translating fig code
application CSWunixodbc          unixodbc - ODBC access to data sources
application CSWwget              wget - A network utility to retrieve files from the Web
system      CSWxaw3d             xaw3d - Xaw3d, Three-D Athena Toolkit
application CSWxfig              xfig - Xfig is an interactive drawing tool
system      CSWxpm               xpm - library for X11 PixMap format (libXpm.so.4.11)
application CSWzlib              zlib - Zlib Data Compression Library
which (as of August 21, 2006) gives 73 packages. The beauty of this collection of packages is the command pkg-get will download the package and it's dependencies. It's inspired by the famous apt-get command of Debian. It is important to realize that pkg-get runs the vendor tool pkgadd to install the packages. These are not Debian packages!

How to list files in Sun Package

The simplest way seems to run pkgchk -l packagename |grep '^Pathname:' | sed -e 's|^Pathname:||' where the list of packagenames are as above.
Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r4 - 2009-03-05 - LawrenceFolland
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback