# What is the link between FreeBSD & Gentoo



## sonysun (Oct 24, 2010)

We can read this : "Gentoo is a free operating system based on either Linux or FreeBSD..."
In gentoo's home page.

So, what is the relation between my favorite BSD os & Gentoo ?


----------



## da1 (Oct 24, 2010)

Debian GNU/kFreeBSD


----------



## vermaden (Oct 24, 2010)

@sonysun

Some 'linux people' tried FreeBSD and liked ideas upon which FreeBSD is built/works and they thought about 'porting' them into the Linux world, so they started Gentoo where Portage is Linux version of Ports, USE flags are Linux equivalents of WITH/WITHOUT flags from Ports, all/most configuration only in /etc/rc.conf with /etc/make.conf for compile options, just multiuser + singleuser mode like in FreeBSD and viola, You have Gentoo Linux whom most ideas came from FreeBSD UNIX.


----------



## sk8harddiefast (Oct 24, 2010)

I was a Gentoo user about a year. First off all both of them starting without GUI enviroments etc. Just a console  Both of them compile the packages and not download the binary. On FreeBSD is also the option of download already build. Gentoo use flags as FreeBSD do. But I really prefer FreeBSD's way to set flags. Gentoo's is a little mess and what exactly are flags, I understood it on FreeBSD. Both have ~ the philosophy. I give you almost nothing. Only the needed tools to start. Do it as you want by own  Sounds difficult but a lot of people (me too, we like minimalism). Also is better option for small machines without a lot of possibilities.
But why to prefer FreeBSD from Gentoo?
1)Community.
2)Kernel config is so much easier from Gentoo's. Too noise for nothing. On FreeBSD kernel config=0.5 day, 2 coffees (If you do fist time). On Gentoo 1 day, 4-5 coffees (If you know what you are doing)
3)Ports have 22500 packages. Gentoo's portage have 11500 packages and think that is the biggest package manager on Linux. After that comes Debian.
4)Flags. On Gentoo to set flags is too mess. Here is easier and more practical 
Also don't forget. Gentoo is based on FreeBSD on some things but still Linux. FreeBSD=UNIX and not Linux.


----------



## fronclynne (Oct 24, 2010)

*ARM?  seriously?  sounds like something google.com would use*

In the dimly remembered past Gentoo was trying to integrate the FreeBSD kernel into their general scheme of things.  There is still this, though how much it has to do with FreeBSD (or any other BSD) at this point is beyond me.

There are definitely things to like about Gentoo's USE= flags, but the sheer mass of options ( http://www.gentoo.org/dyn/use-index.xml ) makes it a bit unwieldy.

The Linux kernel is a whole order of magnitude more difficult to configure, though in its defense it does run on one or two* architectures that FreeBSD doesn't.

*but, besides the NetBSD kids, who Ã°e heck really needs to run on Power, z/390, Alpha, MIPS, ARM, . . ?


----------



## vertexSymphony (Oct 25, 2010)

> FreeBSD=UNIX



AFAIK FreeBSD isn't certified as a UnixÂ® system ... it does have a lot of Unix philosophy and background, but it isn't UnixÂ®


----------



## sk8harddiefast (Oct 25, 2010)

Linux too is not Pure Unix as I read on a lot of forums (Don't know why). So Pure Unix is only Solaris? I believe that BSD is UNIX system. Maybe I am wrong. I never understood this differences.


----------



## vertexSymphony (Oct 25, 2010)

http://en.wikipedia.org/wiki/Unix
http://www.unix.org/what_is_unix.html
http://www.unix.org/what_is_unix/the_brand.html

Solaris is indeed registered as a UnixÂ® system -> http://www.opengroup.org/openbrand/register/xy.htm

Cheers, Alex


----------



## sk8harddiefast (Oct 25, 2010)

I will do 10 days to read all this  And I don't know very good English  I will read it tommorow with my coffee  Maybe is not 100% Unix but reading on forums you can't say that is not. Never mind


----------



## fronclynne (Oct 25, 2010)

Linux has nothing to do with Unix other than copying the look & feel (& a bunch of the command syntax) from its use of the GNU toolset.  FreeBSD relies on some of the legacy BSD tools (which have obviously been rewritten over the years) which were once  distributed along with Unix as BSD.  Note that all of the AT&T copyright code has been removed and since FreeBSD doesn't pay it can't (legally) be called Unix.

The upshot being that the BSDs are Unix derivatives; Linux is an entirely new thing that looks vaguely like Unix.


----------



## sk8harddiefast (Oct 25, 2010)

Ok  . Now I understood


----------



## UNIXgod (Oct 25, 2010)

If you look at the old handbook (archive.org) as well as the old main site of freebsd.org it refers to itself as UNIX. Since the lawsuit everything has been changed to UNIX-like or derived.

If you look at the history you'll understand that FreeBSD is UNIX regardless whether or not some special tax was paid for the name (i.e. apple's OSX)

ON-TOPIC
Initially the gentoo project was started by Daniel Robbins (A pretty prolific hacker and writer)

He wrote an article in the IBM blogs about 'making the distro' where he explains that he worked with FreeBSD for a couple of years and took the concepts of the ports tree over to his own package manager called portage.

The reason the mention FreeBSD is they attempted years ago to create a FreeBSD derived system using portage and their rc system. 

Strangely they don't mention Mac OSX (maybe because it's FreeBSD) because they also have the alt/gentoo project which bring emerge and gentoo to a chrooted style setup for the mac. Sadly that project has also slowed down. 

My home hobby/dev system I have set up for tri-boot with win7/FreeBSD/funtoo(another gentoo variation using git for emerge--sync)

As a 12+ year FreeBSD user and maybe 2-3 year linux user I can say one thing that annoys me the most.

Why do they feel they need to stuff anything that is user installed in /etc instead of using /usr/local/etc

Also the live distro doesn't have vi and your stuck with nano until you install it yourself. 

Aside from that emerge is a really nice tool. It's kind of like portupgrade on steroids. If it existed as a simple port management tool in FreeBSD with low overhead I'd be interesting in trying it. But then again there is nothing wrong with the current set of tools at our disposal.


----------



## phoenix (Oct 25, 2010)

sk8harddiefast said:
			
		

> Linux too is not Pure Unix as I read on a lot of forums (Don't know why). So Pure Unix is only Solaris? I believe that BSD is UNIX system. Maybe I am wrong. I never understood this differences.



The FreeBSD source code is derived directly from the source code for BSD UNIX (you know, that thing developed in the 70s and shipped on tapes), but it has never gone through the certification process to become known as UNIX (tm).  Thus, it cannot use the trademarked term "UNIX", and everyone calls it "Unix-like" or "Unix-derived".

Linux was developed on its own, without using any code from any version of AT&T or BSD UNIX.  The GNU userland tools were re-implementations of UNIX tools, and were compatible with the options and whatnot.  They follow (usually) the POSIX and Single UNIX Specification (SUS) specifications, but no Linux distribution has ever gone through the certification process to be known as UNIX (tm).  Considering they have no actual source code relation to UNIX (tm), I don't know if they'd even be able to.

Apple put MacOS X, which uses a lot of code from FreeBSD and NetBSD, through the certification process, and can call MacOS X UNIX (tm).

This familiy tree should explain it all.


----------



## Crivens (Oct 25, 2010)

fronclynne said:
			
		

> *but, besides the NetBSD kids, who Ã°e heck really needs to run on Power, z/390, Alpha, MIPS, ARM, . . ?



I smell flamebait 

Ok, I'll bite. 
The more CPUs are available the more some 'optimizations' are frowned upon. I remember the time when Linux was ported for the first time - to the m68k. That was a really nice CPU, but as I understood the porting itself was a big PITA due to things like inline assembler in the kernel and assumptions which only held on x86. The same goes for user space apps which do not consider that the world is more than Windows or Linux. On the other hand, once you already have a kernel that works on both little and big endian as well as 32 or 64 bits, how hard is another architecture going to be?

While it is perfectly good to run the system on the cheapest HW that can do the tasks needed, which would be x86 these days, the diversity is important from a QA point of view. Once you have no new challenges or only the same type of habitat, the gene pool turns to a stagnant pond. See the sabertooth tiger for details on this. For our bread&butter OS this would mean that once we started to cater only to x86, we would enter the same kind of embuggerance (thank you, el reg, for this word) the windows users have now. One hiccup in the environment, like f.e. the absolute need to go to 64 bit for important tasks, and you need to start over or bring in some kludges. As for kludges, first they are an evil hack, then a neat trick and following that they turn to accepted practice. Then they fail.

In the long run, keeping the code base flexible is the better solution I think. A way to do this is to keep some architectures around which are different enough from each other so a kludge blows up something and gets fixed before some other parts start to rely on that pice. 

Returning to fronclynne, who would want to run on these CPUs? We do, kind of. Even if not for the all purpose tasks of each day, but we will need to be able to run them. Consider them an early warning system when you rely on the OS to do what it should. Also, they can be much fun to tinker with as a hobby or part of some hobby device. Like a flight control system for autonomous planes, running on gumstix f.e.

And to return to sonysun, what is the link between FreeBSD and Gentoo?
Well, I see it like this: The link is the idea, the way to add applications to a system using ports or a ports-like environment. The makers of Gentoo liked it, so they ported it over to Linux and made it a distribution. Now to make the connection to my ramblings above, I consider this as the diversity for the ports system, like the diversity of CPUs for FreeBSD. It is not the same on Gentoo, but you tend to find your way around much faster because it is closer to what you already are used to. If there are some good ideas in it, they can be ported back without risking to annoy users too much when trying. It already is tried out somewhere, and some posters here would like to see something like it in ports, i gather.


----------



## Beastie (Oct 25, 2010)

sk8harddiefast said:
			
		

> Linux too is not Pure Unix as I read on a lot of forums (Don't know why). So Pure Unix is only Solaris? I believe that BSD is UNIX system. Maybe I am wrong. I never understood this differences.


They are all Unix-like. *BSD are "genetic Unix" since they are linked to the AT&T original.


----------



## fronclynne (Oct 25, 2010)

Crivens said:
			
		

> Returning to fronclynne, who would want to run on these CPUs? We do, kind of.



I'm glad somebody got the joke. 


_Edit_: I should footnote that the reason I threw ARM into the mix is that it's one of the fastest growing markets right now.  Obviously prediction is quite difficult (especially about the future), but having ARM as a tier-1 architecture might be a good bet.


----------



## fronclynne (Oct 25, 2010)

sk8harddiefast said:
			
		

> So Pure Unix is only Solaris?



And SCO, Xenix, IRIX, AIX, OSX (why didn't Apple stay with the theme of the old Apple ][ and spell it "OS><"?  I don't know either), True-64 (or whatever they last called it), etc.


----------



## oliverh (Oct 25, 2010)

sonysun said:
			
		

> We can read this : "Gentoo is a free operating system based on either Linux or FreeBSD..."
> In gentoo's home page.
> 
> So, what is the relation between my favorite BSD os & Gentoo ?



Really simple, Daniel Robbins is the creator of Gentoo and before that he started with FreeBSD. Therefore you see _some_ similarities between both of them.


----------



## oliverh (Oct 25, 2010)

sk8harddiefast said:
			
		

> Linux too is not Pure Unix as I read on a lot of forums (Don't know why). So Pure Unix is only Solaris? I believe that BSD is UNIX system. Maybe I am wrong. I never understood this differences.



Just have a look at the timeline: http://www.levenez.com/unix/


Twenty Years of Berkeley Unix: http://www.oreilly.de/catalog/opensources/book/kirkmck.html

What, a real UNIXÂ®?: http://www.freebsd.org/doc/en/articles/explaining-bsd/what-a-real-unix.html


----------



## UNIXgod (Oct 25, 2010)

Some more info for this thread:

/usr/share/misc/bsd-family-tree

actually lots of goodies in misc.

Oral history of BSD:

http://www.youtube.com/watch?v=ds77e3aO9nA


----------



## jewsofeast (Oct 26, 2010)

sk8harddiefast said:
			
		

> I was a Gentoo user about a year. First off all both of them starting without GUI enviroments etc. Just a console  Both of them compile the packages and not download the binary. On FreeBSD is also the option of download already build. Gentoo use flags as FreeBSD do. But I really prefer FreeBSD's way to set flags. Gentoo's is a little mess and what exactly are flags, I understood it on FreeBSD. Both have ~ the philosophy. I give you almost nothing. Only the needed tools to start. Do it as you want by own  Sounds difficult but a lot of people (me too, we like minimalism). Also is better option for small machines without a lot of possibilities.
> But why to prefer FreeBSD from Gentoo?
> 1)Community.
> 2)Kernel config is so much easier from Gentoo's. Too noise for nothing. On FreeBSD kernel config=0.5 day, 2 coffees (If you do fist time). On Gentoo 1 day, 4-5 coffees (If you know what you are doing)
> ...



I use gentoo and bsd,i for myself prefer gentoo for various reasons and mainly for support. the forum admin/moderators are very helpful and prompt. i cant say the same for freebsd. gentoo teaches a lot during configuration. i dont find freebsd install and x install challenging at all. 

as per flags you can add all your flags after setting up kernel in order to avoid circular dependency conflicts (that is what i do). linux kernel sure lacks stability of that of unix or solaris kernel but people work on it and do their best.


----------



## vermaden (Oct 26, 2010)

jewsofeast said:
			
		

> i cant say the same for freebsd. gentoo teaches a lot during configuration. i dont find freebsd install and x install challenging at all.



Its that GOOD for FreeBSD? 

If You want challange, then build/install LFS, a lot of fun waiting for You ... and leave that LFS Book closed, let the fun begin ;p


----------



## Crivens (Oct 26, 2010)

Well, you had me there for a second.



			
				fronclynne said:
			
		

> I'm glad somebody got the joke.
> 
> 
> _Edit_: I should footnote that the reason I threw ARM into the mix is that it's one of the fastest growing markets right now.  Obviously prediction is quite difficult (especially about the future), but having ARM as a tier-1 architecture might be a good bet.



Do not underestimate MIPS or Power. Personally, I like Power more than ARM. But that does not stop me from liking ARM a lot more than x86  I think that some point in the future, the x86 will be phased out. It would be good to get rid of a lot of crud which accumulated over the years, like A20 gates, ISA, BIOS, LBA and so on and so forth.


----------



## DutchDaemon (Oct 26, 2010)

No ARM-wrestling, guys.


----------



## SirDice (Oct 26, 2010)

Crivens said:
			
		

> I think that some point in the future, the x86 will be phased out.


It should have been phased out 30 years ago 

Sorry, still partially in love with 680x0


----------



## Crivens (Oct 26, 2010)

Since this thread is already deteriorating into a "what in UNIX" thread...
This reminds me of the Judean Peoples Front .vs. the Peoples Front of Judea.

Things which pass the test can be called UNIX, regardless of what they _are_. Even Windows NT passed the Posix test.
FreeBSD and Gentoo are connected by the idea of ports and the configuration of a hand tailored OS around that. Since they both are based on software and kernels which are following the philosophy of UNIX, there is not so big a gap.  



			
				DutchDaemon said:
			
		

> No ARM-wrestling, guys.



And no wrestling the Hobbit!




			
				SirDice said:
			
		

> It should have been phased out 30 years ago
> 
> Sorry, still partially in love with 680x0



"The x86 architecture is difficult to explain and impossible to love", quoted from memory out of the Hennessy and Patterson. I also treasure my good old 68030 with it's 68060 next to it. The 68000 board makes a fine background to the selection of wines in my home office 

Somewhere around here i have a recording of a speech one of the P4 architects gave. A lot of details regarding the compatibility (bit for bit and bug for bug), what the fdiv bug was about and what was behind the decision to build the (t)itanic. Sometimes you really do not know wether to cry, laugh, be amazed or bang your head on the desk. The problem is that much of the decision make sense in the context, but that makes it even more horrible.
I will check if I can find a source for this online, it is a great education about how projects meet with a brick wall and why that happens.


----------



## DutchDaemon (Oct 26, 2010)

I believe the original poster is now cowering in the woods somewhere, so I suggest we consider this 'answered'.


----------



## sfourman (Sep 7, 2013)

UNIXgod said:
			
		

> Aside from that emerge is a really nice tool. It's kind of like portupgrade on steroids. If it existed as a simple port management tool in FreeBSD with low overhead I'd be interesting in trying it. But then again there is nothing wrong with the current set of tools at our disposal.



I love the idea of having emerge in FreeBSD, with all the USE flags. I wish there was a project that was working on porting these. I for one thing these tools have their place in FreeBSD. I'm not saying get rid of the tools we have like PkgNG. I love FreeBSD, but I admit there are a few Gentoo features I  wish it had.


----------



## kpa (Sep 7, 2013)

PKGNG is not a ports(7) management tool but only for the packaging side of it. Closest to emerge are ports-mgmt/portmaster and similar tools. Also ports-mgmt/poudriere is port building tool that could use some ideas from emerge.


----------

