[bug-notifications] [pkg_get 0003021]: pkg-get says dependencies are not up to date when they really are
Mantis Bug Tracker
noreply at opencsw.org
Fri Feb 27 17:04:51 CET 2009
The following issue has been set as RELATED TO issue 0003052.
======================================================================
http://www.opencsw.org/bugtrack/view.php?id=3021
======================================================================
Reported By: dm26
Assigned To: phil
======================================================================
Project: pkg_get
Issue ID: 3021
Category: packaging
Reproducibility: always
Severity: major
Priority: normal
Status: assigned
======================================================================
Date Submitted: 2009-01-16 15:38 CET
Last Modified: 2009-02-27 17:04 CET
======================================================================
Summary: pkg-get says dependencies are not up to date when
they really are
Description:
I've noticed the current version of pkg-get (4.2) is failing to install
packages because it thinks dependencies are out of date.
Example:
pkg-get -i gvim
No existing install of CSWgvim found. Installing...
Pre-existing local file
gvim-7.2.077,REV=2008.12.31-SunOS5.8-sparc-CSW.pkg.gz ma
tches checksum
Keeping existing file
Analysing special files...
Trying to install dependancy vimrt
No existing install of CSWvimrt found. Installing...
Pre-existing local file
vimrt-7.2.077,REV=2008.12.31-SunOS5.8-all-CSW.pkg.gz mat
ches checksum
Keeping existing file
Analysing special files...
Error: dependancy common (CSWcommon) not up to date
Call pkg-get again in 'upgrade all' mode
eg: '/opt/csw/bin/pkg-get upgrade'
This will then upgrade all packages cleanly
ERROR: could not install required dependancies for CSWvimrt
Once dependancies are up to date, call
/opt/csw/bin/pkg-get -i vimrt
to (re)install
ERROR: install of CSWvimrt failed
ERROR: could not install required dependancies for CSWgvim
Once dependancies are up to date, call
/opt/csw/bin/pkg-get -i gvim
to (re)install
This claims the common pacakge is out of date. However, the latest
version is installed:
pkginfo -l CSWcommon
PKGINST: CSWcommon
NAME: common - common files and dirs for CSW packages
CATEGORY: system
ARCH: sparc
VERSION: 1.4.6,REV=2008.04.28
BASEDIR: /
VENDOR: http://www.blastwave.org/ packaged for CSW by Philip Brown
DESC: Installs some useful standard CSW filesystem symlinks and
files
PSTAMP: thor20080428134449
INSTDATE: Jul 07 2008 15:07
HOTLINE: http://www.blastwave.org/bugtrack/
EMAIL: phil at blastwave.org
STATUS: completely installed
FILES: 147 installed pathnames
134 shared pathnames
116 directories
6 blocks used (approx)
pkg-get -c | grep -w common
common 1.4.6,REV=2008.04.28
SAME
I had a look through the source for pkg-get and think I have found the
problem.
Line 1084:
if ! uptodate $dependsoftname; then
should probably be:
if ! uptodate $dependspkg; then
It should use the Solaris package name "CSWcommon", rather than the
OpenCSW package name "commmon".
--
Darren Miller
University of York
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
related to 0003052 pkg-get install fails when LC_ALL=en_US...
======================================================================
----------------------------------------------------------------------
(0005576) phil (manager) - 2009-02-27 02:26
http://www.opencsw.org/bugtrack/view.php?id=3021#c5576
----------------------------------------------------------------------
Thank you for taking the time to look at the script and attempt to debug
it.
however, the line you point out,
if ! uptodate $dependsoftname; then
references a function (uptodate) that should function equally well when
given either the dependsoftname OR the dependpkg value.
if you can pinpoint an error in the routine, please let me know.
Also, it has been reported that having LC_ALL=C is sometimes beneficial,
whereas LC_ALL or equivalent being set to some UTF-8 or fancy value, makes
it break.
You might try tweaking 'AWK=nawk to 'AWK="LC_ALL=C nawk"'
and seeing if that fixes the problem.
otherwise, you might double check to see which 'catalog' it is pulling
from, and then manually compare the VERSION values from the catalog, vs
pkginfo -l CSWcommon.
----------------------------------------------------------------------
(0005583) dm26 (reporter) - 2009-02-27 16:43
http://www.opencsw.org/bugtrack/view.php?id=3021#c5583
----------------------------------------------------------------------
Phil,
thanks for getting back to me.
> You might try tweaking 'AWK=nawk to 'AWK="LC_ALL=C nawk"'
> and seeing if that fixes the problem.
It does. It seems this was the real problem and my fix just worked around
it.
I had LC_ALL set to "en_GB" which caused the prblem. It works fine when
set to "C".
Can this change be added as a permanent fix?
Thanks again both for you help and for the all your good work with
OpenCSW.
--
Darren Miller
Issue History
Date Modified Username Field Change
======================================================================
2009-01-16 15:38 dm26 New Issue
2009-02-27 02:22 phil Status new => assigned
2009-02-27 02:22 phil Assigned To => phil
2009-02-27 02:26 phil Note Added: 0005576
2009-02-27 16:43 dm26 Note Added: 0005583
2009-02-27 17:04 philadmin Relationship added related to 0003052
======================================================================
More information about the bug-notifications
mailing list