Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 04 Aug 2008 11:36:58 +0200
From:      Miroslav Lachman <000.fbsd@quip.cz>
To:        freebsd-stable@freebsd.org
Cc:        Alex Goncharov <alex-goncharov@comcast.net>
Subject:   Portmaster questions (Was: Re: Using Portupgrade?)
Message-ID:  <4896CDBA.8090905@quip.cz>
In-Reply-To: <E1KPqR7-0002iX-0Y@daland.home>
References:  <696148549.2959541217812741596.JavaMail.root@mail3.gatech.edu>	<1938178730.2959681217812808135.JavaMail.root@mail3.gatech.edu>	<20080804022618.GA4790@eos.sc1.parodius.com> <E1KPqR7-0002iX-0Y@daland.home>

next in thread | previous in thread | raw e-mail | index | archive | help
Alex Goncharov wrote:
> ,--- You/Jeremy (Sun, 3 Aug 2008 19:26:18 -0700) ----*
> | I'd start by ceasing use of portupgrade.  Try Doug Barton's portmaster,
> | which is in ports/ports-mgmt/portmaster.  It's an extensive shell
> | script, and does not require ruby. 
> 
> Over the last couple of months, I've made a few shy attempts to switch
> from `portupgrade' to 'portmaster', but every time I try it, I find
> something that keeps me using the former.
> 
> Don't remember everything of that sort but here are a couple of things
> I would like to ask portmaster users' opinion and advice about:
> 
> 1. I see a significant difference in the time it takes to get the same
>    information using the two tools:
> 
> ------------------------------   
> # time portversion -v | wc -l
>      473
> 
> real    0m3.772s
> user    0m2.462s
> sys     0m1.114s
> 
> # time portmaster -L | wc -l
>      488
> 
> real    0m50.042s
> user    0m29.762s
> sys     0m15.470s
> 
> ------------------------------   
> 
>    I run `portversion' a lot, and this kind of performance difference
>    is one argument for sticking with `portupgrade'.

You do not have to run portversion or portmaster or any other 3rd party 
tool to check versions of installed ports. Use pkg_version which is 
included in base system and then you are independent of port management 
tools changes.
portversion is using INDEX, portmaster not.
pkg_version (by default) do not use INDEX, but have option to use it and 
then become clear winner (in speed):

portmaster -L
Usr: 11.431s  Krnl: 4.179s  Totl: 0:15.96s

portversion -v
Usr: 2.076s  Krnl: 0.615s  Totl: 0:02.75s

pkg_version -v
Usr: 9.803s  Krnl: 3.183s  Totl: 0:13.23s

## using INDEX, see man pkg_version for details ##
pkg_version -vI	
Usr: 0.233s  Krnl: 0.041s  Totl: 0:00.31s


With INDEX you can see results almost immediately:

# time pkg_version -vIL =
amavisd-new-2.5.4,1           <   needs updating (index has 2.6.1,1)
awstats-6.7,1                 <   needs updating (index has 6.8_1,1)
courier-authlib-base-0.60.6   <   needs updating (index has 0.61.0)
courier-authlib-mysql-0.60.6  <   needs updating (index has 0.61.0)
mod_python-3.3.1              <   needs updating (index has 3.3.1_1)
nmap-4.62                     <   needs updating (index has 4.68)
openvpn-2.0.6_8               <   needs updating (index has 2.0.6_9)
py25-docutils-0.4             <   needs updating (index has 0.5)
py25-pygments-0.9             <   needs updating (index has 0.10)
subversion-python-1.4.6_2     <   needs updating (index has 1.5.1)
trac-0.10.4_1                 <   needs updating (index has 0.11_2)
trac-ctxtnavaddplugin-1.1.r1  <   needs updating (index has 1.1.r1_2)
trac-iniadmin-0.1             <   needs updating (index has 0.1_2)

Usr: 0.227s  Krnl: 0.036s  Totl: 0:00.27s  CPU: 92.5%

As I had problems with portupgrade's handling of dependencies, I am 
converted to portmaster.
Only one feature that I am missing in portmaster is ability to "do 
something" before / after application install / upgrade (eg: restart of 
daemon, directory permission setting, backup of configs etc.)

Miroslav Lachman



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4896CDBA.8090905>