From owner-svn-ports-all@freebsd.org Thu Feb 4 16:31:31 2016 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9CA7CA73FFE; Thu, 4 Feb 2016 16:31:31 +0000 (UTC) (envelope-from freebsd.contact@marino.st) Received: from shepard.synsport.net (mail.synsport.com [208.69.230.148]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 77AF51CB5; Thu, 4 Feb 2016 16:31:31 +0000 (UTC) (envelope-from freebsd.contact@marino.st) Received: from [192.168.1.21] (248.Red-83-39-200.dynamicIP.rima-tde.net [83.39.200.248]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by shepard.synsport.net (Postfix) with ESMTP id 0BC9843BA9; Thu, 4 Feb 2016 10:31:26 -0600 (CST) Subject: Re: svn commit: r407270 - head/ports-mgmt/portmaster To: Adam Weinberger References: <201601261123.u0QBNcvL091258@repo.freebsd.org> <8b37e4951fc45b4f1eeaf5eb67f76804@gahr.ch> <56B36ACE.1010506@marino.st> <56B36C8A.8070503@marino.st> <3B17D597-12D7-45A7-AF5D-2A0718381B41@adamw.org> <56B376CF.40807@marino.st> <681B2A9D-9414-4477-80BE-0BF354AC3B73@adamw.org> Cc: Pietro Cerutti , ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org, owner-ports-committers@freebsd.org From: John Marino X-Enigmail-Draft-Status: N1110 Reply-To: marino@freebsd.org Message-ID: <56B37CDB.1020705@marino.st> Date: Thu, 4 Feb 2016 17:31:23 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: <681B2A9D-9414-4477-80BE-0BF354AC3B73@adamw.org> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Feb 2016 16:31:31 -0000 On 2/4/2016 5:20 PM, Adam Weinberger wrote: >> On 4 Feb, 2016, at 9:05, John Marino >> wrote: hmm? you're not supposed to rebuild the repository on every >> single step. Only the last step! there's the "just-build" >> option, which always be used. Now the "rebuild-repository" command >> will rebuild it when you want, so you could just issue "just-build" >> and when everything is done, manually rebuild the repository. and >> of course, the upgrade-system / prepare-systm only rebuild it once >> as well. >> >> John > > That's assuming that the list of installed ports essentially never > changes, and you only check for updates rarely, no? > > Say I want to find a new MUA. - Install pine (1 hour) - Too simple - > Install elm (1 hour) - Too old - Install mutt (1 hour) - Good but now > I want the sidebar patch - Change option and reinstall mutt (1 hour) > - Update ports tree, see if any of my installed ports have updates (1 > hour) > > That's 20 minutes of work but it takes 5 hours. Am I doing the > work-flow wrong? > > What exactly is going on with the repository rebuild? Why does only > synth need to do it? Is there some way to restrict the checks to only > the installed ports, rather than the entire tree? synth upgrade-system is restricted to the installed ports. That's what it does. It gets it build list from pkg(8). Synth is a local respository builder, that's it's purpose. In a nutshell, you get your local respository up to date, and then pkg(8) updates everything using that repository. If you didn't update the repository, then pkg(8) doesn't know the package has been built (in theory you can use manual pkg(8) commands (e.g. pkg add) to update the system without having to rebuilds the repository. If you have 5 ports that you want to manually/individually update, then you'd use something like "synth install port1 port2 port3 port4 port5". That will rebuild everything necessary (incremental), then rebuild the repository, then install everything. You wouldn't do 5 individually build/install commands. more clear? John