Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Dec 2009 08:32:33 -0700 (MST)
From:      Warren Block <wblock@wonkity.com>
To:        Richard Mace <macerl@telkomsa.net>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Newbie questions (updating, ports, etc.)
Message-ID:  <alpine.BSF.2.00.0912030814430.9198@wonkity.com>
In-Reply-To: <200912031113.39344.macerl@telkomsa.net>
References:  <200912031113.39344.macerl@telkomsa.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 3 Dec 2009, Richard Mace wrote:

> I recently installed FreeBSD 8.0-RELEASE on my home desktop and am considering
> making the switch from Debian GNU/Linux.
>
> I have a few questions which I am hoping the list can clarify for me.
>
> 1.) Keeping installed ports/packages up to date.
>
> As far as I can tell from the docs, perhaps the most convenient method is to
> use something like:
>
> # portsnap fetch update
> # pkgdb -F

Really should check /usr/ports/UPDATING at this step.  There are 
upgrades which will bite you otherwise.

> # portupgrade --batch -aP     (do I need an "R" here?)
>
> which should first try to find a package from the repositories and failing that
> will fall back to a port. What is the current wisdom here?

Packages are quick to install but can't be customized.  Building from 
source takes longer but lets you set CPUTYPE for compiler optimization 
and build with the specific options you want.  On slow machines or for 
getting going quickly, packages are great.

As far as "batch" or even -a, I update the ports tree often and prefer 
to manually upgrade ports as needed, usually with portupgrade -r.  A lot 
of people seem to like -R; maybe I have the dependencies backwards. 
But I rarely have trouble, either.  I use csup, then portsdb -Fu, then 
portversion -vL= to show what needs updating.

> 2.) Evolution of ports (and packages) versus evolution of the base system.
>
> Reading the docs makes it clear that FreeBSD maintains is a rigorous
> distinction between the base system and add-on packages (ports). This is very
> appealing. However, as far as I can tell so far, even though my base system is
> 8.0 -RELEASE (and remains fixed between releases?), the ports continuously
> evolve (are updated). Is my understanding correct that by tracking a RELEASE
> system I can have "bleeding edge" (or close) versions of ports? Or, do I need
> to track STABLE of CURRENT for that?

Since ports are in a separate tree than the FreeBSD operating system 
source, you can keep ports current regardless of which version of the 
operating system.  So stick with 8.0 or go to 8-STABLE and it's no 
problem.

9-CURRENT is bleeding edge, where things can break with no warning.  And
you'd need to rebuild all of your ports if you switched to it, since 
they were built on 8.  But you could still get the newest ports.

> 3.) Upgrading ports seems to take considerable time (at least with my
> experiments on a 5 year old Pentium IV). I am keen to adopt FreeBSD as my
> desktop for work  (Physics Professor, Research and teaching). Is it feasible
> in a work environment to upgrade ports without getting bogged down in a
> compile-a-thon, leaving one with a useless workstation. (My target machine
> will be an 8-core HP z600 (Xeon) which leads me to believe that I could do the
> upgrading in the background while I continue to work uninterrupted. I'd like
> to hear others experiences here.)

I'd think background ports building on that kind of system would be no 
problem at all.  The only thing that really slows down this Core 2 Duo 
system is building something big (openoffice), and that seems to be more 
due to swapping or disk contention than CPU time.

-Warren Block * Rapid City, South Dakota USA



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.0912030814430.9198>