atom feed9 messages in org.freebsd.freebsd-stablePortmaster questions (Was: Re: Using ...
FromSent OnAttachments
Nic RevelesAug 3, 2008 6:19 pm 
Jeremy ChadwickAug 3, 2008 7:25 pm 
Alex GoncharovAug 3, 2008 8:08 pm 
Doug BartonAug 3, 2008 10:14 pm 
Miroslav LachmanAug 4, 2008 2:36 am 
Marcin WisnickiAug 4, 2008 8:24 am 
Alexandre "Sunny" KovalenkoAug 4, 2008 5:59 pm 
Alex GoncharovAug 4, 2008 6:19 pm 
Nic RevelesAug 6, 2008 4:02 pm 
Subject:Portmaster questions (Was: Re: Using Portupgrade?)
From:Miroslav Lachman (000.@quip.cz)
Date:Aug 4, 2008 2:36:35 am
List:org.freebsd.freebsd-stable

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.)