Subject: Re: update pkgsrc package
To: Georges Heinesch <geohei-ml@geohei.lu>
From: David Brownlee <abs@netbsd.org>
List: tech-pkg
Date: 05/21/2001 13:52:46
	You've caught a broken version of lintpkgsrc - my fault.
	Apologies for this - I'm fixing it now.

-- 
		David/absolute		-- www.netbsd.org: No hype required --


On 21 May 2001, Georges Heinesch wrote:

> Quoting David Brownlee (18-May-01 10:54:26):
>
> [...]
>
> >> 3. When updating a new package, I guess the right thing would be to
> >> cd
> >>    to the relevant directory and to say:
> >>
> >>        "make clean" (or "make clean CLEANDEPENDS=YES" ?)
> >>        "make fetch-list | sh"
> >>        "make update"
> >>
> >>    Is that correct?
>
> >   That would be a good procedure.
>
> ... but doesn't work for some reason. I was told that pkgsrc is "an
> administrator's dream". Well, the initial installation via sup was
> still pretty easy, but an update seems much harder that predicted.
>
> "lintpkgsrc -i" showed me that pkglint was not up-to-date any more
>
> ----- cut here -----
> # cd /usr/pkgsrc/pkgtools/pkglint
> # make clean CLEANDEPENDS=YES
> ===> Cleaning for p5-Data-Dumper-2.101
> ===> Cleaning for p5-Devel-DProf-19990108
> ===> Cleaning for p5-Devel-Peek-1.0001
> ===> Cleaning for perl-5.6.0nb5
> ===> Cleaning for perl-base-5.6.0nb1
> ===> Cleaning for perl-mk-1.1
> ===> Cleaning for p5-CGI-2.75
> ===> Cleaning for pkglint-2.53
> ----- cut here -----
>
> The files were lying already in /usr/pkgsrc/distfiles
>
> ----- cut here -----
> # make fetch-list
> /bin/mkdir -p /usr/pkgsrc/distfiles/
> /bin/mkdir -p /usr/pkgsrc/pkgtools/pkglint/../../distfiles/
> ----- cut here -----
>
> Now comes the interesting part:
>
> ----- cut here -----
> # make update
> ===> Deinstalling for pkglint-2.53
> Running PKG_DBDIR=/var/db/pkg /usr/sbin/pkg_delete -r pkglint-2.53
> ===> Validating dependencies for pkglint-2.53
> ===> Extracting for pkglint-2.53
> ===> Required installed package perl>=5.0: perl-5.6.0nb5 found
> ===> Required installed package perl-mk-1.1: perl-mk-1.1 found
> ===> Building for pkglint-2.53
> /usr/bin/sed -e 's|@PREFIX@|/usr/pkg|g'      -e 's|@PORTSDIR@|/usr/pkgsrc/pkgtools/pkglint/../..|g'  -e 's|@DISTVER@|2.53|g'         < /usr/pkgsrc/pkgtools/pkglint/files/pkglint.pl         > /usr/pkgsrc/pkgtools/pkglint/work/pkglint
> /usr/bin/sed -e 's|@PREFIX@|/usr/pkg|g'      -e 's|@PORTSDIR@|/usr/pkgsrc/pkgtools/pkglint/../..|g'  -e 's|@DISTVER@|2.53|g'         < /usr/pkgsrc/pkgtools/pkglint/files/lintpkgsrc.pl          > /usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc
> /usr/bin/sed -e 's|@PREFIX@|/usr/pkg|g'      -e 's|@PORTSDIR@|/usr/pkgsrc/pkgtools/pkglint/../..|g'  -e 's|@DISTVER@|2.53|g'         < /usr/pkgsrc/pkgtools/pkglint/files/plist-clash.pl         > /usr/pkgsrc/pkgtools/pkglint/work/plist-clash
> /usr/bin/sed -e 's|@PREFIX@|/usr/pkg|g'      -e 's|@PORTSDIR@|/usr/pkgsrc/pkgtools/pkglint/../..|g'  < /usr/pkgsrc/pkgtools/pkglint/files/pkglint.1          > /usr/pkgsrc/pkgtools/pkglint/work/pkglint.1
> nroff -mandoc /usr/pkgsrc/pkgtools/pkglint/work/pkglint.1 >/usr/pkgsrc/pkgtools/pkglint/work/pkglint.0
> /usr/bin/sed -e 's|@PREFIX@|/usr/pkg|g'      -e 's|@PORTSDIR@|/usr/pkgsrc/pkgtools/pkglint/../..|g'  < /usr/pkgsrc/pkgtools/pkglint/files/lintpkgsrc.1           > /usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc.1
> nroff -mandoc /usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc.1 >/usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc.0
> ===> Installing for pkglint-2.53
> install -c -o root -g wheel -m 555 /usr/pkgsrc/pkgtools/pkglint/work/pkglint /usr/pkg/bin/pkglint
> install -c -o root -g wheel -m 555 /usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc /usr/pkg/bin/lintpkgsrc
> install -c -o root -g wheel -m 555 /usr/pkgsrc/pkgtools/pkglint/work/plist-clash /usr/pkg/bin/plist-clash
> install -c -o root -g wheel -m 444 /usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc.0 /usr/pkg/man/cat1
> install -c -o root -g wheel -m 444 /usr/pkgsrc/pkgtools/pkglint/work/lintpkgsrc.1 /usr/pkg/man/man1
> install -c -o root -g wheel -m 444 /usr/pkgsrc/pkgtools/pkglint/work/pkglint.0 /usr/pkg/man/cat1
> install -c -o root -g wheel -m 444 /usr/pkgsrc/pkgtools/pkglint/work/pkglint.1 /usr/pkg/man/man1
> ===> Registering installation for pkglint-2.53
> pkglint-2.53 requires installed package p5-CGI-2.75
> pkglint-2.53 requires installed package p5-Data-Dumper-2.101
> pkglint-2.53 requires installed package p5-Devel-DProf-19990108
> pkglint-2.53 requires installed package p5-Devel-Peek-1.0001
> pkglint-2.53 requires installed package perl-5.6.0nb5
> pkglint-2.53 requires installed package perl-base-5.6.0nb1
> pkglint-2.53 requires installed package perl-mk-1.1
> `/usr/pkgsrc/pkgtools/pkglint/work/.DDIR' is up to date.
> ===> Cleaning for pkglint-2.53
> ----- cut here -----
>
> And this is the result:
>
> ----- cut here -----
> # rehash
> # lintpkgsrc -i
> Use of uninitialized value in concatenation (.) at /usr/pkg/bin/lintpkgsrc line 387.
> Use of uninitialized value in concatenation (.) at /usr/pkg/bin/lintpkgsrc line 391.
> Use of uninitialized value in opendir at /usr/pkg/bin/lintpkgsrc line 466.
> Use of uninitialized value in concatenation (.) at /usr/pkg/bin/lintpkgsrc line 466.
> Unable to opendir(): No such file or directory at /usr/pkg/bin/lintpkgsrc line 466.
> ----- cut here -----
>
> What went wrong?
> How am I supposed to upgrade a package?
>
> TIA
>
>