Mantis - pkg_get
Viewing Issue Advanced Details
3688 regular use minor always 2009-05-27 09:18 2009-05-29 18:41
skayser  
bonivart  
normal  
closed  
fixed  
none    
none  
0003688: pkgutil fails to build package stream: No such file or directory at ./pkgutil line 995
pkgutil (pkgtrans) seems to bail out, when the package stream is sent to a file and this file doesn't yet exist. When then running pkgutil again, it bails out trying to transform packages (i guess that's because the previous run failed and didn't do cleanups).

$ pkgutil -y -W tmp/ -T sparc:5.10 -s -o ion.pkg ion
....
Transforming CSWcommon...
Transforming CSWlibtoolrt...
Transforming CSWlibtool...
Transforming CSWlua...
Transforming CSWion...
Transforming packages into stream...
Could not transform packages into stream: No such file or directory at /opt/csw/bin/pkgutil line 994.

$ pkgutil -y -W tmp/ -T sparc:5.10 -s -o ion.pkg ion
Parsing catalog, may take a while...
New packages: CSWcommon-1.4.6,REV=2008.04.28 CSWlibtoolrt-2.2.6,REV=2009.03.23_rev=a CSWlibtool-2.2.6,REV=2009.03.23_rev=a CSWlua-5.1.4,REV=2009.03.30 CSWion-3,REV=2005.04.06.01
Total size: 1.5 MB
A local copy of CSWcommon-1.4.6,REV=2008.04.28 exists and is of matching size.
A local copy of CSWlibtoolrt-2.2.6,REV=2009.03.23_rev=a exists and is of matching size.
A local copy of CSWlibtool-2.2.6,REV=2009.03.23_rev=a exists and is of matching size.
A local copy of CSWlua-5.1.4,REV=2009.03.30 exists and is of matching size.
A local copy of CSWion-3,REV=2005.04.06.01 exists and is of matching size.
Transforming CSWcommon...
Could not transform common-1.4.6,REV=2008.04.28-SunOS5.8-i386-CSW.pkg.gz: No such file or directory at /opt/csw/bin/pkgutil line 988.

$ ls tmp/packages/
CSWcommon common-1.4.6,REV=2008.04.28-SunOS5.8-i386-CSW.pkg.gz
CSWion ion-3,REV=2005.04.06.01-SunOS5.8-i386-CSW.pkg.gz
CSWlibtool libtool-2.2.6,REV=2009.03.23_rev=a-SunOS5.8-i386-CSW.pkg.gz
CSWlibtoolrt libtool_rt-2.2.6,REV=2009.03.23_rev=a-SunOS5.8-i386-CSW.pkg.gz
CSWlua lua-5.1.4,REV=2009.03.30-SunOS5.8-i386-CSW.pkg.gz


Touching the output file beforehand works.

$ rm -rf tmp/packages/*
$ touch tmp/packages/ion.pkg
$ pkgutil -y -W tmp/ -T sparc:5.10 -s -o ion.pkg ion
Transforming CSWcommon...
Transforming CSWlibtoolrt...
Transforming CSWlibtool...
Transforming CSWlua...
Transforming CSWion...
Transforming packages into stream...

Install commands in dependency safe order:

pkgadd -d ion.pkg CSWcommon
pkgadd -d ion.pkg CSWlibtoolrt
pkgadd -d ion.pkg CSWlibtool
pkgadd -d ion.pkg CSWlua
pkgadd -d ion.pkg CSWion
Tested with 1.5 and 1.6b1.

$ pkginfo -x CSWpkgutil
CSWpkgutil pkgutil - Installs Solaris packages easily
            (i386) 1.6b1,REV=2009.05.25
Issue History
2009-05-27 09:18 skayser New Issue
2009-05-27 10:09 bonivart Status new => assigned
2009-05-27 10:09 bonivart Assigned To => bonivart
2009-05-27 10:43 bonivart Note Added: 0006196
2009-05-27 10:44 bonivart Note Edited: 0006196
2009-05-27 11:13 skayser Note Added: 0006197
2009-05-27 15:03 bonivart Note Added: 0006203
2009-05-27 15:26 skayser Note Added: 0006204
2009-05-27 15:35 bonivart Note Added: 0006205
2009-05-27 16:59 bonivart Note Added: 0006206
2009-05-27 16:59 bonivart Status assigned => resolved
2009-05-27 16:59 bonivart Resolution open => fixed
2009-05-29 18:41 bonivart Note Added: 0006232
2009-05-29 18:41 bonivart Status resolved => closed

Notes
(0006196)
bonivart   
2009-05-27 10:43   
(edited on: 2009-05-27 10:44)
I just tried the simplest form:

# pkgutil -y -s ion

and that worked (stream file in /var/opt/csw/pkgutil/packages named ion.i386.5.10.pkg). Must be something related to using another work dir. I'll look into it but maybe you can get by for now by skipping -W?

(0006197)
skayser   
2009-05-27 11:13   
Thanks for the swift feedback, Peter. I resorted to just use -o- and redirect into the file that i wanted. Works.

I had used the -W switch because i am working as an unprivileged user on the box where i need to create the package stream and there i had gotten permission errors. Verifying this behavior just now gives me yet another error.

$ pkgutil -y -s ion
Parsing catalog, may take a while...
New packages: CSWcommon-1.4.6,REV=2008.04.28 CSWlibtoolrt-2.2.6,REV=2009.03.23_rev=a CSWlibtool-2.2.6,REV=2009.03.23_rev=a CSWlua-5.1.4,REV=2009.03.30 CSWion-3,REV=2005.04.06.01
Total size: 1.5 MB
A local copy of CSWcommon-1.4.6,REV=2008.04.28 exists and is of matching size.
A local copy of CSWlibtoolrt-2.2.6,REV=2009.03.23_rev=a exists and is of matching size.
A local copy of CSWlibtool-2.2.6,REV=2009.03.23_rev=a exists and is of matching size.
A local copy of CSWlua-5.1.4,REV=2009.03.30 exists and is of matching size.
A local copy of CSWion-3,REV=2005.04.06.01 exists and is of matching size.
Transforming CSWcommon...
Could not transform common-1.4.6,REV=2008.04.28-SunOS5.8-i386-CSW.pkg.gz: Illegal seek at /opt/csw/bin/pkgutil line 988.

Letting the admin clear out /var/opt/csw/pkgutil/packages and then re-running pkgutil gives me the initial error that made me use the -W switch.

$ pkgutil -y -s ion
Parsing catalog, may take a while...
New packages: CSWcommon-1.4.6,REV=2008.04.28 CSWlibtoolrt-2.2.6,REV=2009.03.23_rev=a CSWlibtool-2.2.6,REV=2009.03.23_rev=a CSWlua-5.1.4,REV=2009.03.30 CSWion-3,REV=2005.04.06.01
Total size: 1.5 MB
Fetching CSWcommon-1.4.6,REV=2008.04.28...
/var/opt/csw/pkgutil/packages/common-1.4.6,REV=2008.04.28-SunOS5.8-i386-CSW.pkg.gz: Permission denied

Fetching of CSWcommon-1.4.6,REV=2008.04.28 failed. Try updating your catalog with pkgutil -U.
(0006203)
bonivart   
2009-05-27 15:03   
Could you please try r51?

http://pkgutil.svn.sourceforge.net/viewvc/pkgutil/trunk/pkgutil?revision=51 [^]
(0006204)
skayser   
2009-05-27 15:26   
Thanks, Peter. Working like a charm and the added display of where the package stream goes to is really helpful.
(0006205)
bonivart   
2009-05-27 15:35   
Great! I guess it wasn't obvious that without -W/-o the stream would end up in /var/opt/csw/pkgutil/packages? :-) I improved the perldoc/man page a little as well.
(0006206)
bonivart   
2009-05-27 16:59   
Will be in 1.6.
(0006232)
bonivart   
2009-05-29 18:41   
1.6 released.