Listing the Contents of an Installed App Package

SnowLeopard.jpg

I installed something this morning - the latest Citrix ICA plugin for Mac OS X, and then I couldn't seem to find it. I started wondering where it might be, and then wanted to see the contents of what I had installed. It's supposedly all in the Receipts directory, in on of the pkg bundles, but I couldn't remember how. So I did some digging, and figured it out - again.

The first thing is to find the receipt for the package you installed. For the sake of example, let's call this package Squish.pkg, and there are two places it will be found: ~/Library/Receipts/ or /Library/Receipts/. So look these two places and find it.

When you've found it, get to a shell and get into this receipt and find the bill of materials (bom) file like this:

  $ cd ~/Library/Receipts/
  $ cd Squish.pkg
  $ find . -name \*.bom
  Contents/Archive.bom

where the output of the find command should list the one bom file that you are looking for. Then you can list the contents of that file with:

  $ lsbom -fls Contents/Archive.bom

If you're really interested in being efficient, you can do this all with:

  $ cd ~/Library/Receipts/
  $ cd Squish.pkg
  $ lsbom -fls `find . -name \*.bom`

What I found was what I thought had happened - the Citrix client itself was updated, so nothing new was added to the system - only updates to the existing ICA client. Fair enough. But now I'm glad I have this written down so I don't have to hunt for it.