From owner-freebsd-ports@FreeBSD.ORG Sat Mar 26 23:42:36 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 4A569106566B for ; Sat, 26 Mar 2011 23:42:36 +0000 (UTC) (envelope-from bf1783@googlemail.com) Received: from mail-pv0-f182.google.com (mail-pv0-f182.google.com [74.125.83.182]) by mx1.freebsd.org (Postfix) with ESMTP id 257518FC12 for ; Sat, 26 Mar 2011 23:42:35 +0000 (UTC) Received: by pvg11 with SMTP id 11so394563pvg.13 for ; Sat, 26 Mar 2011 16:42:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:reply-to:date:message-id:subject :from:to:content-type; bh=1h/gd/lGaSpMmPZaXSAExv2eV1VZs6NsSRm/KviK598=; b=O3S/v/aKvnIrCz6V7QfVbt6ki64f283KVT1PqttyCbpM0mV2S2ZcwBLkIwYZJ3kwt2 h0baGpVxiHDIdTpMCipQyE/UFdCzWzAPwd0I/6lsmHfe7nTpigdntMxee/+HQJhIwK+I i5wIGU1obn+XE9zGP177YHCjt68HKKinoxiJM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:reply-to:date:message-id:subject:from:to:content-type; b=fUuWbYFIjNO6YcG0aKQfFp7sAcBlLnd2izDbWX1OsuAn/BuAOlyiMTBJXcqcl7xyBl rJaolxgNOdSHgt4dL9a6Mfe/lrQgSvXYClfmMeZq/GaVfIxqZUvD9y7Xe1Ywpo1hfPJC 7A+aAnPKQVKA/nee6aw1U4CDtK2BlWuydpfgU= MIME-Version: 1.0 Received: by 10.142.199.11 with SMTP id w11mr563884wff.385.1301182955639; Sat, 26 Mar 2011 16:42:35 -0700 (PDT) Received: by 10.142.170.1 with HTTP; Sat, 26 Mar 2011 16:42:35 -0700 (PDT) Date: Sat, 26 Mar 2011 23:42:35 +0000 Message-ID: From: "b. f." To: freebsd-ports@FreeBSD.org Content-Type: text/plain; charset=ISO-8859-1 Cc: Subject: Re: Updating multiple ports with portmaster X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: bf1783@gmail.com List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Mar 2011 23:42:36 -0000 Matthias Andree wrote: ... > >> Is there a way to get portmaster to behave like portupgrade did and > >> only upgrade what needs to be upgraded? > >> > > > > This is documented in the portmaster(1) manpage. You can use -a to > > update all ports that need to be updated. To update a subset of > > those, you could (1) use -i with -a or a glob (by the way, the * > > isn't needed with portmaster -- see the portmaster(1) manpage), and > > respond in the negative to prompts to update or re-install those you > > wish to exclude; (2) use -x with -a or a glob, to exclude certain > > ports; or (3) feed portmaster a list of globs that match only those > > ports that you want to be updated. In your case, for (3), if you only > > wanted to update those p5-* ports that need to be updated, but not > > other ports that need to be updated, you could use something like: > > > > pkg_version -qos p5- -l '<' | xargs portmaster > > > > Of course, since some new versions of p5-* ports may depend upon new > > versions of other, non p5-* ports, updating only the p5-* ports isn't > > guaranteed to work. > > portmaster takes care of that, except if there are downstream It tries to take care of it, and usually succeeds for (1) and (3). But not necessarily for (2), if one of the ports that should be updated is excluded. > dependencies that stop working with updated ports on your list -- but > that's rather rarely observed and usually documented in > /usr/ports/UPDATING -- but even then, portmaster -a -i would likely help. Yes, that's something that should also be taken into consideration. Rarely, maybe, but more often than one would like -- and sometimes undocumented. b.