I had a 18 month fling with Gentoo, what draw me in was the portage system, but ironically what threw me out was the same portage system.
Paludis points to many problems within portage, and I have first hand experience in some of the fundamental problems with the tool. It didn’t seem to matter if you tried to not get your hands dirty, you almost certainly did anyway.
Some times, without notice portage would fail to install a peice of software after an upgrade. Paludis lightly touches on points about buggy software and the fact that those bugs won’t be found until you hit runtime, instead of compile time. This is also reflected in the fact there is no test suites (as stated)
I love the prospect of Paludis written in C++, may take a look at it.
What broke the camels back for was when one day I wanted to upgrade to glibc 2.5, portage simply wouldn’t. (errors, failures, dependances etc) I tried for months to get it to upgrade. I had invested significant time into Gentoo as a server build so it was very upsetting to get rid of it.
Maybe Paludis can save Gentoo? In the end I installed Ubuntu.
I had a 18 month fling with Gentoo, what draw me in was the portage system, but ironically what threw me out was the same portage system.
Pretty similar with me. I had an 18 to 24 month fling with Gentoo. What drew me in was the whole concept of compiling everything on my own system for optimization, but ironically what threw me out was the whole concept of compiling everything on my own system for optimization.
After using Gentoo for a while, I just got sick of those multi-hour compiles when a new Firefox + Thunderbird update was released. And the fact was, I could not perceive a performance advantage. I don’t care if there is some microscopic performance advantage that requires benchmarking tools to even be able to verify. The real world, day to day usage proved to me there was no performance advantage.
Plus – as I got more interested in OpenBSD, I became much more keen to the notion of using precompiled binaries. Keep your production system *clean* and *lean* … free from compilers, free from source code, and so on.
Some of the points that really made me change my mind about Gentoo (and compiling in general):
* In the vast majority of cases, you won’t see any performance advantage. An i686 optimized version of notepad.exe isn’t going to “perform” any better than an i386 optimized version of notepad.exe for the reason that most applications spend most of their cycles waiting on user input.
* In the event that an application does benefit from CPU optimizations (such as the Linux kernel), the distribution will provide an optimized version for you.
* When you are running your own compilations, *you* are the only person testing that program. When you run the same binary that the other 1000’s of Debian/Ubuntu/RedHat users are running, you share the benefit of getting updates to that binary should a bug or security issue be located.
I could go on, but those are the key points.
I’ve pretty much done a 180 – I now have a love affair with binary systems for any kind of production. (Including Desktop systems, workstations, and especially servers.) I read a great line in my Absolute OpenBSD book … it goes something like this. “Hackers love it when you have a working compiler on your server. It makes their life that much easier.”
Wow you sure got Gentoo totally the wrong way :O Gentoo isn’t about optimizing everything with some magical compiler parameters and somehow magically having a whole lot faster distro than everyone else…It’s about being able to customize everything for specifically yourself and your machine. I have been using Gentoo for years and there just simply isn’t anything that could draw me away from it. F.ex. I can install MPlayer with exactly the features I want, but on the binary distros you’re stuck with what they provide you.. Oh, and just to say something about those optimizations: no, optimizing and tweaking some GUI app won’t mean much but if you’re for example running Apache…..Having Apache optimized for the hardware it is running on will benefit a lot more. I instruct gcc to optimize my server software for max speed whereas I instruct gcc to optimize my GUI apps for size. The smaller size the binaries are the faster they load and less memory is used, you know? But on a binary distro you don’t have that kind of a power.
EDIT: Just thought to add here that I see it kind of stupid to be compiling new software every day…I usually sync portage tree once every two weeks and update everything then. I’ll just leave it compiling them while I’m out of home or sleeping.
Right. IIRC if you just install Ubuntu, it doesn’t even play DVD or even mp3 (last time I tried) with its media player(totem)…
In Gentoo, I can even build desktop systems that fits much better suited for me than any other distro, because my media player WILL play everything I want it to play…(dvd, flac, mp3) not like stripped down half useless thing just because the distro maker’s decision about license or whatever there is about it that won’t let you play the damn file you own…
And on binary distro these problems will start causing 3rd party repos to spawn here and there, having them say ‘we have the more working and leading edge apps’ and will start to lead into further problems, since those are run by small amount of people and will not get the proper maintenance as much as the official repos.
I just don’t know when people say ‘Gentoo is going downhill’. It might mean ‘not getting as much publicity as it used to’, because people know Gentoo by now and hype about source based distro and compilation magic is over… IMHO, it’s still the hottest distro out there.
I may be insulting but other ‘easier’ binary distro will cause random newbies to start posting so much questions and answers on the net that google results tend to bury the real technical questions but tend to show random newbie posts that make you sigh… but when it comes to gentoo, forum/wiki/just plain google results are full of technical helpful documents and that’s another part that I like Gentoo about. gentoo-wiki.com is a great stuff.
Right. IIRC if you just install Ubuntu, it doesn’t even play DVD or even mp3 (last time I tried) with its media player(totem)…
If you just install Gentoo it does absolutely nothing. Do get it to play dvds, flac and mp3s you have to install a media player and the correct codecs. In Ubuntu the media player comes pre-installed by default and all you have to do is add codecs for whatever you want. And adding those codecs is very trivial, certainly as easy as using portage and probably much easier. Claiming that getting a media player to play mp3s is easier with gentoo than Ubuntun, simply isn’t true.
I’ve been using gentoo for more than two years now and I have no intention to leave. It gives me the freedom of LFS without the administrative hassle
Oh, and why bother with daily compilation? I use glsa-check mostly, and every now and then an update of world (one can usually skip the glsa-check if you update more than once a month).
you do know you can install binaries via portage as well as compile right? for those big apps if you don’t have the power to compile (or time) just use a binary.
I’ve pretty much done a 180 – I now have a love affair with binary systems for any kind of production. (Including Desktop systems, workstations, and especially servers.) I read a great line in my Absolute OpenBSD book … it goes something like this. “Hackers love it when you have a working compiler on your server. It makes their life that much easier.”[/quote]
You could always build the packages elsewhere, then emerge –usepkgonly on the production server.
I followed the same path you did… Gentoo was my introduction to Linux on the desktop (2003-2005) and I ended up giving up on it not because of Portage and breakage, but that setting up things like sound servers and automounting was just getting to be a major hassle, that and the pressure to keep updated and compiling all the time. Went to Ubuntu, and nearly made a fool out of myself trying to tweak everything the Gentoo way…
On the other hand, at the same time (and for a few months after I switched my own machine) I was maintaining a very old, very slow computer for general use around the department. It was a Pentium II 333 MHz machine, but with a bit of care it was usually running faster than the 1.8 GHz Pentium IV computers we had running Windows XP.
It’s not the compile-time optimizations that made it fast, it’s that Gentoo allowed me to be very selective about what software I installed. I used a kernel that only had built-in drivers for the hardware in the machine, no sound system, XFCE 4.2, Firefox, OpenOffice (which was admittedly dog slow) and very few other things. Gentoo is great if you know exactly what you want the computer to do (and probably even better if you can just set it up and forget about it)
The other thing I will say for Gentoo is, if you want to compile a newer version of a program (say, for beta testing or because you need it and it’s not in a repository), it was much easier to do so on a Gentoo system, since you were guaranteed to have a compiler and all the header files for everything on your system.
I hope Gentoo gets out of its current slump (granted, since I haven’t heard much about it lately it must have abated or entered a less-newsworthy phase), and I hope Paludis works. I remember reading about Paludis back when I used Gentoo (so this is not a new thing either), and I remember Ciaran being… well, acerbic and opinionated, arguing with the other developers. Hopefully things have changed for the better since then.
Heh, these days setting up sound servers and automounting is done for you quite automagically (well, with the proper use flags that is :p ).
But I can remember in the beginning. Back then automounting worked rather randomly.
gentoo is quite newsworthy but the very rolling structure of gentoo means releases don’t make much sense and as such there aren’t any of those to talk about. But that doesn’t mean gentoo isn’t taking big strides constantly. It is just done without fanfare.
The Fedora and Ubuntu-devs tend to scream out loud everytime they fix a detail, gentoo-devs just post a reply in a bug-report when a detail is fixed. And then we all rejoice
I had a 5-year Gentoo phase, starting toward the very beginning, in late 2001, before the 1.0 release.
I wasn’t drawn by the source-based aspects, but rather the meta-distribution aspects. I thought that Gentoo was the heir-apparent mother distribution to succeed Debian and become the technical underpinning of myriad binary distributions–the standard make-you-own distribution toolkit.
The Gentoo Forums were legendary. The community was vibrant, full of knowledgable and helpful people. The project had a unique vision and direction. Then Daniel Robbins decided to cut the project loose to fly on its own. It was a slow, painful decline from that point on.
The binary distributions based on Gentoo never materialized until Sabayon, which isn’t really a binary distribution of Gentoo so much as a Stage 4. Portage wasn’t scaling well with the explosive growth of the tree, and although its performance improved, progress was sporadic and transistions were often complicated.
It was death by growing pains, predominantly because Gentoo didn’t offer a binary derivative to appeal to the crowd that thinks they’re hobbyists but really just wants a distribution that makes a bit more sense under the covers. Gentoo attracted a userbase it didn’t want and couldn’t satisfy.
Gentoo is a great idea that never really fulfilled its promising potential, and the Debian/Ubuntu ecosystem has really picked up the slack. I wish my Ubuntu systems were really Gentoo under the covers. I wish I had emerge and rc-update. But it’s not worth the effort anymore to deal with Gentoo. Ubuntu is “good enough”.
And the gentoo view is that Ubuntu is an african word meaning ‘Gentoo is too hard’
gentoo is still among the biggest distributions and is still moving forward. But the distribution and the userbase have matured and become boring in the eyes of the “leet” persons. But the rest of us just want something that works and does what we want it to, when we want it to. And gentoo does that.
“It was death by growing pains, predominantly because Gentoo didn’t offer a binary derivative to appeal to the crowd that thinks they’re hobbyists but really just wants a distribution that makes a bit more sense under the covers.”
This just doesn’t make any sense: why would Gentoo need to offer a binary distro based on itself? That’s like saying that Microsoft failed because they never opened up their source code. Microsoft isn’t about opening up its code and Gentoo isn’t about being a binary distro.
why would Gentoo need to offer a binary distro based on itself?
Because there’s an obvious demand for a binary distro based on Gentoo. The Gentoo Project doesn’t necessarily need to be the steward of such a derivative. Think more along the lines of the Debian/Ubuntu relationship. Genbuntoo, if you will.
Sorry, but if you want Gentoo you will have to build it the old fashioned way-the way it was meant to be. You are defeating the core purpose of Gentoo with this idiotic idea of Genbuntoo.
Dammit, the original poster already explained this and you still cannot parse his logic. If you want *buntu install THAT!
“Because there’s an obvious demand for a binary distro based on Gentoo.”
Umm… But Gentoo isn’t a binary distro. To take full advantage of Gentoo’s features, the derived distro would _absolutely_ have to be source-based. How can you have the awesomeness that is conditional compilation in a binary distro? I mean, think about this — the package in question has about 50 use flags, which means, that there are (2 to the power of 50) ways to compile it, right? A binary package maintainer for such distro would have to maintain an insane amount of package variations — like a quadrillion or so.
My point is: what exactly do you mean by “Gentoo-based binary distro”? Optimizations? Gentoo isn’t about CFLAGS, really. USE flags? Fine, but how can one implement every possible USE flag configuration for a given package?
You’re missing the point. In a binary distribution based on Gentoo, the packages would be prebuilt with a default make.conf. The user would have the option of building from source with custom CFLAGS/USE if they wish, but most users would be fine with the binary package most of the time.
It would be just like regular Gentoo, except you have the option (possibly the default) to install binary packages built with fairly conservative CFLAGS and fairly inclusive USE flags.
If you’re familiar with Arch Linux, imagine more of that kind of binary/source hybrid packaging concept but based on Gentoo’s ebuild tree, Portage/Paludis package management, and the rest of the Gentoo platform.
If you’re familiar with Arch Linux, imagine more of that kind of binary/source hybrid packaging concept but based on Gentoo’s ebuild tree, Portage/Paludis package management, and the rest of the Gentoo platform.
Gentoo does do this, to some degree. Some of the bigger packages (such as openoffice, thunderbird and firefox) have -bin packages you can emerge, which are prebuilt binaries. The # of binary packages in there aren’t that high, but the concept does exist.
Yes the portage system does have a lot of issues. But the .ebuild system works out pretty well.
The issue I have with Paludis is that its complicated to use, unlike emerge. And once you start using paludis, you cant go back to emerge/portage. It doesn’t sync what you have installed / updated on the system.
As far as it said it built fine, and doesn’t run issue(which I haven’t had) you can turn on build testing.
And the newer emerge/portage system has gotten much better at checking for a lot of other misc issues. Like testing to see if the current emerge will overwrite other packages file.
Another big thing I see a lot of people bitch about is when theres a major update to a critical package like Apache. If they where just to check the front page, the dev’s put out notices weeks in advance.
Yes emerge/portage does need a lot of help, It just needs to be redone, ether c/c++ or just stop using flat files for everything. Which is the issue with me, its dog slow, even on a 10K RPM drive. Use sqlite damn it!
My next box will be a mac, but ill always have a Gentoo box around. And I use Gentoo at our colo, need all the performance possible, and RHEL/SuSE/CentOS just doesn’t cut it.
I use Gentoo at our colo, need all the performance possible, and RHEL/SuSE/CentOS just doesn’t cut it.
Do you have any sort of benchmarks as to where Gentoo gets things done, but RHEL/SuSE/CentOS doesn’t cut it? I’ve heard plenty of people make this claim, but no has ever substanciated it.
I actually did my own bench marks between Gentoo and Red Hat a few years ago, when trying to decide which OS to use on a server, and found no performance differences at all, once I made sure all the software was of the same version and was configured the same.
I actually did my own bench marks between Gentoo and Red Hat a few years ago, when trying to decide which OS to use on a server, and found no performance differences at all, once I made sure all the software was of the same version and was configured the same.
Care to enlighten us how did you actually benchmark and what?
A bunch of file transfere tests (samba, nfs and ftp) timed with a stopwatch. Some Apache benchmarking tool that I can’t remember. Some SQL queries that we used a lot, run on a copy of actual data from our database. There may have been something else.
If I recall correctly, gentoo won one of the benchmarks first time around, but that turned out to be simply because it had a newer version of some program than Red Hat. Once I installed the same version on Red Hat the difference disappeared.
You probably know this already, but what helped me a LOT was making a separate partition and format it to ReiserFS for /usr/portage. The difference is huge. Now portage isn’t particularly fast, but it’s not really slow either. Hope this helps you or someone else.
I still remember how underwhelmed I was when hearing about this the first time. Before condemning the choice of language, I tried to find out why they chose C++ to begin with. This is what they say on their FAQ:
Because we don’t have the time or the manpower to write it in C.
However, as python would have allowed them to write Paludis ridiculously faster than using C++, that line of reasoning seemed questionable. Especially as emerge was itself written in python. Poking around the website, I also came across this item on their list of features:
Low dependency bloat. No Python, no big external crypto libraries.
So I assumed the “bloat” aspect was another rationale. But given the advantages of Python, I find it hard to take that argument seriously. Apparently, McCreesh now also said the following about scripting languages in the article:
The tradeoffs, of course, being a much lower level of static checking, a much higher risk of buggy code slipping through and much higher testing requirements to meet release standards …
Since when does C++ deliver reduced risk of buggy code slipping through when compared to, say, Python? This fantastic claim seems to contradict common sense. Choosing the right language for the job is important, and C++ has always seemed to me as a horrible choice. Everything they say to rationalize their choice simply acerbates this impression.
Maybe its all about having fun with what you are good at?
There is no need for people these days to stand idle and have a language pissing match – there is way too much choice these days, so you just pick what you think will do you well at.
I congratulate the authors of Paludis because they have done something that clearly they love without compromising on their dream to improve Gentoo. Even I can’t make that claim
the simple fact is, python allows ALOT more weird errors to happen because it doesent require as much from the developer as c++, and as stuff builds up, its just harder to know wtf is going on, if the application is written in python, and someone made an ugly mistake.
“Since when does C++ deliver reduced risk of buggy code slipping through when compared to, say, Python?”
The curse of C++ is to forever be judged negatively by people who have no idea what the language is about.
C++ is all about static typing and catching as many error as possible at compilation time (as in, many things that would not work or lead to bugs shouldn’t compile).
Of course, since it’s backward compatible with C it also provides many ways to force your bad code through and many unsafe legacy alternative ways to do things (pointer arithmetic, c-style arrays, managing strings as manually allocated byte arrays etc.) that people incorrectly consider the “normal” way to do things in C++.
If people stopped considering C++ as “C with additional stuff” and teaching it as such, maybe more people would see the language for what it is.
You have a problem with malloc? You probably believe such low level thing as bitwise AND (&) and OR (|) and bit shifts are bad? Let me guess, binary and hexidecimal are bad too? I think most C++ zealots are insecure about low-level computing concepts and want them to go away.
You have a problem with malloc? You probably believe such low level thing as bitwise AND (&) and OR (|) and bit shifts are bad? Let me guess, binary and hexidecimal are bad too? I think most C++ zealots are insecure about low-level computing concepts and want them to go away.
Please don’t act like an idiot.. The parent never complained about malloc nor implied anywhere that doing bitwise operations is evil.. >_< He just probably meant that these a lot cleaner ways to handle strings than doing mallocs and managing the memory yourself. You do realize that it makes the code less readable and produces more code..?
PS. I happen to use C myself but that’s just my taste. I still don’t attack C++ users like you do.
C++ is fine, but I get sick of the attitude that we should hide everything and use natural langauge. What I really hate is when people get proud that they’ve obscured something.
In case you don’t follow their logic — they’re headed for computing without knowing what binary is. That is their goal. You’re an idiot if you don’t see that they would be proud for computer scientists not having to know binary. That is their goal, in a nut shell.
Of course it will catch as many error as possible, but when you compare python with C++ (or any compile vs runtime language), it’s not accurate to say that all the errors you’ll find will be somewhere undetected in a python program.
Just to bring one, there’s many type in C++ that needed to be check where in python it doesn’t matter at all. Like integer, in C++ the compiler need to check for int, long, unsigned, etc. In python, who cares? it’s an integer. If you do some mixing in C++, the compiler will complain, but these errors are irrelevent in python. So as many errors in C++ are far less in python. (but I agree that some will not be check)
At the end it is a matter of design and the quality of code. Bad python code will end on error, bad c++ might throw a buffer overflow.
the first problem for portage that he said is :
Firstly, because Portage is a collection of procedural hacks thrown together over time with no underlying design.
I think this is the real issue. Not C++ or Python or whatever.
Wow, you guys are missing out :-). What drew me into Gentoo was portage, and what keeps me using it is portage. Yes, Gentoo has had some rough times but it works damn well on this workstation and my server. I think Gentoo will be around for quite a while longer no matter what others say.
I’ve been with Gentoo pretty much from the beginning and it’s the perfect distribution for me.
Nothing else comes even remotely close.
I just love being able to specify exactly which optional features of a package I need and especially which features I really don’t (welcome to the power of USE flags).
Compile times should be of no matter on a fairly recent system and even if you need two days on older hardware it is worth it in my opinion.
OF COURSE it depends on the actual scenario and in what way exactly the computer will be used.
Not many other distributions can give me the freedom Gentoo does while still providing me with very easy to use tools to manage that freedom.
Gentoo can be as minimal or as bloated as you’d like it and I love it!
Yes, Gentoo is an excellent server meta-distribution. In fact, only the BSDs come close with their ports system.
Most people don’t know of the advanced package manager that is portage. I can compile the whole environment on a workstation, export the package dir over NFS, and install — get this — BINARY, yes — BINARY packages on the server. These packages can be TESTED on the build environment as well. Holy shit!
FWIW Easynews.com is almost 100% Gentoo servers, as are a few other businesses. Most folks think or expect Gentoo to be or fit one mold but it really doesn’t. It scales from the CF router in my closet to the servers in my rack.
You know, RPM can do everything Portage can do, but better and faster, and it also has really good binary support.
All the people who defend Portage like it’s some sort of magical advanced package management system really don’t have a lot of experience with actually doing advanced things.
You know, RPM can do everything Portage can do, but better and faster, and it also has really good binary support.
It’s been a while since I’ve uses an rpm distro, but can rpm provide a variable dependancy tree that changes based on how you configure a package? For example, if I want to install a gtk package that has optional gnome integration, can I easily disable that integration and not pull in a whole bunch of gnome dependancies?
Yes, because RPM does dependencies based on libraries and files, not based on package versions and numbers. In this fashion, that kind of thing “just works” without any special features.
On my Debian desktop/workstation, I have the window manager I want, the browser I want, the e-mail client I want, the IM client I want, the music software, the office apps, and so on.
On my Ubuntu laptop, it all pretty much “just works”.
On my OpenBSD server, I have OpenLDAP setup how I want, I have apache, postfix, mysql, etc…
So … I have everything I want, setup how I want – and I didn’t spend an entire day doing “stage 1 / stage 2 / stage 3” installs – and I don’t spend hours and hours per week turning my CPU into a hot iron grill by way of compiling hundreds of megs of source code (thereby wasting enormous amounts of electricity and otherwise making the machine completely useless while it’s compiling)
You are not doing stage 1 and stage 2 installations anymore (which is sad – they are the funniest parts of installing gentoo).
More power to you that all packages in Ubuntu are compiled exactly the way you want them to be. Personally I must say that my needs are quite different, so none of the ‘buntus fit me. I’d prefer LFS but it’s a PITA to maintain, so I use gentoo (though Source Mage and FreeBSD were close competitors before I chose gentoo back in … hmm.. distant past).
Since all packages in *buntu are compiled 100% according your taste you are not missing out on anything. Consider yourself lucky.
EDIT: The computer is not “useless” while compiling. You can do all kind of stuff while the machine is compiling the packages in the background. You know, these days OS’es support multitasking. Your knowledge of gentoo is severely outdated.
I can’t believe they didn’t mention pkgcore. It is another attempt at a replacement for portage. I was expecting to hear a question about the differences between the two projects.
Compilation isn’t cool because of optimization or the ‘cool’ feeling about it…
Obviously the optimization difference isn’t apparent in many cases and people usually don’t have enough knowledge about making the best optimization out of a package and packages do break if you over optimize.
The thing is, Gentoo make you select. Even debian comes with Exim pre-installed and syslog. Gentoo, you get to choose everything from the start, and the advantage of source comes when you can specify what option you can put on the compiling package. If you don’t need ipv6 support? take it out, making it more secure as to compile less code in a program and the dependencies get less and less as you keep stripping the feature out of packages you use, making it a very lean system with less packages to handle. less code, less bug, more secure.
IMO, it doesn’t matter what people use for desktop. It’s all about hobbies right now, if people want serious linux desktop in a work environment, they’d go something with a support, not Gentoo. So, basically, people complaining about new release of Firefox, Gnome, etc spoiling your afternoon, please choose some binary distro. OTOH Gentoo is really good on servers as you can make a minimalistic system of your choice without any bloat that is packaged by the distro maker. Besides, the point of having no major new version release (which can break hell loose in many distro) makes it a great deal for server admin to keep upgrading packages that they need to update and not fear the gigantic upgrade they might face one day.
Back on topic but portage really needs a fix soon, it’s super slow as hell to start with, but programs like ‘eix’ helps a great amount here already, but it’s been questionable as to why portage has been like that for years.
Portage is really good, I never had any compilation issues due to buggy ebuild or anything (except a few times in the past), I just type ’emerge PACKAGE’ and things always work out. The ‘PACKAGE’ names are usually very clear too, compared to other distro naming them with whatever prefix/suffix they prefer on a package, especially for libraries.
Though one of the complaint on portage being, all of server apps are all bundled as server/client app, instead of having 2 different packages to deal with server/client functions. (like, mysql installs both server/client, when distro like Debian has them separated in case you only need client etc)
I set up a production server on Gentoo. I regret that now. There are other things to do,and daily emerges to keep it up to date are a scary proposition. I always stayed in the office until everyone left, so if it failed, it could be fixed. When you don’t do it daily, it gets even more scary. Now it’s been running solidly without updates for over a year… But I don’t think it’s going to survive an update now. I think Gentoo on a server is a BAD idea.
I set up a production server on Gentoo. I regret that now. There are other things to do,and daily emerges to keep it up to date are a scary proposition.
Why would you be doing daily emerges?
I always stayed in the office until everyone left, so if it failed, it could be fixed.
I’m sorry, but anybody who has to stay behind at an office and can’t fit what they want to do in a 9 – 5 day has something wrong with them. It doesn’t take long to emerge anything, particularly server software.
When you don’t do it daily, it gets even more scary
Why?
But I don’t think it’s going to survive an update now.
Are you doing an emerge world or something? Why in God’s name are you doing that? If you’re trying to update everything on a production server, no matter what distro you use, you’re an idiot.
I think Gentoo on a server is a BAD idea.
This has nothing to do with Gentoo, and everything to do with you.
Thanks for all the ad hominem, segedunumm… I never meant to offend you or hurt you. Sorry for that, I only wanted to be helpful and give some input on my experience.
Someone in this thread suggested daily emerges (world) to stay up to date…
I stayed because this server can’t be down when people need to work, it can’t break because an emerge causes problems.
The longer you don’t emerge, the more likely there are issues that can’t be resolved automatically. This is a ‘feature’ that all rolling release distros seem to suffer from.
Servers need security updates, and I realize that it doesn’t have to be an update world. Anyway, it’s working, I won’t touch it.
Thanks for all the ad hominem, segedunumm… I never meant to offend you or hurt you. Sorry for that, I only wanted to be helpful and give some input on my experience.
You’re not offending me. I’m just curious why you’re doing what you’re doing, because if you do that with any distro and not just Gentoo then you’re in for a rough time.
The longer you don’t emerge, the more likely there are issues that can’t be resolved automatically. This is a ‘feature’ that all rolling release distros seem to suffer from.
Well, the alternative is that you’ll have to take the server down and install a completely updated and new version of a distro and you’ll have to reproduce your install. Yes, rolling releases can present problems, but on a production server you should be leaving it as-is, and when you want to do a mass upgrade then practice on another non-essential server. Security upgrades shouldn’t present a problem. Have a look at what any emerge will actually install before you do it.
That’s what I wound up doing most of the time, upgrading what really needed to be upgraded.
I’m now deploying Debian on all my servers, and it’s easier to set up, and easier to keep up-to-date (also on dist-upgrades). It’s really more work to do that on a Gentoo server, but I guess for some people it’s worth it. I seem to manage fine on vanilla stuff, so it’s less hassle for me this way. And the binaries that I am running, are run by a lot of other people as well, which has its advantages.
I set up a production server on Gentoo. I regret that now. There are other things to do,and daily emerges to keep it up to date are a scary proposition. I always stayed in the office until everyone left, so if it failed, it could be fixed. When you don’t do it daily, it gets even more scary. Now it’s been running solidly without updates for over a year… But I don’t think it’s going to survive an update now. I think Gentoo on a server is a BAD idea.
I’ve got a server running Gentoo. It syncs the portage tree every week on Sunday via a script, updates any software I’ve deemed necessary to be updated and it also installs anything which glsa-check recommends to be installed. But it won’t update unnecessary software, I’ve set it up to do the compiling in the middle of the night on the highest possible nice level.. And I just haven’t installed anything unnecessary there like GUI software. And it’s working like a dream. Haven’t had to do anything manually for several months and haven’t had any issues with it whatsoever
My work place runs Gentoo on production servers too… and I myself runs a Gentoo machine for my daily analysis tasks. We have excellent runtime and we haven’t run into a problem yet.
The point is, anyone that runs emerge -u world daily without checking is just asking for trouble. How many people would actually let Ubuntu, Debian, or RHWS auto-update to the next major release automatically on a production server? People would say that those people are idiots.
For me, I never emerge any big packages until it’s released for 3 days after stable (let the early adopters install and found the issues for me). For kernels, aside from GLSA advisories, I only wait until -r3 before installing. For critical packages like glibc I wait at least a week before installing.
I always take a quick look before emerges. With the older hardware I run, a “emerge -u world” would probably kill my nvidia-driver for new every new update nvidia put out(for example, nvidia recently decided to change the 1.0.87xx versioning convention into the 87.xx conversion for no reason). So, Gentoo, like other distributions, requires a bit of care when updating.. just that the care is spread out over time rather than one big honking update.
Take a moment and buy a new server to test the updates and everything, this goes to every other distro as well.
Doing live update on production server is at your fault. I had CentOS with Xen doing dom0 and did a live update and it broke the hell out of it… Now I’ll never do it again.
I have never used Gentoo but, instead, I’ve found Source Mage GNU/Linux to be a mighty fine source-based distro. SMGL uses a package manager called “Sorcery” and it has a nifty feature called “cleanse”.
In SMGL you type “cleanse” and then it runs several checks on your system — I recall someone describing “cleanse” as the “fsck for installed packages”. It cleans the package caches and install logs and it checks that dependencies for all the installed packages are satisfied. Then it inspects all the installed packages for any missing or modified files/symlinks and it also checks that there aren’t any needed libraries missing.
If “cleanse” finds any problems, the Sorcery package manager reinstalls the troublesome package(s) and then “cleanse” checks them again. Most of the time this fixes things but if the problem persists after the reinstall, then “cleanse” just tells that the package in question is “hopelessly broken”.
So, my question to any Gentoo gurus out there is if this “cleanse” is specific to SMGL & Sorcery or if Portage or Paludis might have something similar?
It checks if any packages are broken due to missing or changed libs.
emerge takes care of package dependencies pretty much automatically so you should not really need a separate tool to check if something is missing.
If you happen to uninstall a package that is needed by something else then revdep-rebuild would tell you and the next “emerge world” would pull that package in again as well.
That’s what I can think of right now but there are probably different ways to do this.
EDIT: But I don’t think there is anything that checks if the installed files are really still there, except for libs.
I couldn’t care less about increasing performance through CFLAGS and stuff, I just haven’t found any distro that beats gentoo’s ratio of flexibility/ease of use.
BTW I haven’t had any serious problem with portage so far (maybe I don’t get my hands as dirty as others, or maybe it’s just luck).
I think it’s an unspoken truth since quite some time in the Linux community, that Gentoo has gradually lost any kind of “relevancy” that it had in the early beginning?
The little perks that Gentoo offers are offered better by other distributions, in a less chaotic / unstable way.
Hmm, it is still among the biggest distributions though. It is just that no other distribution is so release-less as gentoo is, which again results in little news. Arch Linux comes close, and has without a doubt received some gentoo-refugees fleeing the former dev-wars.
But things has cooled down since then, and drobbins is still around in gentoo-land, though he isn’t a dev anymore.
Does it really matter? In most cases, shouldn’t software just be compiled with all the features it was designed to have? In those cases that it really absolutely doesn’t, you can always rebuild from the source RPM, which is far more configurable than silly USE flags anyways.
And why would you ever build software WITHOUT support for something unless there’s a security risk, or you only have 20 MB of disk space?
There are so many people in the Gentoo community who seem to have these insane obsessions, like only using GTK+ programs because the 10 MB of Qt libraries is too much, or using ancient underpowered Window managers and text-mode only programs because they can’t stand having more than 5% of their 4 gigs of RAM filled. I think some of those people need to go into therapy.
“Does it really matter? In most cases, shouldn’t software just be compiled with all the features it was designed to have?”
Nope. Example: MPlayer seems to have an ability to perform encoding functions, which I have absolutely no use for. On Gentoo, when I install MPlayer, I have an option not to compile any encoding features, since I have no use for them — the only media I encode are MP3 files, and I don’t use MPlayer for that. Another example: MPlayer can be built to take advantages of several types of video cards. All of my machines have NVidia cards, so on Gentoo I build MPlayer to use _only_ NVidia cards. Why should my build of MPlayer support i810 series of Intel cards if I don’t have any? These are only 2 of at least 50 possible features that you can turn on or off easily in Gentoo.
And this is not about the disk space either. It’s about having control over your operating system — not the other way around. If I want to use an operating system that insists on controlling my computing experience, I can use Vista or some other Windows OS.
Insane obsessions, you say? How so? This is _my_ machine and _I_ want to have the final say in what gets installed on it. Me. Not some dude in Redmond or some other dude at Red Hat, Ubuntu or any other distro du jour.
Why don’t you just write your own OS and software stack? I mean, do you really want the guys at Gentoo deciding what kind of USE flags you get, like you’re a pig feeding at a trough?
Or how about build your own hardware out of transistors and wires since we don’t want some guy at IBM telling you how to make a computer?
Seriously, this line of thinking is insane. WTF does it matter if MPlayer happens to have some code to do encoding, which you yourself might one day need to make use of??? I mean, every piece of software has some parts that you probably don’t make use of. But does it really buy you anything to not build some of those features? Does it really? Or does it just make you feel l33t that you can compile MPlayer without encoder support. I suspect it’s the latter. Because USE flags really don’t give you anything, except the ability to have less, with no real benefit to doing so.
Gentoo has its strengths with respect to control in other areas, such as not having so strong a policy on how the system should work. One thing that irks me about some binary distros is that they really only work well if you do the default install. Gentoo isn’t like that. But it’s not the USE flags that do that. The USE flags are to pull in n00bs who think they are so cool.
Ah, now you’re just being unreasonable. Do you always react this way when people disagree with you?
“Why don’t you just write your own OS and software stack? I mean, do you really want the guys at Gentoo deciding what kind of USE flags you get, like you’re a pig feeding at a trough?
Or how about build your own hardware out of transistors and wires since we don’t want some guy at IBM telling you how to make a computer?”
I don’t have to do that. I’m perfectly happy with Gentoo’s “front-end” to ./configure utility. No need to resort to ridiculous hyperbolizing in order to make a point, wouldn’t you agree?
“Seriously, this line of thinking is insane. WTF does it matter if MPlayer happens to have some code to do encoding, which you yourself might one day need to make use of???”
Yes, that would be the day when I enable the “-encode” flag and re-compile MPlayer, thank you very much.
“Or does it just make you feel l33t that you can compile MPlayer without encoder support. I suspect it’s the latter.”
Do not ever assume; otherwise you’re liable to make an ass out of u and me. I’m a reasonable person — must you be unreasonable, resorting to vapid, pointless and uninspired ad hominem attacks to make your point?
“Because USE flags really don’t give you anything, except the ability to have less, with no real benefit to doing so.”
Not “less”. More like “control”.
“The USE flags are to pull in n00bs who think they are so cool.”
I haven’t met too many “n00bs” who care about having a full control over their Linux installation, so I’m not even sure what exactly you’re talking about here.
Why don’t you just write your own OS and software stack? I mean, do you really want the guys at Gentoo deciding what kind of USE flags you get, like you’re a pig feeding at a trough?
You’re really acting like an ass here.. >_> So, do you claim Gentoo doesn’t give you more control over your software than binary distros or not? If you indeed claim that then you’re wrong and if you don’t claim that then what the heck are you complaining about?
Seriously, this line of thinking is insane. WTF does it matter if MPlayer happens to have some code to do encoding, which you yourself might one day need to make use of???
I myself usually compile MPlayer with support for everything possible just because I use it for encoding and decoding stuff.. But there are other use-cases for USE flags: I for example have omitted support for Beagle on my GNOME desktop. I did that just because I don’t want Beagle consuming memory and CPU time needlessly when I won’t use it anyways. The same for Qt libraries: if something is compiled with Qt support then it’ll just unnecessarily waste memory (I use only GTK+ apps)
And then there’s the thing about compiling IN support for stuff that isn’t enabled on binary distros.. Most often they haven’t enabled everything possible or something which I happen to need. Under Gentoo I can compile such features in and be done with it. On a binary distro I’d have to first install compilers and all the necessary -dev packages and then compile from source..
Because USE flags really don’t give you anything, except the ability to have less, with no real benefit to doing so.
I already explained this. Either you understand or you don’t.
Does it really matter? In most cases, shouldn’t software just be compiled with all the features it was designed to have? In those cases that it really absolutely doesn’t, you can always rebuild from the source RPM, which is far more configurable than silly USE flags anyways.
And why would you ever build software WITHOUT support for something unless there’s a security risk, or you only have 20 MB of disk space?
First of all, what’s the point in having ALL possible features compiled-in when you know you will never ever have any use for those features? It’ll just waste memory when running that app in question! And no, SRPM is not “far more configurable” and it’s a lot bigger hassle than just doing emerge.
As for the question why would I want to build something without the support for everything possible…well, as I already stated I just won’t have use for everything possible! And I also noted that it’ll just waste memory for nothing..
Besides, when compiling from the source you can also INCLUDE features which are not enabled in your precious binary distros..One such feature could be support for proprietary file formats which you won’t get in your distro unless you find a repository with such and know how to add them to your package manager..
There are so many people in the Gentoo community who seem to have these insane obsessions, like only using GTK+ programs because the 10 MB of Qt libraries is too much, or using ancient underpowered Window managers and text-mode only programs because they can’t stand having more than 5% of their 4 gigs of RAM filled. I think some of those people need to go into therapy.
Ever heard that people might have differing tastes for things…? I know it might sound just amazing and unimaginable but it does happen :O I use GNOME myself but I don’t use any Qt apps and as such have also removed support for Qt from everything on my installation. Why? It’s not about disk space..It’s just that GTK+ and Qt just doesn’t mix and match nicely together. Qt apps feel really out-of-place on a GNOME desktop and I hate such. (And no, I don’t have 4 gigs of RAM on any of my machines. Actually, I don’t have even 1 gig..)
Maybe the author failed to point out that Ciaran has been kicked from Gentoo, because he constantly bring up flamewars and _hate_. As you can read in this (biased) “interview”, the thing that comes up most of the time is “other sucks!”. Some kind of people admire that and want to follow him, for some reason.
He has good ideas and stuff, but due to his ego and communication problems it isn’t going far. And by the way, by good idea, I mean only “good ideas”. Nothing revolutionary or truly world-changing here.
I’d rather keep the current ebuild layout we have right now and fix portage issues than redo the whole thing with some confusing new names.
I am doing debian as well as gentoo packages and up to now (including the whole gcc-based toolchain), I can tell you, gentoo packages are such a joy in comparison. They’re simple, they just work. I wouldn’t want to change that.
Finally, what drive people away from gentoo is usually that:
– compilation takes time
– configuring everything everytime is nice but after a while most people like to have everything preset (like ubuntu), me included
What keep people on gentoo:
– its simple and works
– you can tinker with packages so easily
– very customizable and flexible in its package management
– you can build your “own distro” without it being as sparse as LFS.
I run gentoo on my servers since 2003 and I’m still happier with that than any other distro. I run Ubuntu on my desktop.
Don’t forget another reason some people left was quality assurance and stability. Its not an enjoyable feeling having to hope and pray that an emerge -u world would not break your system. Another point being that with most of the current stable releases of apps were frequently masked in portage (I’m sure those weren’t you’re packages) a stable system was not all that up to date.
Tell me about it. You pretty much can’t do an emerge world anymore without having to manually inspect what it’s going to install. I haven’t upgraded to expat-2.0 yet because I just don’t have the time or the patience to spend hours or more with an otherwise broken system trying to make it through the upgrade. Also, the new Xorg stuff is broken and still isn’t fixed, so I’m stuck on 7.1. It works fine in Fedora. Broken in Gentoo. Can’t get GIT to build. And much more crap like that. It’s a maintenance nightmare.
What about the hacking of Debian servers? They’ve been compromised more often. Or the updated goofs at Ubuntu, or the constant breakage of binary interfaces in Fedora?
If users left a solution because of every little thing that went wrong, we would still be waiting for lightning to roast the mastodont we brought home.
Gentoo got other problems – used it for years but things are gotten too screwed up and a portage replacement ain’t going to fix it no matter what languague it is written in.
To recap:
I used Gentoo back in the other century because it would work with a lot of multimedia formats other distros wouldn’t have a go.Legally? – well troubling at best but nobody sued them yet so what?
Commercial distros can’t do that because they have a business (as in commercial) that has assets – clear enough?
Anyway – ever after Gentoo started to grow there was no QA anymore.If you got a working system or not simply depends on the apps installed.Since I tend to have rather a lot of apps installed my system got borked more often more frequent (being w/o compiler,Gnome2,expat2 anyone??)
Systems smashing bugs being open for month being the norm plus an administration that doesn’t know the first thing about what they are doing I decided to get the hell out of there.
Sure – you can use it for servers if tracking all the security stuff personally sounds like fun or/and somebody is willing to pay you for it.
USE flags and compiler flags?
Give me a break – the guys at gcc don’t know for sure if you bother to read the doc’s.
How I am going to find the magic combination that gives me the 20 percent more power to justify the maint cost?
… the Meta-Distribution design of Gentoo was what I liked and enjoyed when I used it. Being able to pick and choose, mix and match, from the ground up the exact combination of apps that are installed can be a very powerful thing. Especially when each of their many options and features are fully customizable to suit your needs. With binary distros its not that easy as you are left at the mercy of each package maintainer. Not that there is anything wrong with them, but each distro like each individual is different and to get what you want out of any given one will require a bit more effort.
There is something to be said for the convenience of have a binary system up and running quickly. But if you knew exactly what combination of apps you needed for the system you were building or if you needed only that one feature which most distros would compile disabled to cater to the greatest common denominator, Gentoo much more readily accommodated you intentions.
Another opportunity that the promise of a Meta-Distribution like Gentoo offers is the ability to closely follow the Upstream Packages because ebuilds translated into not much more than build instructions. And if a culture for Quality Assurance, better bug reporting and pushing patches upstream were to be adopted, I know developers would enjoy the helpful and constructive feedback instead of being limited by the resources they have available to them.
Users would see the benefits across the board because the more problems get fixed up stream, the greater the cross section to receive the benefits. As it was mentioned in the article it will be a very good thing when someone can do “a script that automatically checks the packages they maintain against upstream’s homepages to ensure that the latest versions are in the tree.”
And yet you can almost always get later versions of software on Fedora than you can on Gentoo. I run a partially ~x86 system and there’s still stuff that I can’t even get, such as Eclipse 3.3, which has been out on Fedora for months.
Well, I run Gentoo as my desktop machine, and it works just fine for that purpose. A few points:
(*) Occasionally a package will not compile properly. This is annoying. Most of the time, however, the fix is either obvious or it is a fairly obscure package. The big stuff works fine for me most of the time; or at least, it fails rare enough that I haven’t switched to Debian, which is one of the other distributions I run here (Debian on my router and fileserver, and Kubuntu on another desktop). Inasmuch as there is a population of users who have problems with portage, I’m not one. It works well for my purposes. The only thing I slot is GCC so I can compile QEMU. And that works effortlessly. I just select the version of GCC I want (3.4.6), compile QEMU, then switch back (4.1.2).
(*) Complaining about compile times is rational if you have an older, slower system. It’s not something I ever think about. Emerging a typical package takes a few minutes for me and the big stuff I do before I go to sleep for the night. I hear people complaining about this whenever Gentoo is brought up. Fair enough, I guess. It doesn’t bother me. It’s not like I am installing 10 new packages every day of my life. Setting up a Gentoo system *initially* takes a little bit of time but on a newer system, thats about 16 hours of compile time, and about an hour of actually sitting in front of the computer. Come home from work, configure, set up everything, then recompile everything while I sleep and work the next day, come home, and it works. From there on we’re talking 1-10 minutes per package, with some obvious exceptions (and some of the big stuff does have binary alternatives, like openoffice).
(*) The benefit of USE flags is, for many users, tied up in the compile-me nature of the system. This isn’t a “feel good” ricer thing as some claim. The fact is, if you are running a system that compiles, you don’t want to compile any more than you have to, and have any more updates than you have to (and yes, it’s fair to ask yourself whether you want to compile at all, and whether Gentoo is right for you).
While some people are really obsessive over what exactly is installed on their system and therefore make use of USE flags to keep their system lean, that’s not my trip. I start out with a minimal number of USE flags until something doesn’t work the way I want it to. Often, an ebuild will warn you if something is missing. Otherwise, if I install a program that is missing an option, I look in the USE flags first and add them as I need them. Not a huge deal.
(*) Gentoo’s popularity – I don’t really know what to say about this except that it’s not 2002 and Gentoo is no longer the flavor of the month or the OMG h4x0R distribution it had a reputation for being (and never was, by the way). Any users who ever installed it to be “l33t” have since jumped to other distributions. What’s left is a fairly solid userbase. The forums are still very active and things still work well, at least on my system. As I’ve stated before, I would have no idea that Gentoo was having any kind of problems if I didn’t read articles saying so. On my system, Gentoo is stable. It doesn’t feel aging or old or outdated. All the new stuff I want is there, and I really wouldn’t be gaining much by switching, based on my personal needs.
(*) I don’t know Ciaran McCreesh and while I’m definitely in favor of alternatives and advances, I seriously wish he didn’t have such an abrasive personality. That does hurt development – it puts people off to him and therefore his accomplishments. Every time I read anything by him, he comes off as unprofessional, and a bit of an asshole. Everything I read about his code says that its great. This combination is a shame. I’ve not tried Paludis yet, but mainly because I can’t find a compelling reason to switch over such a fundamental part of my OS yet. If I was a developer, maybe I’d feel differently. He’s not the only one to have stated that portage is kind of patchy and hacky. It looks and works pretty stable for me, and that’s the only standard I have to judge (and I’m running amd64, too).
Anyway, the reasons to run or not run Gentoo are the same as they ever were, but Gentoo is hardly a dying or decaying distribution. People keep suggesting that and it’s simply not true, at least, not from my perspective. It is not flavor of the month anymore, nor is it some kind of “prove yourself” distribution. I started with Gentoo as a complete newbie and got it installed by just following the directions, and almost anyone can. I stick with it because it works, and works well, for the KDE desktop system I run. I don’t represent it as being great for anything else, but for me, I have few complaints. I still think it’s worth trying out if you’re shopping around for a distribution. Just my two cents.
Portage was nice, and at one point, I was running Gentoo on my servers, desktop, and laptop. It got to a poing where I just needeed to get stuff done and not wait for hours compiling software. Now I use Debian Testing.
I’ve always wished for a binary Gentoo distribution, and a much saner package management system. Sabayon might be the best option, but it is not there yet.
rpm and deb do their job, but someone has to make them.
If you want to use firefox and openoffice, there are billions of rpm available for you to download ans use. Now let say you want that software that is available only as a tarball. I can make an ebuild in 1 minute to download, configure, make and install. No need to checkinstall and complicated stuff. My software is tracked with portage in one minute and if I want to upgrade to the latest tarball or with svn, it’s just a file to edit and 10 seconds.
I’ll stick to portage for now because there’s nothing in Paludis I need and python is faster to mess with.
I switched to gentoo after LFS about 2 years ago because I made some scripts to track some of the stuff I installed on LFS and it became more and more difficult to maintain until I realized that eventually my scripts were just trying to do what portage was already doing so much better. For me, gentoo was just what I had dreamed. I switched and am having much more fun and less troubles thanks to portage.
Gentoo is not for everybody and for everything. If you don’t get it, you probably don’t need it. I use slackware for firefox and openoffice and I have mandriva installed for some other uses. Gentoo is ideal for tweaking when you need something really specific, for developping and for documentation and certainly a lot of other different things.
That’s the first distro where my ralink card worked.
On slackware it didn’t work, so I watched the ebuild and realized the driver was needing a patch to work. Patched the source and voila. Portage is transparent. It’s a good documentation tool as well as a very powerful package manager and much more fun than any other package manager I know.
It is also the best way to legally use and track unpackaged proprietary software.
I know it’s fashionable to have a dig at Gentoo users and ricers, but when you look at Gentoo, what’s wrong with it?
I used Gentoo often for some servers about three or four years ago, and they were great. Mostly I just used all the stable packages in x86, occasionally I had to go ~x86, but things were pretty easy to work out. I also remember when we used the old Linux threading model, and I can remember upgrading one server to NPTL with nothing happening apart from having to re-emerge Postfix – and it was still running fine. I can’t think of too many other distributions that can do that. None, in fact.
Gentoo is also great if you want to keep most of the rest of your system stable, whilst being able to upgrade easily to newer piece of software. Upgrading Ruby and Rails is a case in point, and if you want to do this on a binary distribution then you’ll have to either be lucky enough to find a repository or you’ll have to compile it yourself. You’re then going to have to hope that it doesn’t pull in a ton of other upgraded packages you don’t need either.
When I moved from Gentoo to Red Hat/CentOS and other binary distributions of the same type, I found this out. I also found this out when I installed Red Hat/CentOS for the first time. I did a default server-only install, and was absolutely befuddled that my /usr partition was chock-full of pointless dependencies and complete crap. I mean, I don’t mind the odd dependency here and there, and you find out some of them are useful, but we had dbus -> Pango -> Cairo etc. Dbus I can just about understand, but what the hell is Pango and Cairo doing on a non-GUI server system?!
Things have come to such a head, I’m now considering Gentoo again.
I was drawn to gentoo because it was said, at the time to be really hard, and I thought I was up for the challenge. I learned how little I really knew about unix and Linux, and watched that knowledge explode as I wormed my way through getting a fully functional system with what I wanted on it.
What Has kept me with Gentoo is that:
1) Once you get it set up like you want it no pre-built distro can offer you the same
2) It is really easy to install new software.
3) the development environment is (of necessity) fully installed by default.
Although I have installed Ubuntu systems for friends and family, and I’ve tried other distros, I can’t find another one that handles dependencies as well. This despite the occasional breakage. If paludis can help me avoid some of the pain of incompatible upgrade cycles, I may give it a whirl.
I had a 18 month fling with Gentoo, what draw me in was the portage system, but ironically what threw me out was the same portage system.
Paludis points to many problems within portage, and I have first hand experience in some of the fundamental problems with the tool. It didn’t seem to matter if you tried to not get your hands dirty, you almost certainly did anyway.
Some times, without notice portage would fail to install a peice of software after an upgrade. Paludis lightly touches on points about buggy software and the fact that those bugs won’t be found until you hit runtime, instead of compile time. This is also reflected in the fact there is no test suites (as stated)
I love the prospect of Paludis written in C++, may take a look at it.
What broke the camels back for was when one day I wanted to upgrade to glibc 2.5, portage simply wouldn’t. (errors, failures, dependances etc) I tried for months to get it to upgrade. I had invested significant time into Gentoo as a server build so it was very upsetting to get rid of it.
Maybe Paludis can save Gentoo? In the end I installed Ubuntu.
Pretty similar with me. I had an 18 to 24 month fling with Gentoo. What drew me in was the whole concept of compiling everything on my own system for optimization, but ironically what threw me out was the whole concept of compiling everything on my own system for optimization.
After using Gentoo for a while, I just got sick of those multi-hour compiles when a new Firefox + Thunderbird update was released. And the fact was, I could not perceive a performance advantage. I don’t care if there is some microscopic performance advantage that requires benchmarking tools to even be able to verify. The real world, day to day usage proved to me there was no performance advantage.
Plus – as I got more interested in OpenBSD, I became much more keen to the notion of using precompiled binaries. Keep your production system *clean* and *lean* … free from compilers, free from source code, and so on.
Some of the points that really made me change my mind about Gentoo (and compiling in general):
* In the vast majority of cases, you won’t see any performance advantage. An i686 optimized version of notepad.exe isn’t going to “perform” any better than an i386 optimized version of notepad.exe for the reason that most applications spend most of their cycles waiting on user input.
* In the event that an application does benefit from CPU optimizations (such as the Linux kernel), the distribution will provide an optimized version for you.
* When you are running your own compilations, *you* are the only person testing that program. When you run the same binary that the other 1000’s of Debian/Ubuntu/RedHat users are running, you share the benefit of getting updates to that binary should a bug or security issue be located.
I could go on, but those are the key points.
I’ve pretty much done a 180 – I now have a love affair with binary systems for any kind of production. (Including Desktop systems, workstations, and especially servers.) I read a great line in my Absolute OpenBSD book … it goes something like this. “Hackers love it when you have a working compiler on your server. It makes their life that much easier.”
Wow you sure got Gentoo totally the wrong way :O Gentoo isn’t about optimizing everything with some magical compiler parameters and somehow magically having a whole lot faster distro than everyone else…It’s about being able to customize everything for specifically yourself and your machine. I have been using Gentoo for years and there just simply isn’t anything that could draw me away from it. F.ex. I can install MPlayer with exactly the features I want, but on the binary distros you’re stuck with what they provide you.. Oh, and just to say something about those optimizations: no, optimizing and tweaking some GUI app won’t mean much but if you’re for example running Apache…..Having Apache optimized for the hardware it is running on will benefit a lot more. I instruct gcc to optimize my server software for max speed whereas I instruct gcc to optimize my GUI apps for size. The smaller size the binaries are the faster they load and less memory is used, you know? But on a binary distro you don’t have that kind of a power.
EDIT: Just thought to add here that I see it kind of stupid to be compiling new software every day…I usually sync portage tree once every two weeks and update everything then. I’ll just leave it compiling them while I’m out of home or sleeping.
Edited 2007-12-16 11:36
Right. IIRC if you just install Ubuntu, it doesn’t even play DVD or even mp3 (last time I tried) with its media player(totem)…
In Gentoo, I can even build desktop systems that fits much better suited for me than any other distro, because my media player WILL play everything I want it to play…(dvd, flac, mp3) not like stripped down half useless thing just because the distro maker’s decision about license or whatever there is about it that won’t let you play the damn file you own…
And on binary distro these problems will start causing 3rd party repos to spawn here and there, having them say ‘we have the more working and leading edge apps’ and will start to lead into further problems, since those are run by small amount of people and will not get the proper maintenance as much as the official repos.
I just don’t know when people say ‘Gentoo is going downhill’. It might mean ‘not getting as much publicity as it used to’, because people know Gentoo by now and hype about source based distro and compilation magic is over… IMHO, it’s still the hottest distro out there.
I may be insulting but other ‘easier’ binary distro will cause random newbies to start posting so much questions and answers on the net that google results tend to bury the real technical questions but tend to show random newbie posts that make you sigh… but when it comes to gentoo, forum/wiki/just plain google results are full of technical helpful documents and that’s another part that I like Gentoo about. gentoo-wiki.com is a great stuff.
Right. IIRC if you just install Ubuntu, it doesn’t even play DVD or even mp3 (last time I tried) with its media player(totem)…
If you just install Gentoo it does absolutely nothing. Do get it to play dvds, flac and mp3s you have to install a media player and the correct codecs. In Ubuntu the media player comes pre-installed by default and all you have to do is add codecs for whatever you want. And adding those codecs is very trivial, certainly as easy as using portage and probably much easier. Claiming that getting a media player to play mp3s is easier with gentoo than Ubuntun, simply isn’t true.
(another ex-gentoo user, also an ex ubuntu user)
Well put, WereCatf!
I’ve been using gentoo for more than two years now and I have no intention to leave. It gives me the freedom of LFS without the administrative hassle
Oh, and why bother with daily compilation? I use glsa-check mostly, and every now and then an update of world (one can usually skip the glsa-check if you update more than once a month).
you do know you can install binaries via portage as well as compile right? for those big apps if you don’t have the power to compile (or time) just use a binary.
[quote]
I’ve pretty much done a 180 – I now have a love affair with binary systems for any kind of production. (Including Desktop systems, workstations, and especially servers.) I read a great line in my Absolute OpenBSD book … it goes something like this. “Hackers love it when you have a working compiler on your server. It makes their life that much easier.”[/quote]
You could always build the packages elsewhere, then emerge –usepkgonly on the production server.
I followed the same path you did… Gentoo was my introduction to Linux on the desktop (2003-2005) and I ended up giving up on it not because of Portage and breakage, but that setting up things like sound servers and automounting was just getting to be a major hassle, that and the pressure to keep updated and compiling all the time. Went to Ubuntu, and nearly made a fool out of myself trying to tweak everything the Gentoo way…
On the other hand, at the same time (and for a few months after I switched my own machine) I was maintaining a very old, very slow computer for general use around the department. It was a Pentium II 333 MHz machine, but with a bit of care it was usually running faster than the 1.8 GHz Pentium IV computers we had running Windows XP.
It’s not the compile-time optimizations that made it fast, it’s that Gentoo allowed me to be very selective about what software I installed. I used a kernel that only had built-in drivers for the hardware in the machine, no sound system, XFCE 4.2, Firefox, OpenOffice (which was admittedly dog slow) and very few other things. Gentoo is great if you know exactly what you want the computer to do (and probably even better if you can just set it up and forget about it)
The other thing I will say for Gentoo is, if you want to compile a newer version of a program (say, for beta testing or because you need it and it’s not in a repository), it was much easier to do so on a Gentoo system, since you were guaranteed to have a compiler and all the header files for everything on your system.
I hope Gentoo gets out of its current slump (granted, since I haven’t heard much about it lately it must have abated or entered a less-newsworthy phase), and I hope Paludis works. I remember reading about Paludis back when I used Gentoo (so this is not a new thing either), and I remember Ciaran being… well, acerbic and opinionated, arguing with the other developers. Hopefully things have changed for the better since then.
Heh, these days setting up sound servers and automounting is done for you quite automagically (well, with the proper use flags that is :p ).
But I can remember in the beginning. Back then automounting worked rather randomly.
gentoo is quite newsworthy but the very rolling structure of gentoo means releases don’t make much sense and as such there aren’t any of those to talk about. But that doesn’t mean gentoo isn’t taking big strides constantly. It is just done without fanfare.
The Fedora and Ubuntu-devs tend to scream out loud everytime they fix a detail, gentoo-devs just post a reply in a bug-report when a detail is fixed. And then we all rejoice
I had a 5-year Gentoo phase, starting toward the very beginning, in late 2001, before the 1.0 release.
I wasn’t drawn by the source-based aspects, but rather the meta-distribution aspects. I thought that Gentoo was the heir-apparent mother distribution to succeed Debian and become the technical underpinning of myriad binary distributions–the standard make-you-own distribution toolkit.
The Gentoo Forums were legendary. The community was vibrant, full of knowledgable and helpful people. The project had a unique vision and direction. Then Daniel Robbins decided to cut the project loose to fly on its own. It was a slow, painful decline from that point on.
The binary distributions based on Gentoo never materialized until Sabayon, which isn’t really a binary distribution of Gentoo so much as a Stage 4. Portage wasn’t scaling well with the explosive growth of the tree, and although its performance improved, progress was sporadic and transistions were often complicated.
It was death by growing pains, predominantly because Gentoo didn’t offer a binary derivative to appeal to the crowd that thinks they’re hobbyists but really just wants a distribution that makes a bit more sense under the covers. Gentoo attracted a userbase it didn’t want and couldn’t satisfy.
Gentoo is a great idea that never really fulfilled its promising potential, and the Debian/Ubuntu ecosystem has really picked up the slack. I wish my Ubuntu systems were really Gentoo under the covers. I wish I had emerge and rc-update. But it’s not worth the effort anymore to deal with Gentoo. Ubuntu is “good enough”.
And the gentoo view is that Ubuntu is an african word meaning ‘Gentoo is too hard’
gentoo is still among the biggest distributions and is still moving forward. But the distribution and the userbase have matured and become boring in the eyes of the “leet” persons. But the rest of us just want something that works and does what we want it to, when we want it to. And gentoo does that.
“It was death by growing pains, predominantly because Gentoo didn’t offer a binary derivative to appeal to the crowd that thinks they’re hobbyists but really just wants a distribution that makes a bit more sense under the covers.”
This just doesn’t make any sense: why would Gentoo need to offer a binary distro based on itself? That’s like saying that Microsoft failed because they never opened up their source code. Microsoft isn’t about opening up its code and Gentoo isn’t about being a binary distro.
Because there’s an obvious demand for a binary distro based on Gentoo. The Gentoo Project doesn’t necessarily need to be the steward of such a derivative. Think more along the lines of the Debian/Ubuntu relationship. Genbuntoo, if you will.
Sorry, but if you want Gentoo you will have to build it the old fashioned way-the way it was meant to be. You are defeating the core purpose of Gentoo with this idiotic idea of Genbuntoo.
Dammit, the original poster already explained this and you still cannot parse his logic. If you want *buntu install THAT!
“Because there’s an obvious demand for a binary distro based on Gentoo.”
Umm… But Gentoo isn’t a binary distro. To take full advantage of Gentoo’s features, the derived distro would _absolutely_ have to be source-based. How can you have the awesomeness that is conditional compilation in a binary distro? I mean, think about this — the package in question has about 50 use flags, which means, that there are (2 to the power of 50) ways to compile it, right? A binary package maintainer for such distro would have to maintain an insane amount of package variations — like a quadrillion or so.
My point is: what exactly do you mean by “Gentoo-based binary distro”? Optimizations? Gentoo isn’t about CFLAGS, really. USE flags? Fine, but how can one implement every possible USE flag configuration for a given package?
You’re missing the point. In a binary distribution based on Gentoo, the packages would be prebuilt with a default make.conf. The user would have the option of building from source with custom CFLAGS/USE if they wish, but most users would be fine with the binary package most of the time.
It would be just like regular Gentoo, except you have the option (possibly the default) to install binary packages built with fairly conservative CFLAGS and fairly inclusive USE flags.
If you’re familiar with Arch Linux, imagine more of that kind of binary/source hybrid packaging concept but based on Gentoo’s ebuild tree, Portage/Paludis package management, and the rest of the Gentoo platform.
Gentoo does do this, to some degree. Some of the bigger packages (such as openoffice, thunderbird and firefox) have -bin packages you can emerge, which are prebuilt binaries. The # of binary packages in there aren’t that high, but the concept does exist.
Yes the portage system does have a lot of issues. But the .ebuild system works out pretty well.
The issue I have with Paludis is that its complicated to use, unlike emerge. And once you start using paludis, you cant go back to emerge/portage. It doesn’t sync what you have installed / updated on the system.
As far as it said it built fine, and doesn’t run issue(which I haven’t had) you can turn on build testing.
And the newer emerge/portage system has gotten much better at checking for a lot of other misc issues. Like testing to see if the current emerge will overwrite other packages file.
Another big thing I see a lot of people bitch about is when theres a major update to a critical package like Apache. If they where just to check the front page, the dev’s put out notices weeks in advance.
Yes emerge/portage does need a lot of help, It just needs to be redone, ether c/c++ or just stop using flat files for everything. Which is the issue with me, its dog slow, even on a 10K RPM drive. Use sqlite damn it!
My next box will be a mac, but ill always have a Gentoo box around. And I use Gentoo at our colo, need all the performance possible, and RHEL/SuSE/CentOS just doesn’t cut it.
3.75 years of Gentoo. http://gentoo-install.com
I use Gentoo at our colo, need all the performance possible, and RHEL/SuSE/CentOS just doesn’t cut it.
Do you have any sort of benchmarks as to where Gentoo gets things done, but RHEL/SuSE/CentOS doesn’t cut it? I’ve heard plenty of people make this claim, but no has ever substanciated it.
I actually did my own bench marks between Gentoo and Red Hat a few years ago, when trying to decide which OS to use on a server, and found no performance differences at all, once I made sure all the software was of the same version and was configured the same.
I actually did my own bench marks between Gentoo and Red Hat a few years ago, when trying to decide which OS to use on a server, and found no performance differences at all, once I made sure all the software was of the same version and was configured the same.
Care to enlighten us how did you actually benchmark and what?
A bunch of file transfere tests (samba, nfs and ftp) timed with a stopwatch. Some Apache benchmarking tool that I can’t remember. Some SQL queries that we used a lot, run on a copy of actual data from our database. There may have been something else.
If I recall correctly, gentoo won one of the benchmarks first time around, but that turned out to be simply because it had a newer version of some program than Red Hat. Once I installed the same version on Red Hat the difference disappeared.
You probably know this already, but what helped me a LOT was making a separate partition and format it to ReiserFS for /usr/portage. The difference is huge. Now portage isn’t particularly fast, but it’s not really slow either. Hope this helps you or someone else.
Yes the portage system does have a lot of issues. But the .ebuild system works out pretty well.
The issue I have with Paludis is that its complicated to use, unlike emerge. And once
I love the prospect of Paludis written in C++
I still remember how underwhelmed I was when hearing about this the first time. Before condemning the choice of language, I tried to find out why they chose C++ to begin with. This is what they say on their FAQ:
Because we don’t have the time or the manpower to write it in C.
However, as python would have allowed them to write Paludis ridiculously faster than using C++, that line of reasoning seemed questionable. Especially as emerge was itself written in python. Poking around the website, I also came across this item on their list of features:
Low dependency bloat. No Python, no big external crypto libraries.
So I assumed the “bloat” aspect was another rationale. But given the advantages of Python, I find it hard to take that argument seriously. Apparently, McCreesh now also said the following about scripting languages in the article:
The tradeoffs, of course, being a much lower level of static checking, a much higher risk of buggy code slipping through and much higher testing requirements to meet release standards …
Since when does C++ deliver reduced risk of buggy code slipping through when compared to, say, Python? This fantastic claim seems to contradict common sense. Choosing the right language for the job is important, and C++ has always seemed to me as a horrible choice. Everything they say to rationalize their choice simply acerbates this impression.
Maybe just love C++ like me?
Maybe its all about having fun with what you are good at?
There is no need for people these days to stand idle and have a language pissing match – there is way too much choice these days, so you just pick what you think will do you well at.
I congratulate the authors of Paludis because they have done something that clearly they love without compromising on their dream to improve Gentoo. Even I can’t make that claim
You catch a great deal of errors at compile time.
You can compile python source.
the simple fact is, python allows ALOT more weird errors to happen because it doesent require as much from the developer as c++, and as stuff builds up, its just harder to know wtf is going on, if the application is written in python, and someone made an ugly mistake.
“Since when does C++ deliver reduced risk of buggy code slipping through when compared to, say, Python?”
The curse of C++ is to forever be judged negatively by people who have no idea what the language is about.
C++ is all about static typing and catching as many error as possible at compilation time (as in, many things that would not work or lead to bugs shouldn’t compile).
Of course, since it’s backward compatible with C it also provides many ways to force your bad code through and many unsafe legacy alternative ways to do things (pointer arithmetic, c-style arrays, managing strings as manually allocated byte arrays etc.) that people incorrectly consider the “normal” way to do things in C++.
If people stopped considering C++ as “C with additional stuff” and teaching it as such, maybe more people would see the language for what it is.
You have a problem with malloc? You probably believe such low level thing as bitwise AND (&) and OR (|) and bit shifts are bad? Let me guess, binary and hexidecimal are bad too? I think most C++ zealots are insecure about low-level computing concepts and want them to go away.
You have a problem with malloc? You probably believe such low level thing as bitwise AND (&) and OR (|) and bit shifts are bad? Let me guess, binary and hexidecimal are bad too? I think most C++ zealots are insecure about low-level computing concepts and want them to go away.
Please don’t act like an idiot.. The parent never complained about malloc nor implied anywhere that doing bitwise operations is evil.. >_< He just probably meant that these a lot cleaner ways to handle strings than doing mallocs and managing the memory yourself. You do realize that it makes the code less readable and produces more code..?
PS. I happen to use C myself but that’s just my taste. I still don’t attack C++ users like you do.
C++ is fine, but I get sick of the attitude that we should hide everything and use natural langauge. What I really hate is when people get proud that they’ve obscured something.
In case you don’t follow their logic — they’re headed for computing without knowing what binary is. That is their goal. You’re an idiot if you don’t see that they would be proud for computer scientists not having to know binary. That is their goal, in a nut shell.
Of course it will catch as many error as possible, but when you compare python with C++ (or any compile vs runtime language), it’s not accurate to say that all the errors you’ll find will be somewhere undetected in a python program.
Just to bring one, there’s many type in C++ that needed to be check where in python it doesn’t matter at all. Like integer, in C++ the compiler need to check for int, long, unsigned, etc. In python, who cares? it’s an integer. If you do some mixing in C++, the compiler will complain, but these errors are irrelevent in python. So as many errors in C++ are far less in python. (but I agree that some will not be check)
At the end it is a matter of design and the quality of code. Bad python code will end on error, bad c++ might throw a buffer overflow.
the first problem for portage that he said is :
I think this is the real issue. Not C++ or Python or whatever.
Wow, you guys are missing out :-). What drew me into Gentoo was portage, and what keeps me using it is portage. Yes, Gentoo has had some rough times but it works damn well on this workstation and my server. I think Gentoo will be around for quite a while longer no matter what others say.
I certainly hope so!
I’ve been with Gentoo pretty much from the beginning and it’s the perfect distribution for me.
Nothing else comes even remotely close.
I just love being able to specify exactly which optional features of a package I need and especially which features I really don’t (welcome to the power of USE flags).
Compile times should be of no matter on a fairly recent system and even if you need two days on older hardware it is worth it in my opinion.
OF COURSE it depends on the actual scenario and in what way exactly the computer will be used.
Not many other distributions can give me the freedom Gentoo does while still providing me with very easy to use tools to manage that freedom.
Gentoo can be as minimal or as bloated as you’d like it and I love it!
Edited 2007-12-16 06:25
but you’re the guy who’s running gentoo on a server, why should we trust you?
(the flaw in this argument lies in the possibility that kev009 is so leet that he keeps a gentoo server completely stable.)
(otherwise it is a pretty valid argument.)
Yes, Gentoo is an excellent server meta-distribution. In fact, only the BSDs come close with their ports system.
Most people don’t know of the advanced package manager that is portage. I can compile the whole environment on a workstation, export the package dir over NFS, and install — get this — BINARY, yes — BINARY packages on the server. These packages can be TESTED on the build environment as well. Holy shit!
FWIW Easynews.com is almost 100% Gentoo servers, as are a few other businesses. Most folks think or expect Gentoo to be or fit one mold but it really doesn’t. It scales from the CF router in my closet to the servers in my rack.
You know, RPM can do everything Portage can do, but better and faster, and it also has really good binary support.
All the people who defend Portage like it’s some sort of magical advanced package management system really don’t have a lot of experience with actually doing advanced things.
And even so, dpkg/apt is lightyears ahead of any RPM based solution.
Yeah? You wanna back that up with some facts?
The only thing RPM distros have against them is low number of packages, although that is improving over time.
It’s been a while since I’ve uses an rpm distro, but can rpm provide a variable dependancy tree that changes based on how you configure a package? For example, if I want to install a gtk package that has optional gnome integration, can I easily disable that integration and not pull in a whole bunch of gnome dependancies?
Yes, because RPM does dependencies based on libraries and files, not based on package versions and numbers. In this fashion, that kind of thing “just works” without any special features.
Keeping a gentoo system stable is a non-issue. Just RTFM and follow it.
It’s also easy to break. Install all kinds of unstable software, and do emerge -uDN world on daily basis. That’ll do the trick.
You don’t have to be leet to make it stable. Just use common sense (that however may of course be leet in it self :p )
On my Debian desktop/workstation, I have the window manager I want, the browser I want, the e-mail client I want, the IM client I want, the music software, the office apps, and so on.
On my Ubuntu laptop, it all pretty much “just works”.
On my OpenBSD server, I have OpenLDAP setup how I want, I have apache, postfix, mysql, etc…
So … I have everything I want, setup how I want – and I didn’t spend an entire day doing “stage 1 / stage 2 / stage 3” installs – and I don’t spend hours and hours per week turning my CPU into a hot iron grill by way of compiling hundreds of megs of source code (thereby wasting enormous amounts of electricity and otherwise making the machine completely useless while it’s compiling)
So … what am I missing out on exactly?
You are not doing stage 1 and stage 2 installations anymore (which is sad – they are the funniest parts of installing gentoo).
More power to you that all packages in Ubuntu are compiled exactly the way you want them to be. Personally I must say that my needs are quite different, so none of the ‘buntus fit me. I’d prefer LFS but it’s a PITA to maintain, so I use gentoo (though Source Mage and FreeBSD were close competitors before I chose gentoo back in … hmm.. distant past).
Since all packages in *buntu are compiled 100% according your taste you are not missing out on anything. Consider yourself lucky.
EDIT: The computer is not “useless” while compiling. You can do all kind of stuff while the machine is compiling the packages in the background. You know, these days OS’es support multitasking. Your knowledge of gentoo is severely outdated.
Edited 2007-12-16 21:56 UTC
How soon after all those ‘apps that you want’ add a feature that you wanted to their stable release will you be able to get and make use of it?
I can’t believe they didn’t mention pkgcore. It is another attempt at a replacement for portage. I was expecting to hear a question about the differences between the two projects.
http://www.pkgcore.org/trac/pkgcore
Compilation isn’t cool because of optimization or the ‘cool’ feeling about it…
Obviously the optimization difference isn’t apparent in many cases and people usually don’t have enough knowledge about making the best optimization out of a package and packages do break if you over optimize.
The thing is, Gentoo make you select. Even debian comes with Exim pre-installed and syslog. Gentoo, you get to choose everything from the start, and the advantage of source comes when you can specify what option you can put on the compiling package. If you don’t need ipv6 support? take it out, making it more secure as to compile less code in a program and the dependencies get less and less as you keep stripping the feature out of packages you use, making it a very lean system with less packages to handle. less code, less bug, more secure.
IMO, it doesn’t matter what people use for desktop. It’s all about hobbies right now, if people want serious linux desktop in a work environment, they’d go something with a support, not Gentoo. So, basically, people complaining about new release of Firefox, Gnome, etc spoiling your afternoon, please choose some binary distro. OTOH Gentoo is really good on servers as you can make a minimalistic system of your choice without any bloat that is packaged by the distro maker. Besides, the point of having no major new version release (which can break hell loose in many distro) makes it a great deal for server admin to keep upgrading packages that they need to update and not fear the gigantic upgrade they might face one day.
Back on topic but portage really needs a fix soon, it’s super slow as hell to start with, but programs like ‘eix’ helps a great amount here already, but it’s been questionable as to why portage has been like that for years.
Portage is really good, I never had any compilation issues due to buggy ebuild or anything (except a few times in the past), I just type ’emerge PACKAGE’ and things always work out. The ‘PACKAGE’ names are usually very clear too, compared to other distro naming them with whatever prefix/suffix they prefer on a package, especially for libraries.
Though one of the complaint on portage being, all of server apps are all bundled as server/client app, instead of having 2 different packages to deal with server/client functions. (like, mysql installs both server/client, when distro like Debian has them separated in case you only need client etc)
Edited 2007-12-16 09:43
I agree 100 percent. But I would also argue that people usually don’t have enough knowledge to make proper use of USE flags either.
I set up a production server on Gentoo. I regret that now. There are other things to do,and daily emerges to keep it up to date are a scary proposition. I always stayed in the office until everyone left, so if it failed, it could be fixed. When you don’t do it daily, it gets even more scary. Now it’s been running solidly without updates for over a year… But I don’t think it’s going to survive an update now. I think Gentoo on a server is a BAD idea.
I set up a production server on Gentoo. I regret that now. There are other things to do,and daily emerges to keep it up to date are a scary proposition.
Why would you be doing daily emerges?
I always stayed in the office until everyone left, so if it failed, it could be fixed.
I’m sorry, but anybody who has to stay behind at an office and can’t fit what they want to do in a 9 – 5 day has something wrong with them. It doesn’t take long to emerge anything, particularly server software.
When you don’t do it daily, it gets even more scary
Why?
But I don’t think it’s going to survive an update now.
Are you doing an emerge world or something? Why in God’s name are you doing that? If you’re trying to update everything on a production server, no matter what distro you use, you’re an idiot.
I think Gentoo on a server is a BAD idea.
This has nothing to do with Gentoo, and everything to do with you.
Thanks for all the ad hominem, segedunumm… I never meant to offend you or hurt you. Sorry for that, I only wanted to be helpful and give some input on my experience.
Someone in this thread suggested daily emerges (world) to stay up to date…
I stayed because this server can’t be down when people need to work, it can’t break because an emerge causes problems.
The longer you don’t emerge, the more likely there are issues that can’t be resolved automatically. This is a ‘feature’ that all rolling release distros seem to suffer from.
Servers need security updates, and I realize that it doesn’t have to be an update world. Anyway, it’s working, I won’t touch it.
Thanks for all the ad hominem, segedunumm… I never meant to offend you or hurt you. Sorry for that, I only wanted to be helpful and give some input on my experience.
You’re not offending me. I’m just curious why you’re doing what you’re doing, because if you do that with any distro and not just Gentoo then you’re in for a rough time.
The longer you don’t emerge, the more likely there are issues that can’t be resolved automatically. This is a ‘feature’ that all rolling release distros seem to suffer from.
Well, the alternative is that you’ll have to take the server down and install a completely updated and new version of a distro and you’ll have to reproduce your install. Yes, rolling releases can present problems, but on a production server you should be leaving it as-is, and when you want to do a mass upgrade then practice on another non-essential server. Security upgrades shouldn’t present a problem. Have a look at what any emerge will actually install before you do it.
That’s what I wound up doing most of the time, upgrading what really needed to be upgraded.
I’m now deploying Debian on all my servers, and it’s easier to set up, and easier to keep up-to-date (also on dist-upgrades). It’s really more work to do that on a Gentoo server, but I guess for some people it’s worth it. I seem to manage fine on vanilla stuff, so it’s less hassle for me this way. And the binaries that I am running, are run by a lot of other people as well, which has its advantages.
I set up a production server on Gentoo. I regret that now. There are other things to do,and daily emerges to keep it up to date are a scary proposition. I always stayed in the office until everyone left, so if it failed, it could be fixed. When you don’t do it daily, it gets even more scary. Now it’s been running solidly without updates for over a year… But I don’t think it’s going to survive an update now. I think Gentoo on a server is a BAD idea.
I’ve got a server running Gentoo. It syncs the portage tree every week on Sunday via a script, updates any software I’ve deemed necessary to be updated and it also installs anything which glsa-check recommends to be installed. But it won’t update unnecessary software, I’ve set it up to do the compiling in the middle of the night on the highest possible nice level.. And I just haven’t installed anything unnecessary there like GUI software. And it’s working like a dream. Haven’t had to do anything manually for several months and haven’t had any issues with it whatsoever
That’s great. (I also only installed what was strictly needed.) I do remember having to etc-update after most updates.
My work place runs Gentoo on production servers too… and I myself runs a Gentoo machine for my daily analysis tasks. We have excellent runtime and we haven’t run into a problem yet.
The point is, anyone that runs emerge -u world daily without checking is just asking for trouble. How many people would actually let Ubuntu, Debian, or RHWS auto-update to the next major release automatically on a production server? People would say that those people are idiots.
For me, I never emerge any big packages until it’s released for 3 days after stable (let the early adopters install and found the issues for me). For kernels, aside from GLSA advisories, I only wait until -r3 before installing. For critical packages like glibc I wait at least a week before installing.
I always take a quick look before emerges. With the older hardware I run, a “emerge -u world” would probably kill my nvidia-driver for new every new update nvidia put out(for example, nvidia recently decided to change the 1.0.87xx versioning convention into the 87.xx conversion for no reason). So, Gentoo, like other distributions, requires a bit of care when updating.. just that the care is spread out over time rather than one big honking update.
Take a moment and buy a new server to test the updates and everything, this goes to every other distro as well.
Doing live update on production server is at your fault. I had CentOS with Xen doing dom0 and did a live update and it broke the hell out of it… Now I’ll never do it again.
I have never used Gentoo but, instead, I’ve found Source Mage GNU/Linux to be a mighty fine source-based distro. SMGL uses a package manager called “Sorcery” and it has a nifty feature called “cleanse”.
In SMGL you type “cleanse” and then it runs several checks on your system — I recall someone describing “cleanse” as the “fsck for installed packages”. It cleans the package caches and install logs and it checks that dependencies for all the installed packages are satisfied. Then it inspects all the installed packages for any missing or modified files/symlinks and it also checks that there aren’t any needed libraries missing.
http://wiki.sourcemage.org/Cleanse
If “cleanse” finds any problems, the Sorcery package manager reinstalls the troublesome package(s) and then “cleanse” checks them again. Most of the time this fixes things but if the problem persists after the reinstall, then “cleanse” just tells that the package in question is “hopelessly broken”.
So, my question to any Gentoo gurus out there is if this “cleanse” is specific to SMGL & Sorcery or if Portage or Paludis might have something similar?
The closest thing is probably revdep-rebuild.
It checks if any packages are broken due to missing or changed libs.
emerge takes care of package dependencies pretty much automatically so you should not really need a separate tool to check if something is missing.
If you happen to uninstall a package that is needed by something else then revdep-rebuild would tell you and the next “emerge world” would pull that package in again as well.
That’s what I can think of right now but there are probably different ways to do this.
EDIT: But I don’t think there is anything that checks if the installed files are really still there, except for libs.
Edited 2007-12-16 12:51
And for Paludis users, reconcilio is the revdep-rebuild equivalent
To me it sounds like a combination of revdep-rebuild and emerge –pretend depclean (don’t ever forget –pretend).
For me gentoo is 90% about USE flags.
I couldn’t care less about increasing performance through CFLAGS and stuff, I just haven’t found any distro that beats gentoo’s ratio of flexibility/ease of use.
BTW I haven’t had any serious problem with portage so far (maybe I don’t get my hands as dirty as others, or maybe it’s just luck).
Edited 2007-12-16 13:12
I think it’s an unspoken truth since quite some time in the Linux community, that Gentoo has gradually lost any kind of “relevancy” that it had in the early beginning?
The little perks that Gentoo offers are offered better by other distributions, in a less chaotic / unstable way.
Hmm, it is still among the biggest distributions though. It is just that no other distribution is so release-less as gentoo is, which again results in little news. Arch Linux comes close, and has without a doubt received some gentoo-refugees fleeing the former dev-wars.
But things has cooled down since then, and drobbins is still around in gentoo-land, though he isn’t a dev anymore.
“The little perks that Gentoo offers are offered better by other distributions, in a less chaotic / unstable way.”
I find this incredibly hard to believe. Can I install, say, MPlayer on one of such distributions with only those features of MPlayer that I need?
Maybe Gentoo is irrelevant to some people, but it is definitely relevant to people who care about what gets installed on their systems.
Does it really matter? In most cases, shouldn’t software just be compiled with all the features it was designed to have? In those cases that it really absolutely doesn’t, you can always rebuild from the source RPM, which is far more configurable than silly USE flags anyways.
And why would you ever build software WITHOUT support for something unless there’s a security risk, or you only have 20 MB of disk space?
There are so many people in the Gentoo community who seem to have these insane obsessions, like only using GTK+ programs because the 10 MB of Qt libraries is too much, or using ancient underpowered Window managers and text-mode only programs because they can’t stand having more than 5% of their 4 gigs of RAM filled. I think some of those people need to go into therapy.
“Does it really matter? In most cases, shouldn’t software just be compiled with all the features it was designed to have?”
Nope. Example: MPlayer seems to have an ability to perform encoding functions, which I have absolutely no use for. On Gentoo, when I install MPlayer, I have an option not to compile any encoding features, since I have no use for them — the only media I encode are MP3 files, and I don’t use MPlayer for that. Another example: MPlayer can be built to take advantages of several types of video cards. All of my machines have NVidia cards, so on Gentoo I build MPlayer to use _only_ NVidia cards. Why should my build of MPlayer support i810 series of Intel cards if I don’t have any? These are only 2 of at least 50 possible features that you can turn on or off easily in Gentoo.
And this is not about the disk space either. It’s about having control over your operating system — not the other way around. If I want to use an operating system that insists on controlling my computing experience, I can use Vista or some other Windows OS.
Insane obsessions, you say? How so? This is _my_ machine and _I_ want to have the final say in what gets installed on it. Me. Not some dude in Redmond or some other dude at Red Hat, Ubuntu or any other distro du jour.
Why don’t you just write your own OS and software stack? I mean, do you really want the guys at Gentoo deciding what kind of USE flags you get, like you’re a pig feeding at a trough?
Or how about build your own hardware out of transistors and wires since we don’t want some guy at IBM telling you how to make a computer?
Seriously, this line of thinking is insane. WTF does it matter if MPlayer happens to have some code to do encoding, which you yourself might one day need to make use of??? I mean, every piece of software has some parts that you probably don’t make use of. But does it really buy you anything to not build some of those features? Does it really? Or does it just make you feel l33t that you can compile MPlayer without encoder support. I suspect it’s the latter. Because USE flags really don’t give you anything, except the ability to have less, with no real benefit to doing so.
Gentoo has its strengths with respect to control in other areas, such as not having so strong a policy on how the system should work. One thing that irks me about some binary distros is that they really only work well if you do the default install. Gentoo isn’t like that. But it’s not the USE flags that do that. The USE flags are to pull in n00bs who think they are so cool.
Ah, now you’re just being unreasonable. Do you always react this way when people disagree with you?
“Why don’t you just write your own OS and software stack? I mean, do you really want the guys at Gentoo deciding what kind of USE flags you get, like you’re a pig feeding at a trough?
Or how about build your own hardware out of transistors and wires since we don’t want some guy at IBM telling you how to make a computer?”
I don’t have to do that. I’m perfectly happy with Gentoo’s “front-end” to ./configure utility. No need to resort to ridiculous hyperbolizing in order to make a point, wouldn’t you agree?
“Seriously, this line of thinking is insane. WTF does it matter if MPlayer happens to have some code to do encoding, which you yourself might one day need to make use of???”
Yes, that would be the day when I enable the “-encode” flag and re-compile MPlayer, thank you very much.
“Or does it just make you feel l33t that you can compile MPlayer without encoder support. I suspect it’s the latter.”
Do not ever assume; otherwise you’re liable to make an ass out of u and me. I’m a reasonable person — must you be unreasonable, resorting to vapid, pointless and uninspired ad hominem attacks to make your point?
“Because USE flags really don’t give you anything, except the ability to have less, with no real benefit to doing so.”
Not “less”. More like “control”.
“The USE flags are to pull in n00bs who think they are so cool.”
I haven’t met too many “n00bs” who care about having a full control over their Linux installation, so I’m not even sure what exactly you’re talking about here.
Why don’t you just write your own OS and software stack? I mean, do you really want the guys at Gentoo deciding what kind of USE flags you get, like you’re a pig feeding at a trough?
You’re really acting like an ass here.. >_> So, do you claim Gentoo doesn’t give you more control over your software than binary distros or not? If you indeed claim that then you’re wrong and if you don’t claim that then what the heck are you complaining about?
Seriously, this line of thinking is insane. WTF does it matter if MPlayer happens to have some code to do encoding, which you yourself might one day need to make use of???
I myself usually compile MPlayer with support for everything possible just because I use it for encoding and decoding stuff.. But there are other use-cases for USE flags: I for example have omitted support for Beagle on my GNOME desktop. I did that just because I don’t want Beagle consuming memory and CPU time needlessly when I won’t use it anyways. The same for Qt libraries: if something is compiled with Qt support then it’ll just unnecessarily waste memory (I use only GTK+ apps)
And then there’s the thing about compiling IN support for stuff that isn’t enabled on binary distros.. Most often they haven’t enabled everything possible or something which I happen to need. Under Gentoo I can compile such features in and be done with it. On a binary distro I’d have to first install compilers and all the necessary -dev packages and then compile from source..
Because USE flags really don’t give you anything, except the ability to have less, with no real benefit to doing so.
I already explained this. Either you understand or you don’t.
Does it really matter? In most cases, shouldn’t software just be compiled with all the features it was designed to have? In those cases that it really absolutely doesn’t, you can always rebuild from the source RPM, which is far more configurable than silly USE flags anyways.
And why would you ever build software WITHOUT support for something unless there’s a security risk, or you only have 20 MB of disk space?
First of all, what’s the point in having ALL possible features compiled-in when you know you will never ever have any use for those features? It’ll just waste memory when running that app in question! And no, SRPM is not “far more configurable” and it’s a lot bigger hassle than just doing emerge.
As for the question why would I want to build something without the support for everything possible…well, as I already stated I just won’t have use for everything possible! And I also noted that it’ll just waste memory for nothing..
Besides, when compiling from the source you can also INCLUDE features which are not enabled in your precious binary distros..One such feature could be support for proprietary file formats which you won’t get in your distro unless you find a repository with such and know how to add them to your package manager..
There are so many people in the Gentoo community who seem to have these insane obsessions, like only using GTK+ programs because the 10 MB of Qt libraries is too much, or using ancient underpowered Window managers and text-mode only programs because they can’t stand having more than 5% of their 4 gigs of RAM filled. I think some of those people need to go into therapy.
Ever heard that people might have differing tastes for things…? I know it might sound just amazing and unimaginable but it does happen :O I use GNOME myself but I don’t use any Qt apps and as such have also removed support for Qt from everything on my installation. Why? It’s not about disk space..It’s just that GTK+ and Qt just doesn’t mix and match nicely together. Qt apps feel really out-of-place on a GNOME desktop and I hate such. (And no, I don’t have 4 gigs of RAM on any of my machines. Actually, I don’t have even 1 gig..)
Maybe the author failed to point out that Ciaran has been kicked from Gentoo, because he constantly bring up flamewars and _hate_. As you can read in this (biased) “interview”, the thing that comes up most of the time is “other sucks!”. Some kind of people admire that and want to follow him, for some reason.
He has good ideas and stuff, but due to his ego and communication problems it isn’t going far. And by the way, by good idea, I mean only “good ideas”. Nothing revolutionary or truly world-changing here.
I’d rather keep the current ebuild layout we have right now and fix portage issues than redo the whole thing with some confusing new names.
I am doing debian as well as gentoo packages and up to now (including the whole gcc-based toolchain), I can tell you, gentoo packages are such a joy in comparison. They’re simple, they just work. I wouldn’t want to change that.
Finally, what drive people away from gentoo is usually that:
– compilation takes time
– configuring everything everytime is nice but after a while most people like to have everything preset (like ubuntu), me included
What keep people on gentoo:
– its simple and works
– you can tinker with packages so easily
– very customizable and flexible in its package management
– you can build your “own distro” without it being as sparse as LFS.
I run gentoo on my servers since 2003 and I’m still happier with that than any other distro. I run Ubuntu on my desktop.
Don’t forget another reason some people left was quality assurance and stability. Its not an enjoyable feeling having to hope and pray that an emerge -u world would not break your system. Another point being that with most of the current stable releases of apps were frequently masked in portage (I’m sure those weren’t you’re packages) a stable system was not all that up to date.
Tell me about it. You pretty much can’t do an emerge world anymore without having to manually inspect what it’s going to install. I haven’t upgraded to expat-2.0 yet because I just don’t have the time or the patience to spend hours or more with an otherwise broken system trying to make it through the upgrade. Also, the new Xorg stuff is broken and still isn’t fixed, so I’m stuck on 7.1. It works fine in Fedora. Broken in Gentoo. Can’t get GIT to build. And much more crap like that. It’s a maintenance nightmare.
Now I remember you…
What drove me away is the perceived speed of forensic investigation after “the” gentoo server had been hacked.
Haha… back in 2003 we are?
What about the hacking of Debian servers? They’ve been compromised more often. Or the updated goofs at Ubuntu, or the constant breakage of binary interfaces in Fedora?
If users left a solution because of every little thing that went wrong, we would still be waiting for lightning to roast the mastodont we brought home.
Gentoo got other problems – used it for years but things are gotten too screwed up and a portage replacement ain’t going to fix it no matter what languague it is written in.
To recap:
I used Gentoo back in the other century because it would work with a lot of multimedia formats other distros wouldn’t have a go.Legally? – well troubling at best but nobody sued them yet so what?
Commercial distros can’t do that because they have a business (as in commercial) that has assets – clear enough?
Anyway – ever after Gentoo started to grow there was no QA anymore.If you got a working system or not simply depends on the apps installed.Since I tend to have rather a lot of apps installed my system got borked more often more frequent (being w/o compiler,Gnome2,expat2 anyone??)
Systems smashing bugs being open for month being the norm plus an administration that doesn’t know the first thing about what they are doing I decided to get the hell out of there.
Sure – you can use it for servers if tracking all the security stuff personally sounds like fun or/and somebody is willing to pay you for it.
USE flags and compiler flags?
Give me a break – the guys at gcc don’t know for sure if you bother to read the doc’s.
How I am going to find the magic combination that gives me the 20 percent more power to justify the maint cost?
“USE flags and compiler flags?
Give me a break – the guys at gcc don’t know for sure if you bother to read the doc’s.
How I am going to find the magic combination that gives me the 20 percent more power to justify the maint cost?”
Ummm… USE flags != CFLAGS, pal. And ignorance is not a point of view.
… the Meta-Distribution design of Gentoo was what I liked and enjoyed when I used it. Being able to pick and choose, mix and match, from the ground up the exact combination of apps that are installed can be a very powerful thing. Especially when each of their many options and features are fully customizable to suit your needs. With binary distros its not that easy as you are left at the mercy of each package maintainer. Not that there is anything wrong with them, but each distro like each individual is different and to get what you want out of any given one will require a bit more effort.
There is something to be said for the convenience of have a binary system up and running quickly. But if you knew exactly what combination of apps you needed for the system you were building or if you needed only that one feature which most distros would compile disabled to cater to the greatest common denominator, Gentoo much more readily accommodated you intentions.
Another opportunity that the promise of a Meta-Distribution like Gentoo offers is the ability to closely follow the Upstream Packages because ebuilds translated into not much more than build instructions. And if a culture for Quality Assurance, better bug reporting and pushing patches upstream were to be adopted, I know developers would enjoy the helpful and constructive feedback instead of being limited by the resources they have available to them.
Users would see the benefits across the board because the more problems get fixed up stream, the greater the cross section to receive the benefits. As it was mentioned in the article it will be a very good thing when someone can do “a script that automatically checks the packages they maintain against upstream’s homepages to ensure that the latest versions are in the tree.”
And yet you can almost always get later versions of software on Fedora than you can on Gentoo. I run a partially ~x86 system and there’s still stuff that I can’t even get, such as Eclipse 3.3, which has been out on Fedora for months.
Well, I run Gentoo as my desktop machine, and it works just fine for that purpose. A few points:
(*) Occasionally a package will not compile properly. This is annoying. Most of the time, however, the fix is either obvious or it is a fairly obscure package. The big stuff works fine for me most of the time; or at least, it fails rare enough that I haven’t switched to Debian, which is one of the other distributions I run here (Debian on my router and fileserver, and Kubuntu on another desktop). Inasmuch as there is a population of users who have problems with portage, I’m not one. It works well for my purposes. The only thing I slot is GCC so I can compile QEMU. And that works effortlessly. I just select the version of GCC I want (3.4.6), compile QEMU, then switch back (4.1.2).
(*) Complaining about compile times is rational if you have an older, slower system. It’s not something I ever think about. Emerging a typical package takes a few minutes for me and the big stuff I do before I go to sleep for the night. I hear people complaining about this whenever Gentoo is brought up. Fair enough, I guess. It doesn’t bother me. It’s not like I am installing 10 new packages every day of my life. Setting up a Gentoo system *initially* takes a little bit of time but on a newer system, thats about 16 hours of compile time, and about an hour of actually sitting in front of the computer. Come home from work, configure, set up everything, then recompile everything while I sleep and work the next day, come home, and it works. From there on we’re talking 1-10 minutes per package, with some obvious exceptions (and some of the big stuff does have binary alternatives, like openoffice).
(*) The benefit of USE flags is, for many users, tied up in the compile-me nature of the system. This isn’t a “feel good” ricer thing as some claim. The fact is, if you are running a system that compiles, you don’t want to compile any more than you have to, and have any more updates than you have to (and yes, it’s fair to ask yourself whether you want to compile at all, and whether Gentoo is right for you).
While some people are really obsessive over what exactly is installed on their system and therefore make use of USE flags to keep their system lean, that’s not my trip. I start out with a minimal number of USE flags until something doesn’t work the way I want it to. Often, an ebuild will warn you if something is missing. Otherwise, if I install a program that is missing an option, I look in the USE flags first and add them as I need them. Not a huge deal.
(*) Gentoo’s popularity – I don’t really know what to say about this except that it’s not 2002 and Gentoo is no longer the flavor of the month or the OMG h4x0R distribution it had a reputation for being (and never was, by the way). Any users who ever installed it to be “l33t” have since jumped to other distributions. What’s left is a fairly solid userbase. The forums are still very active and things still work well, at least on my system. As I’ve stated before, I would have no idea that Gentoo was having any kind of problems if I didn’t read articles saying so. On my system, Gentoo is stable. It doesn’t feel aging or old or outdated. All the new stuff I want is there, and I really wouldn’t be gaining much by switching, based on my personal needs.
(*) I don’t know Ciaran McCreesh and while I’m definitely in favor of alternatives and advances, I seriously wish he didn’t have such an abrasive personality. That does hurt development – it puts people off to him and therefore his accomplishments. Every time I read anything by him, he comes off as unprofessional, and a bit of an asshole. Everything I read about his code says that its great. This combination is a shame. I’ve not tried Paludis yet, but mainly because I can’t find a compelling reason to switch over such a fundamental part of my OS yet. If I was a developer, maybe I’d feel differently. He’s not the only one to have stated that portage is kind of patchy and hacky. It looks and works pretty stable for me, and that’s the only standard I have to judge (and I’m running amd64, too).
Anyway, the reasons to run or not run Gentoo are the same as they ever were, but Gentoo is hardly a dying or decaying distribution. People keep suggesting that and it’s simply not true, at least, not from my perspective. It is not flavor of the month anymore, nor is it some kind of “prove yourself” distribution. I started with Gentoo as a complete newbie and got it installed by just following the directions, and almost anyone can. I stick with it because it works, and works well, for the KDE desktop system I run. I don’t represent it as being great for anything else, but for me, I have few complaints. I still think it’s worth trying out if you’re shopping around for a distribution. Just my two cents.
Portage was nice, and at one point, I was running Gentoo on my servers, desktop, and laptop. It got to a poing where I just needeed to get stuff done and not wait for hours compiling software. Now I use Debian Testing.
I’ve always wished for a binary Gentoo distribution, and a much saner package management system. Sabayon might be the best option, but it is not there yet.
Holy crap, no one is talking about Sabayon Linux Entropy Project for a real binary Gentoo???
Open your eyes: http://packages.sabayonlinux.org and http://svn.sabayonlinux.org for the sources (under projects/entropy).
Wake up!
rpm and deb do their job, but someone has to make them.
If you want to use firefox and openoffice, there are billions of rpm available for you to download ans use. Now let say you want that software that is available only as a tarball. I can make an ebuild in 1 minute to download, configure, make and install. No need to checkinstall and complicated stuff. My software is tracked with portage in one minute and if I want to upgrade to the latest tarball or with svn, it’s just a file to edit and 10 seconds.
I’ll stick to portage for now because there’s nothing in Paludis I need and python is faster to mess with.
I switched to gentoo after LFS about 2 years ago because I made some scripts to track some of the stuff I installed on LFS and it became more and more difficult to maintain until I realized that eventually my scripts were just trying to do what portage was already doing so much better. For me, gentoo was just what I had dreamed. I switched and am having much more fun and less troubles thanks to portage.
Gentoo is not for everybody and for everything. If you don’t get it, you probably don’t need it. I use slackware for firefox and openoffice and I have mandriva installed for some other uses. Gentoo is ideal for tweaking when you need something really specific, for developping and for documentation and certainly a lot of other different things.
That’s the first distro where my ralink card worked.
On slackware it didn’t work, so I watched the ebuild and realized the driver was needing a patch to work. Patched the source and voila. Portage is transparent. It’s a good documentation tool as well as a very powerful package manager and much more fun than any other package manager I know.
It is also the best way to legally use and track unpackaged proprietary software.
Edited 2007-12-17 13:58
I know it’s fashionable to have a dig at Gentoo users and ricers, but when you look at Gentoo, what’s wrong with it?
I used Gentoo often for some servers about three or four years ago, and they were great. Mostly I just used all the stable packages in x86, occasionally I had to go ~x86, but things were pretty easy to work out. I also remember when we used the old Linux threading model, and I can remember upgrading one server to NPTL with nothing happening apart from having to re-emerge Postfix – and it was still running fine. I can’t think of too many other distributions that can do that. None, in fact.
Gentoo is also great if you want to keep most of the rest of your system stable, whilst being able to upgrade easily to newer piece of software. Upgrading Ruby and Rails is a case in point, and if you want to do this on a binary distribution then you’ll have to either be lucky enough to find a repository or you’ll have to compile it yourself. You’re then going to have to hope that it doesn’t pull in a ton of other upgraded packages you don’t need either.
When I moved from Gentoo to Red Hat/CentOS and other binary distributions of the same type, I found this out. I also found this out when I installed Red Hat/CentOS for the first time. I did a default server-only install, and was absolutely befuddled that my /usr partition was chock-full of pointless dependencies and complete crap. I mean, I don’t mind the odd dependency here and there, and you find out some of them are useful, but we had dbus -> Pango -> Cairo etc. Dbus I can just about understand, but what the hell is Pango and Cairo doing on a non-GUI server system?!
Things have come to such a head, I’m now considering Gentoo again.
Edited 2007-12-17 15:09
I was drawn to gentoo because it was said, at the time to be really hard, and I thought I was up for the challenge. I learned how little I really knew about unix and Linux, and watched that knowledge explode as I wormed my way through getting a fully functional system with what I wanted on it.
What Has kept me with Gentoo is that:
1) Once you get it set up like you want it no pre-built distro can offer you the same
2) It is really easy to install new software.
3) the development environment is (of necessity) fully installed by default.
Although I have installed Ubuntu systems for friends and family, and I’ve tried other distros, I can’t find another one that handles dependencies as well. This despite the occasional breakage. If paludis can help me avoid some of the pain of incompatible upgrade cycles, I may give it a whirl.
Does anyone know if and or when the online portage data base from http://www.gentoo.org is being revived?