Subject: Re: broken pkgsrc infrastructure
To: None <pkgsrc-users@NetBSD.org>
From: Raymond Meyer <raymond.meyer@rambler.ru>
List: pkgsrc-users
Date: 08/08/2006 18:06:33
On Tue, 08 Aug 2006 12:30:32 -0400
Johnny Lam <jlam@pkgsrc.org> wrote:

> Rui Paulo wrote:
> > Hi.
> > Since I updated pkgsrc last week, it doesn't work.
> > 
> > ===> Checking for vulnerabilities in hicolor-icon-theme-0.9nb1
> > => Checksum SHA1 OK for hicolor-icon-theme-0.9.tar.gz
> > => Checksum RMD160 OK for hicolor-icon-theme-0.9.tar.gz
> > shlock: open(/usr/pkg/shlock29769): Permission denied
> > cat: /usr/pkg/.lockfile: No such file or directory
> > *** Error code 1
> > 
> > This is most likely related to having
> > PKGSRC_LOCKTYPE=sleep
> > OBJHOSTNAME=work
> > 
> > in /etc/mk.conf.
> > 
> > Am I doing something wrong?
> 
> This seems like a problem with the new locking code that rillig checked 
> in last week.  However, I think he's AFK for a few weeks, so he won't be 
> able to fix it.  I'll try to take a look at the code tonight.
> 
> 	Cheers,

I posted a message about pkgsrc locking problems some time ago and I haven't
had any replies from pkgsrc developers acknowledging the problem. So once
again, there is something wrong with pkgsrc locking, as illustrated below:

=> Required installed package libglade2>=2.5.1nb4: NOT found
=> Verifying package for ../../devel/libglade2
=> Required installed package digest>=20010302: digest-20060302 found
===> Skipping vulnerability checks.
WARNING: No /opt/distfiles/pkg-vulnerabilities file found.
WARNING: To fix, install the pkgsrc/security/audit-packages
WARNING: package and run: ``/opt/pkg/sbin/download-vulnerability-list''.
=> Checksum SHA1 OK for libglade-2.6.0.tar.bz2
=> Checksum RMD160 OK for libglade-2.6.0.tar.bz2
=> Lock is held by pid 17241
... and so on
=> Lock is held by pid 17241
=> Lock is held by pid 17241
=> Lock is held by pid 17241
===> Creating toolchain wrappers for libglade2-2.6.0
*** Error code 255

Stop.
bmake: stopped in /opt/pkgsrc/devel/libglade2
*** Error code 1

As you can see above, when some other process builds and installs libglade2 and
releases the lock, the current process does not see that this packages has been
installed. It tries to build it again and somehow fails.