Installing "extra" packages against OpenSolaris 2008.11 (with or without support repository updates)
By Alan Hargreaves-Oracle on May 22, 2009
It took me a bit to work out what was going on here (including a number of re-installs to make sure I hadn't screwed up), so I thought it worth sharing.
First, what a failure looks like:
After following Chris's instructions for adding the extra repository, I tried to install flash from it so the kids could play their browser based flash games.
$ pfexec pkg install pkg://extra/web/firefox/plugin/flash Creating Plan | pkg: the following package(s) violated constraints: Package pkg:/SUNWcsl@0.5.11,5.11-0.111 conflicts with constraint in installed pkg:/entire: Pkg SUNWcsl: Optional min_version: 0.5.11,5.11-0.101 max version: 0.5.11,5.11-0.101 defined by: pkg:/entire
It turns out that what is at issue here is that the extra repository now has the "fat" packages that we will be using for 2009.06. The pkg command on 2008.11 (with any number of support repository updates - I was originally on SRU4 before re-install) can't handle these so it produces that cryptic message.
So, what can we do about it?
The first step is to have a look at all versions of the package we are interested in on extra.
$ pfexec pkg list -af 'pkg://extra/web/firefox/plugin/flash' NAME (AUTHORITY) VERSION STATE UFIX web/firefox/plugin/flash (extra) 10.0.22.87-0.111 known ---- web/firefox/plugin/flash (extra) 10.0.22.87-0.101 known u--- web/firefox/plugin/flash (extra) 9.0.151-0.101 known u--- web/firefox/plugin/flash (extra) 9.0.125-0.101 known u--- web/firefox/plugin/flash (extra) 9.0.125-0.101 known u---
The version 9 packages will work ok, so we simply install one of those:
$ pfexec pkg install "pkg://email@example.com" PHASE ITEMS Indexing Packages 554/554 DOWNLOAD PKGS FILES XFER (MB) Completed 1/1 3/3 2.46/2.46 PHASE ACTIONS Install Phase 19/19 Reading Existing Index 9/9 Indexing Packages 1/1
And done. The note to myself for 2009.06 is that that 4gb root disc is just not going to cut it anymore :) Time for something more reasonable.