Subject: Re: pkg_info error?
To: None <beaker@myrealbox.com>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 05/05/2004 14:28:01
On Tue, 4 May 2004 beaker@myrealbox.com wrote:
> beaker@blue (51) pkg_info | grep ^c
> /usr/bin/tar: +MTREE_DIRS not found in archive
> /usr/bin/tar: +MTREE_DIRS not found in archive
It must see packages in the current directory here.
> cdrecord-2.00.3 Software for creating ISO9660 images and writing CDs/CD-RWs
> cdbkup-1.0nb1 CD-R(W) backup/restore system
>
> Is the "+MTREE_DIRS not found" message indicative of a problem? I thought
I am getting same error with some of my packages under Linux (where I
don't use mtree).
reed@puget:/usr/pkgsrc/new/glibc$ pkg_info
/scratch/packages/Linux/2.6.3/i386/All/GConf2-2.6.0.tbz
tar: WARNING! These patterns were not matched:
+MTREE_DIRS
pkg_info: extract of
/scratch/packages/Linux/2.6.3/i386/All/GConf2-2.6.0.tbz failed
pkg_info: error during unpacking, no info for
'/scratch/packages/Linux/2.6.3/i386/All/GConf2-2.6.0.tbz' available
But I don't get same of all my packages.
Using tar on above package to list files I see it doesn't have any
+MTREE_DIRS file.
This is caused by the following code in info/perform.c:
if (unpack(fname, ALL_FNAMES)) {
warnx("error during unpacking, no info for '%s' available", pkg);
It is defined in lib/lib.h
#define ALL_FNAMES CONTENTS_FNAME" "COMMENT_FNAME"
"DESC_FNAME" "MTREE_FNAME" "BUILD_VERSION_FNAME" "BUILD_INFO_FNAME" "SIZE_PKG_FNAME"
"SIZE_ALL_FNAME
So I assume you had NO_MTREE defined when building some packages.
But pkg_install package also defines that. So we couldn't test on same
variable to define the ALL_FNAMES.
Maybe we should have a new variable called PKG_NO_MTREE. If it is defined
then NO_MTREE will also be defined.
And if it is defined when building pkg_install then the MTREE_FNAME will
not be included in the ALL_FNAMES definition.
Or alternatively get rid of this mtree support.
Jeremy C. Reed
BSD News, BSD tutorials, BSD links
http://www.bsdnewsletter.com/