Time to mark portupgrade deprecated?

Matthew D. Fuller fullermd at over-yonder.net
Mon Jul 25 10:42:22 UTC 2011


On Mon, Jul 25, 2011 at 12:14:19PM +0200 I heard the voice of
Michal Varga, and lo! it spake thus:
>
> I have no objections in [portmaster's] promotion to new users as the
> new, one and only "approved" way of managing ports, but this in no
> way cuts it for currently deployed portupgrade setups, where
> portupgrade works 'just fine' (and can work the same for years to
> come).

+1

For all its troubles (and certainly they are legion), portupgrade gets
along with what I try to do.  portmaster does 90%, and I fight it
tooth and nail on the last 10% (or would, if I didn't just use
portmaster instead), because what it's trying to do just doesn't quite
match what I'm trying to do.

(also, it's really nice having portupgrade around for upgrading
portmaster, and portmaster for upgrading portupgrade or ruby*.  Even
if neither is strictly necessary, it's still very comfortable and
comforting ;)


> I can still (though barely) remember times when portupgrade was
> actually spending 95% cpu time on compilation and rest on "fixing /
> saving / database / dependencies", in contrast to the current 30%
> compilation time + 70% portupgrade database fractal magic disco that
> nobody gets anymore.

Just earlier today, I did a perl upgrade on my workstation.  That
means I upgrade perl, then force-rebuild p5-*.  You can darn well bet
I used portmaster for that latter.  Spending giant piles of time on
database fractal magic disco is one thing wrapped around a 10 minute
firefox build; wrapped around couple-second perl module builds it's
just insane.  I'll just fire off a pair of rebuilds...

% time portmaster p5-version
[...]
2.906u 2.501s 0:07.51 71.9%     706+2679k 0+21io 167pf+0w

% time portupgrade -f p5-version
[...]
15.555u 8.054s 0:26.55 88.8%    299+2510k 0+10io 17pf+0w

And really, that's best-case for portupgrade, since p5-version
actually has some C files to compile.  Most modules are just files to
copy, and take less time.  Still portupgrade takes more than 3 times
as long.  19 seconds of overheard, times 130 p5-*'s, is over 41
minutes on a full rebuild, just to do its hinky-dance.  The actual run
is out of my backscroll now, but from history:

    30  22:17   time nice portmaster p5-
    31  22:30   pkgdb -F

so it took at most 13 minutes.  I know it sat idle a little while
before I noticed it was done.  Still, portupgrade would be almost an
hour, instead of less than a quarter hour.


All that said, 95% of my port upgrading happens via portupgrade.
Presumably, were there were no other choice, I could twist things
around so I'd get by with just portmaster.  Maybe someday I'll have to
do that due to portupgrade rotting completely out of usability.  But
I'd be real cranky about being crammed into it while portupgrade still
works for me.


-- 
Matthew Fuller     (MF4839)   |  fullermd at over-yonder.net
Systems/Network Administrator |  http://www.over-yonder.net/~fullermd/
           On the Internet, nobody can hear you scream.


More information about the freebsd-ports mailing list