Mantis - pkg_get
Viewing Issue Advanced Details
4273 regular use minor N/A 2010-02-14 19:59 2010-03-12 16:03
skayser  
bonivart  
normal  
closed  
not fixable  
none    
none  
0004273: RFE: Pull in dependencies even when installing a local file
I have just used pkgutil 1.9.1 to install my experimental postfix package. I couldn't use -t as the experimental repository is currently broken, so I downloaded it manually and invoked pkgutil with -i on the local file. This only installs the package and doesn't seem to inspect the dependencies contained in the package.

Could you add dependency handling for local file installs to be more consistent with the default operation mode of pkgutil (which is to pull in deps)? If someone doesn't want this to happen they should be able to say -N to suppress this.

As a workaround I thought about pulling in the dependencies via "pkgutil -i postfix -x CSWpostfix", which would work in general, but I would only get the dependencies of the version from current/ (and the dependencies of the experimental package have changed compared to the ones from current). I know this wouldn't be required if experimental wasn't broken, but the dependency handling would still be a helpful addition to pkgutil.
# pkgutil -v
1.9.1
# pkgutil -i /home/skayser/postfix-2.6.5\,REV\=2010.02.13-SunOS5.8-sparc-CSW.pkg.gz
Installing your local packages...
=> Installing /home/skayser/postfix-2.6.5,REV=2010.02.13-SunOS5.8-sparc-CSW.pkg.gz

The following packages are available:
  1 CSWpostfix postfix - A high-performance mail transport agent
                    (sparc) 2.6.5,REV=2010.02.13

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]:

Processing package instance <CSWpostfix> from </home/skayser/postfix-2.6.5,REV=2010.02.13-SunOS5.8-sparc-CSW.pkg>

postfix - A high-performance mail transport agent(sparc) 2.6.5,REV=2010.02.13
Please see /opt/csw/share/doc/postfix/license for license information.
## Processing package information.
## Processing system information.
   5 package pathnames are already properly installed.
## Verifying package dependencies.
WARNING:
    The <CSWlibpq> package "libpq - libraries needed by
    postgresql server and clients" is a prerequisite
    package and should be installed.
...
Issue History
2010-02-14 19:59 skayser New Issue
2010-02-16 10:06 bonivart Status new => assigned
2010-02-16 10:06 bonivart Assigned To => bonivart
2010-02-23 15:43 bonivart Note Added: 0007502
2010-02-23 15:43 bonivart Status assigned => feedback
2010-02-24 09:55 bonivart Note Added: 0007517
2010-03-03 11:27 bonivart Note Added: 0007572
2010-03-03 11:27 bonivart Status feedback => resolved
2010-03-03 11:27 bonivart Resolution open => not fixable
2010-03-12 16:03 bonivart Status resolved => closed

Notes
(0007502)
bonivart   
2010-02-23 15:43   
I think the idea (from Trygve) was that when you're building packages you often create a build that you want to install, you take care of the dependencies the first time (by installing from current e.g.) and then you just need to install the local package over and over again until you're satisfied with it.

I'll look into it though.
(0007517)
bonivart   
2010-02-24 09:55   
I now remember that the local file install just triggers a pkgadd on the file, that is it doesn't know anything about dependencies. To know that I need to transform the package, look at the depend file and start to download/install them, if they are at all in the catalog. Might be a new package with all new deps.

I think in most cases deps from current will be very similar, and now experimental works well.
(0007572)
bonivart   
2010-03-03 11:27   
This is not fixable unless I totally redo how it works.