I'm aware of some chash calculation issues on Windows (see bug 5946) but this is due to a CR/NL vs. NL issue. So I would not expect that issue to show up on the Mac. I suspect that this problem is because you have an ELF file in that package. Calculating the elfhash requires an ELF library, which doesn't exist on Mac OS X.

When you import SVR4 packages from the CD, it calculated the hashes from scratch (rather than using the manifest that was downloaded with pkgrecv), so it works. If you edit all of the elf attributes out of the manifest after downloading it with pkgrecv, I expect that publishing the package would work.

Thanks.
Tom

Jonathan Edwards wrote:
On Jan 14, 2009, at 11:35 AM, Stephen Hahn wrote:

Question:
- What would be the best/fastest method to get package updates and
other packages from the release repository to this server with limited
network access assuming that another server (not necessarily
opensolaris) could be swung or proxied to connect to the release
repository?

<snip>

 If an HTTP proxy is not available, you need to wait for the next
 media product, which is a single-build snapshot of a repository as a
 collection of DVD images.  We haven't started building these
automatically yet, but it's on the list of things to do. You can then
 run a depot inside the organization's private network, after copying
 the DVDs' contents to a filesystem.

it looks like you've got the tools out there to accomplish this, and while it's a little behaviorally challenged - this seems to almost work .. (thanks for the reply - i meant to follow up on this but thought it might be rude to reply to my own question with my own answer .. :P)

1) download the pkg toolkit from http://wikis.sun.com/display/IpsBestPractices/Downloads .. (in the following examples - i'm running on mac os x)

2) unpack the zip files, make some links, add stuff to your path .. eg:
# unzip pkg-toolkit-2.0.0-darwin-universal.zip
# mkdir repo ; cd repo ; unzip ../repo-2.0.0.-darwin-universal.zip
# cd ../pkg-toolkit-2.0.0-darwin-universal/bin
# ln -s ../pkg/bin/pkgrecv .
# ln -s ../pkg/bin/pkgsend .
# ln -s ../pkg/bin/pkg.depotd .
# export PATH=$PATH:`pwd`
# cd ../..

3) grab the latest release catalog from pkg.opensolaris.org
# pkgrecv -s http://pkg.opensolaris.org -n | sort > catalog

4) find the package you want and pull it down .. eg:
# pkgrecv -s http://pkg.opensolaris.org pkg:/ [email protected],5.11-0.101:20081119T220043Z

5) start a local repository .. (note this only seems to start when *no* network is connected .. works fine after it's started though)
# pkg.depotd -p 31337

6) send package to the repository (this gets a little ugly)
# pkgsend -s http://localhost:31337 open pkg:/ [email protected],5.11-0.101:20081119T220043Z # export PKG_TRANS_ID=1231971680_pkg%3A%2FSUNWemlxs %400.5.11%2C5.11-0.101%3A20090114T222120Z # pkgsend -s http://localhost:31337 include -d SUNWemlxs SUNWemlxs/ manifest
# pkgsend -s http://localhost:31337 close

Now i've got what appears to be a working depot that i can then cross- over connect to the standalone OpenSolaris server .. I can set the authority and connect to the CherryPy server implementation and see this package in the local catalog .. yea!

** However ** when I go to install packages off the server it seems that the chash functions aren't getting computed properly as i get a failure somewhere in the action manifest (*sigh*) .. I suspect there's an issue with the SHA1 python library somewhere (openssl sha1 on the files give me the correct values though) and that this would work correctly if I ran off an opensolaris image .. but that kind of defeats the purpose of attempting to make a swing-able cross platform installer on a common laptop platform .. now - i do notice that if I import SVR4 packages off a CD (provided they're not 7za compressed) into the depot that this seems to be installable without an issue - so i suspect there's an issue with creating the manifest with pkgrecv that might be causing an issue ..

---
.je

oh - and yes - i know i can run OpenSolaris in a VM, or do the AI thing in a VM and go that route - just looking for some improvements to the cross-platform toolkits is all ..

_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

_______________________________________________
pkg-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/pkg-discuss

Reply via email to