FreeBSD Ports vs. Gentoo Portage (a matter of concept)

FreeBSD Prospect mailings.freebsd at o0l0o.org
Tue Feb 7 02:49:37 PST 2006


Hi,

Reading a lot about FreeBSD recently made me really curious. I know, that the 
founder of Gentoo (the well known GNU/Linux meta-distribution, which is also 
based on compiling everything from source) was using FreeBSD for some time, 
before continuing creating Gentoo, what's why portage (the Gentoo software 
management system) is generally based on FreeBSD's ports. 
 
FreeBSD is generally seen as being more secure, more stable, has a lot more 
software in ports, and used to be the better choice especially for production 
servers. Now I am wondering, how this is even possible considering the 
following: 
 
 - Portage divides all software into three states: hardmasked, masked 
unstable/testing (~arch) and stable (arch). 
 
 - In ports there is no such difference, which means the lastest software is 
just available using the usual port management features, without the need to 
fiddle around with unmasking something, to be able to install it. In most 
cases (even the usual desktop stuff, like Gnome & KDE) software in ports is 
more up-to-date than in portage. 
 
That means, to be able to compare Gentoo Linux with FreeBSD, you would have to 
run a pure unstable (~arch) Gentoo system, which is generally not 
recommended, and especially not for a production system. 
 
So how is it possible, that FreeBSD is considered to be more suited as a 
production environment, if it runs the latest software-versions, which are 
considered unstable/testing in Gentoo? 
 
How comes, that a FreeBSD system is considered to cause less work do 
administer this way (thinking of regular updates of installed ports, and if 
it's only for security fixes - compare that to the frequent changes in ~arch 
portage)? 
 
And shouldn't a FreeBSD system break more often, if kept up to date on a 
regular basis (this is meant concerning the software installed from ports, 
not the base-system)? 
 
Maybe I am missing something here, or maybe the procedure to get something 
into ports is different (more test in advance by the contributors/devs?), but 
I could not find more info about that matter until now. 
 
Don't get me wrong, I think the portage way with the three different states is 
useful, and the more I read about the ports system in FreeBSD, the less I 
think, ports are superior to portage (at least if you are used to portage and 
USE flags). But hands down, using Gentoo, even a stable (arch) system can 
break from time to time, and a mixture of stable (arch) and unstable/testing 
(~arch) packages may also not be the best approach (try to "hold" an unstable 
package by using something like "=sys-apps/baselayout-1.12.0_pre13-r1" and 
see that particular ebuild disappear in favor of newer unstable versions with 
portage complaining about no suitable versions being available for your 
setup). 
 
The FreeBSD way, to split the base system (the OS itself) from addon software, 
is a really good idea, so that the base system can be kept stable and profen 
to be well tested, but I just don't understand, how this is fitting under one 
hat, with having a stable OS & all the lastest add-on software installed. How 
does this work out in the FreeBSD world?

P.S. If interested in upcoming reactions from the Gentoo world, have a look at 
the following forum posting: 
http://forums.gentoo.org/viewtopic-p-3091579.html

-- 
Sincerely,
Michael

A FreeBSD Prospect, who is actually using Gentoo Linux


More information about the freebsd-questions mailing list