NetBSD Problem Report #42894

From dholland@eecs.harvard.edu  Sat Feb 27 23:11:27 2010
Return-Path: <dholland@eecs.harvard.edu>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id 5CA2A63B89F
	for <gnats-bugs@gnats.NetBSD.org>; Sat, 27 Feb 2010 23:11:27 +0000 (UTC)
Message-Id: <20100227230832.246C7F974@tanaqui.eecs.harvard.edu>
Date: Sat, 27 Feb 2010 18:08:32 -0500 (EST)
From: dholland@eecs.harvard.edu
Reply-To: dholland@eecs.harvard.edu
To: gnats-bugs@gnats.NetBSD.org
Subject: bogus py25-gtk2 package created
X-Send-Pr-Version: 3.95

>Number:         42894
>Category:       pkg
>Synopsis:       bogus py25-gtk2 package created
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Feb 27 23:15:00 +0000 2010
>Closed-Date:    Sat Jun 11 21:10:46 +0000 2016
>Last-Modified:  Sat Jun 11 21:10:46 +0000 2016
>Originator:     David A. Holland
>Release:        NetBSD 4.99.72, pkgsrc 20100226
>Organization:
>Environment:
System: NetBSD valkyrie 4.99.72 NetBSD 4.99.72 (VALKYRIE) #32: Sat Oct  4 12:25:22 EDT 2008  root@valkyrie:/usr/src/sys/arch/amd64/compile/VALKYRIE amd64
Architecture: x86_64
Machine: amd64
>Description:

I now have a py25-gtk2 package that has the following curious property:
   % pkg_info -n py25-gtk2
   Information for py25-gtk2-2.16.0:

   Requires:
   python26>=2.6
   libglade>=2.6.4nb1
   gtk2+>=2.16.5nb1
   py26-cairo>=1.0.2nb1
   py26-numpy>=1.0
   py26-gobject>=2.15.3

This information appears to be lying:
   % head -1 /usr/pkg/bin/pygtk-demo 
   #! /usr/pkg/bin/python2.5

so it is probably only administratively incorrect and not totally broken.

This package was generated as a result of 'make update' in gtk2 when
driconf was installed. gtk2 is used by py25-gtk2 is used by driconf.
driconf sets PYTHON_VERSIONS_ACCEPTED=25 24, so with the default
python now being 26 the straightforward things don't work.

The update first bombs out partway through because it thinks py25-gtk2
should be installed but it isn't -- this appears to be because it
builds and installs py26-gtk2 instead. Restarting the update allows it
to complete but produces the broken package described above.

>How-To-Repeat:

as previous.

>Fix:

dunno. Probably 'make update' needs to store python version numbers or
extra make defs or something in .DDIR/.DLIST (or something) so as to
accurately rebuild what was previously there.

I'm not sure what will happen if you have both py25-gtk2 and py26-gtk2
installed at once, have nothing pkgsrc knows about that depends on
either, and make update in gtk2; my guess however is that py25-gtk2
will silently evaporate. This is not particularly desirable.

(A complicating issue in this is that py25-gtk2 and py26-gtk2
shouldn't be allowed to be both installed at once, as they conflict
with one another. So do py25-gobject and py26-gobject, for that
matter. This is not however currently declared anywhere.)

>Release-Note:

>Audit-Trail:

State-Changed-From-To: open->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Sat, 11 Jun 2016 21:10:46 +0000
State-Changed-Why:
haven't seen anything like this in a long time.

also I think the original problem may have been operator error.

It is still the case that make update ought to handle multiversion packages
better, but this PR is not the place to track that...


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.