From owner-freebsd-ports@FreeBSD.ORG Fri Jul 1 05:22:09 2011 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9CBC610682ED for ; Fri, 1 Jul 2011 05:21:25 +0000 (UTC) (envelope-from stephen@missouri.edu) Received: from wilberforce.math.missouri.edu (wilberforce.math.missouri.edu [128.206.184.213]) by mx1.freebsd.org (Postfix) with ESMTP id 2DE4F8FC19 for ; Fri, 1 Jul 2011 05:21:24 +0000 (UTC) Received: from [127.0.0.1] (wilberforce.math.missouri.edu [128.206.184.213]) by wilberforce.math.missouri.edu (8.14.4/8.14.4) with ESMTP id p615LNxJ034888; Fri, 1 Jul 2011 00:21:24 -0500 (CDT) (envelope-from stephen@missouri.edu) Message-ID: <4E0D5953.2040905@missouri.edu> Date: Fri, 01 Jul 2011 00:21:23 -0500 From: Stephen Montgomery-Smith User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110516 Thunderbird/3.1.10 MIME-Version: 1.0 To: Glen Barber References: <201106302103.p5UL3heP028971@repoman.freebsd.org> <4E0D3D59.40800@FreeBSD.org> <4E0D4A87.3060901@gmail.com> In-Reply-To: <4E0D4A87.3060901@gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: FreeBSD Ports Subject: Re: cvs commit: ports UPDATING 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: Fri, 01 Jul 2011 05:22:10 -0000 On 06/30/2011 11:18 PM, Glen Barber wrote: > I think it would be nice to have a > "I_KNOW_I_HAVE_THIS_PORT_INSTALLED_ALREADY_BUT_UPGRADE_IT_ANYWAY" flag > for situations that seem to be what caused this reply, unless I > misunderstand the cause of the UPDATING entry. In either case, see below. The UPDATING entry was a different issue. > More specifically, I think it would be nice if > 'PACKAGE_SITE=$mylocaltinderbox pkg_add' didn't complain > that I already have a prerequisite packages, though lesser-versioned > that is required for installed currently, while failing to > upgrade the prerequisite package when I know it's necessary for the > upgrade. The trouble with this is that when you deinstall some prerequisite package, that other packages might also need that prerequisite package. So pkg_add would have to figure out that it needs to deinstall all the packages needing that prerequisite package, and then reinstall them. For example, you want to upgrade gnome2, which depends on libX11. But in upgrading libX11, pkg_add has to figure out that it also needs to deinstall openoffice, and then reinstall it. I would think that something like this could be done, but it would be a lot of work to write this program correctly. (But you might be satisfied that pkg_add does what portmaster does, which is to update the +REQUIRED_BY entries in all the appropriate places in /var/db/pkg. That probably wouldn't be too hard.) > Maybe I've missed various flags in various manual pages - I would be > thrilled to be proven that this is the case. What I do is to use a script like this: !/bin/sh for p in /var/db/pkg/*; do if [ -d $p ]; then \ p=`basename $p` if ! [ -e $mylocaltinderbox/All/$p.tbz ]; then echo $p fi fi done and then pipe the output of this script into xargs pkg_delete -r