From owner-freebsd-ports@FreeBSD.ORG Thu Jul 19 04:18:50 2007 Return-Path: X-Original-To: ports@freebsd.org Delivered-To: freebsd-ports@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0664D16A400 for ; Thu, 19 Jul 2007 04:18:50 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from mxout1.cac.washington.edu (mxout1.cac.washington.edu [140.142.32.134]) by mx1.freebsd.org (Postfix) with ESMTP id D76C713C474 for ; Thu, 19 Jul 2007 04:18:49 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from smtp.washington.edu (smtp.washington.edu [140.142.33.9] (may be forged)) by mxout1.cac.washington.edu (8.13.7+UW06.06/8.13.7+UW07.06) with ESMTP id l6J4ImYq009214 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 18 Jul 2007 21:18:49 -0700 X-Auth-Received: from [192.168.10.45] (c-24-10-12-194.hsd1.ca.comcast.net [24.10.12.194]) (authenticated authid=youshi10) by smtp.washington.edu (8.13.7+UW06.06/8.13.7+UW07.03) with ESMTP id l6J4ImeF024731 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 18 Jul 2007 21:18:48 -0700 Message-ID: <469EE627.4000100@u.washington.edu> Date: Wed, 18 Jul 2007 21:18:47 -0700 From: Garrett Cooper User-Agent: Thunderbird 2.0.0.4 (Windows/20070604) MIME-Version: 1.0 To: Stephen Montgomery-Smith References: <20070718154452.B3091@math.missouri.edu> <1184799050.33981.66.camel@rnoland-ibm.acs.internap.com> <469EC915.7010006@math.missouri.edu> In-Reply-To: <469EC915.7010006@math.missouri.edu> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-PMX-Version: 5.3.2.304607, Antispam-Engine: 2.5.1.298604, Antispam-Data: 2007.7.18.210158 X-Uwash-Spam: Gauge=IIIIIII, Probability=7%, Report='__CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __FRAUD_419_CONTACT 0, __HAS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0, __USER_AGENT 0' Cc: ports@freebsd.org, Robert Noland Subject: Re: Problems with +CONTENTS being messed up by pkg_delete -f X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Jul 2007 04:18:50 -0000 Stephen Montgomery-Smith wrote: > Robert Noland wrote: >> On Wed, 2007-07-18 at 15:56 -0500, Stephen Montgomery-Smith wrote: >>> If you "pkg_delete -f" a package and then install the port again >>> (but after it has been bumped up a version), then the +CONTENTS of >>> ports that require the original port will be incorrect. This >>> apparently messes up programs like portmanager. There is a sense in >>> which one should never do "pkg_delete -f" and expect /var/db/pkg to >>> keep its integrety - on the other hand this is exactly what "make >>> deinstall" does. >>> >>> My feeling is that the integrety of /var/db/pkg should be maintained >>> across a "make deinstall" and subsequent "make install" of a bumped >>> version of the port. >>> >>> This is my suggestion. When a "pkg_delete -f" is executed, it looks >>> through +REQUIRED_BY of the port it is going to delete, and modifies >>> the +CONTENTS file of each of them, replacing lines like >>> @pkgdep xineramaproto-1.1.2 >>> @comment DEPORIGIN:x11/xineramaproto >>> >>> to maybe something like >>> @comment DELDEPORIGIN:x11/xineramaproto >>> >>> ("deleted dependency origin"). A subsequent "make install" of >>> x11/xineramaproto should look through the +CONTENTS of all entries >>> in /var/db/pkg and change these lines to something like >>> >>> @pkgdep xineramaproto-1.1.3 >>> @comment DEPORIGIN:x11/xineramaproto >> >> Hrm, not quite what I had in mind... I don't want to misrepresent that >> a port was built against a newer version of a dependency. What I was >> hoping for would be that a port when reinstalled would not list both the >> current version of a dependency as well as a previous version of the >> same origin (which it aquired via the +CONTENTS of some other direct >> dependency). It should only list the currently installed version of >> that origin. >> >> That way it is still possible to determine that the interim port was >> built against an older version. I just want the +CONTENTS file to >> accurately list the versions that a given port was built against. > > I think I was not understanding your problem, nor how portmanager > works. Sorry about that. > > In general, I do really like how the present "actual-package-depends" > works, and so I would rather see this kept, and portmanager modified > to accomodate, rather than the other way around. > > Robert sent me some private emails about how "actual-package-depends" > was messing up portmanager. Probably he should send the problem > descriptions to the mailing lists, and maybe someone else could solve > them. I thought I had some ideas for quick fixes, but it seems I was > looking before I was leaping. I don't really have enough time right > now for long fixes, so someone else will have to figure it out. I > have to say that I simply don't use portmanager or portsinstall or > anything like that, so I don't know how they work. (Rather I use my > own home brew tools for doing the same thing, and since they are home > brew and only for my use, they don't need to get everything right > everytime, they can be simple, and they don't have to be at all > user-friendly.) > > Best regards, Stephen Stephen, I admire your willingness to help, but I believe that Robert should be the one detailing the problem not you. That way too much confusion doesn't get aroused on the list(s). I'm going to remove hackers@ from the CC list because this almost exclusively pertains to ports@. -Garrett