Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Links Software Linux

Gentoo Linux Musings 395

ChaserPnk writes "Gentoo has been in the news recently. First with the news that Daniel Robbins leaving Gentoo and then with Gentoo Linux 2004.1 being recently released. Have you ever wondered how Gentoo got started? An article at IBM DeveloperWorks explains how. Get to know the history of Gentoo." darthcamaro wrote in with a related story that suggests that Gentoo is preparing to change directions soon: "Is Gentoo gearing up to be the third major enterprise distro? That's what an article running on points to. They talked to the head of Gentoo's enterprise efforts. For those that think that Gentoo Enterprise is far off, Gentoo's guy figures if they had the cash they'd be up and running in 6 months."
This discussion has been archived. No new comments can be posted.

Gentoo Linux Musings

Comments Filter:
  • Re:I like Gentoo... (Score:2, Informative)

    by ophix ( 680455 ) on Thursday April 29, 2004 @11:33PM (#9015598) Homepage
    redhat/fedora isnt difficult to upgrade to a newer version remotely. there is this great tool called APT that was started by the debian project...

    i have used apt to upgrade from a redhat9 box to a fedora core box _while i was still using the system_
  • by Cyno01 ( 573917 ) <> on Thursday April 29, 2004 @11:35PM (#9015616) Homepage
    Enterprise, not just commercial. So that would be SuSE and Red Hat.
  • by Trejkaz ( 615352 ) on Thursday April 29, 2004 @11:41PM (#9015651) Homepage
    If I understand their strategy correctly, the idea is to keep a 'stable' CVS tag in the manner of FreeBSD, and to distribute that to the enterprise portage tree. The same CVS repository would still be used for all the files, it would just be pointing at a different tag. And as long as it's using Portage, it's Gentoo. :-)
  • by petabyte ( 238821 ) on Thursday April 29, 2004 @11:44PM (#9015668)
    Are you going to and from the University or are you just coming home? If you can get on and off that connection you can do an emerge -f to download the packages at the university and continue the compile at home.

    The binary packages can also be out of date fairly fast. Gentoo is going to take some bandwidth to get the source files for building intially but assuming you leave them in /usr/portage/distfiles, all you really have to do is emerge sync once a day (equiv of apt-get update) and then emerging new packages. That's also going to take some time to download new files if they are required but you can do other things while portage is doing its thing. I generally go do emerge whatever and then go do other things. Some of those packages can be really big to pull down over dialup but then again, if you've downloaded Fedora iso, you've probably found a way to deal with large downloads somehow.
  • by Gunfighter ( 1944 ) on Thursday April 29, 2004 @11:46PM (#9015677) Homepage
    We've been using Gentoo exclusively on both servers and workstations for well over a year now. The reason we chose Gentoo?

    -- Stability
    -- Scalability
    -- Flexibility
    -- Customizability
    -- Support

    We had a mixed RedHat/Mandrake shop before that. From our point of view, we hope other businesses share your opinion. It gives us the competitive advantage.
  • by reaper20 ( 23396 ) on Friday April 30, 2004 @12:04AM (#9015755) Homepage
    You're kidding right? You know you can do this in every other distro too.
  • by Anonymous Coward on Friday April 30, 2004 @12:05AM (#9015762)
    I just did this using the gentoo CDs.

    I did a netless install. I install the basics from packages on the CD (KDE, compilers, etc). I got back to work (I just did't have to time to sit and wait).

    While working I did "emerge sync; emerge -fu world" which updated the versions and downloaded all the source code.

    Then at the end of the work day I logged out (just in case upgrading KDE in-place would screw it up), and did "emerge -u world" at the console.

    Voila, my gentoo system was transmogrified with the latest updates.

    Pretty cool and I hope they explore this further (i.e., let's have "netless install", "net with precompiled binaries", and "net from scratch").
  • Re:Gentoo Usage (Score:5, Informative)

    by birukun ( 145245 ) on Friday April 30, 2004 @12:09AM (#9015777)
    You must try distcc - it has saved me tons of time! - they even offer a link to for information on how to install and configure. It is so simple I am still amazed that more people are not using it.

    distcc offloads compiler jobs to other machines over the network. My PIII 700 laptop now has a little help - the Athlon XP2100 and the PIII 600 perform alot of the work now.

    Another thing I use is ccache - I don't exactly know how it works, but it supposedly adds 20 -40% faster compile times.

    I also read somewhere in the forums that it is possible to set up a server internal to compile the packages once for the target machines (if they are all the same) and then perform a binary install to each machine from there.

    Use distcc to have all the machines compile the packages once; use the binary package emerge to install locally! *SWEET*
    Good Luck!
    Birukun (here and on the Gentoo forums)
  • Re:Binary flag? (Score:3, Informative)

    by moreon ( 120076 ) on Friday April 30, 2004 @12:13AM (#9015795)
    There is already a binary flag for emerge, emerge -k. Certain packages (large ones like GNOME, KDE, Evolution, Mozilla, etc... and their dependencies) are provided by what's called GRP (Gentoo Reference Platform). All you have to do is set your PKGDIR in /etc/make.conf to point to a directory where you have these prebuilt packages (which you download an .iso of off a Gentoo mirror), and you're set. Although emerge currently has the capability to fetch prebuilt packages from a mirror that provides them, there are no public mirrors which do so. If you had a bunch of computers that you wanted to run gentoo on though, you could set up an ftp site with prebuilt binaries, point emerge to the ftp, and use emerge -gK to automatically fetch/emerge the packages you want. Otherwise you have to do what I said before, which is to get an .iso with all those prebuilt packages, and simply mount it.
  • Re:Binary flag? (Score:1, Informative)

    by Anonymous Coward on Friday April 30, 2004 @12:15AM (#9015806)
    Having used gentoo for near 2 years now and always hearing people complain about the time it takes to compile everything, Ive often wondered why they havent just added some kind of flag to emerge/portage which would specify installing a binary package instead of compiling from source. It would def. be handy for huge compilation tasks like KDE, GNOME, etc...

    It's already there.

    PKGDIR="path_to_packages" emerge --usepkg package_name, if you have a package of the same version a compile would merge.

    Use --usepkgonly to force installation of an older version than a merge would install.

    To create binary packages whenever you compile something, add "buildpkg" to your FEATURES= line in /etc/make.conf . Most useful when installing on multiple systems.
  • Re:I like Gentoo... (Score:4, Informative)

    by reaper20 ( 23396 ) on Friday April 30, 2004 @12:20AM (#9015835) Homepage
    So he'd use apt-build instead.

    If Debian zealots rant and rave like children, Gentoo zealots assume that they're the only distro that can compile things from source.
  • Re:Uh (Score:3, Informative)

    by reaper20 ( 23396 ) on Friday April 30, 2004 @12:22AM (#9015848) Homepage
    Ummm. I stick the RH8 discs in a RH7 box and choose "upgrade". Or I use yum or apt and take it right to FC1 or rawhide.

  • by diablobsb ( 444773 ) on Friday April 30, 2004 @12:40AM (#9015930)
    the most common complain (and mistake) about gentoo is that it "takes forever compiling" etc etc yadda yadda....
    this is BS....

    first: I have like 20 servers running gentoo, the oldest of them is a pentium3-1ghz...
    even on this machine mostly everything compiles just fine (doesn't take long).

    2nd: for the things that WOULD take a lot to compile on this hardware, I can always resort to the binary packages (emerge -k)... kde/openoffice/gnome/etc gets installed in seconds....

    3rd: most my servers don't need kde/X/gnome/etc...

    4th: if there is a package i use often, and it's not avaliable as a precompiled package... i can just have emerge "create" one and store it on the network... if i do an emerge things get compiled from source... if I do emerge -k , the portage will first look into my packages dir to see if it finds a precompiled version, and if it does... use it...

    5th: distcc is your friend... i have 5 xeons 3.06ghz on my distcc farm... talk about fast compiles :)

    6th: gentoo rox :) i would never, ever trade it for other distro....
  • by zbrimhall ( 741562 ) on Friday April 30, 2004 @12:53AM (#9015998)
    The flexibility this system provides is well worth the extra few minutes rather than installing *.deb or *.rpm files and entering dependency hell.

    Not that I don't love Gentoo or anything, but mind you,
    emerge kde
    adds more than just an "extra few minutes" to the installation process. In all, the first couple of times I installed Gentoo on my laptop (stage 1 and then stage 2), it took nearly a week before I felt OK about disconnecting it from the Internet to take it with me anywhere.
  • Re:I like Gentoo... (Score:3, Informative)

    by pantherace ( 165052 ) on Friday April 30, 2004 @01:05AM (#9016049)
    That honestly isn't true that portage has more 'packages' than other distros. If gentoo used as many subpackages as other distros as opposed to use flags, the only one that could rival it would probably be debian.

    See, portage has between 6000-8000 ebuilds in it. There are a few which don't really build anything and are lists of dependancies (see the 'kde' ebuild, it's essentially just an empty thing that requires kdelibs, kdebase, kdepim etc) However, dispite the few of these, almost all ebuilds are a whole program or library that stands on it's own. With debs or rpms, the little customization allowed by them is included in packages such as qt, qt-MySQL, qt-PostgreSQL, etc. With Gentoo there is one ebuild and there are USE flags (mysql, which can add dependencies on mysql to the qt ebuild, but doesn't add a whole extra package)

  • Re:nonsense (Score:3, Informative)

    by macdaddy ( 38372 ) on Friday April 30, 2004 @01:19AM (#9016114) Homepage Journal
    I guess I must be the exception to your uneducated theory because I'm doing just that.
  • by whoever57 ( 658626 ) on Friday April 30, 2004 @01:32AM (#9016169) Journal
    and I'm up to date as one would be if they installed this weekend

    Actually, that's not strictly true. Look for the symlink called /etc/make.profile and you will see that it is pointing to a 1.4 profile (probably /usr/portage/profiles/default-x86-1.4) unless you changed it. The default-x86-1.4 and default-x86-2004.0 profiles are almost identical, but not quite.

    Of course these profiles may diverge more in the future.

  • and why should it? (Score:3, Informative)

    by sadler121 ( 735320 ) <> on Friday April 30, 2004 @01:38AM (#9016194) Homepage
    Is that really the point of Gentoo though? Gentoo is a META distro, NOT a full distro. If you read the handbook, there is a lot of emphesis on making Linux YOUR way. What's to stop an IT department from taking Gentoo as a basis, and implimenting it to the demands you specify? Gentoo already has a way to lighten the compile burden through distributed compiling, you can already set up your own portage system in a corperate style intranet for easy, fast access to packages, that, surprise surprise, can be hand picked by the head IT guy.

    The bottom line is Gentoo is about CHOICE, thats why the things so damned hard to install for newbies, (even with the wonderful Gentoo Handbook).

    For myself, I've tried other Linux distro's and have run into a lot of frustration when those distro's don't follow a regulated norm, (IE they liked to make up directories not specified in a program original make file, or other stupid things like that.) Gentoo is the closet you can come to a LFS (Linux From Scratch) system, except with Gentoo you have a way to deal with installed packages in a semi-organized fashion, (instead of having to remember every little tid bit about where every single file, etc is stored, so you can hunt it down to delete it so you can do that upgrade you want).

  • by pantherace ( 165052 ) on Friday April 30, 2004 @01:44AM (#9016214)
    There really are only a few you can't: the kernel, all others can be upgraded with the possible exception of glibc changing major versions (not minor versions). Or the one? occasion where the gcc people broke compatibility.

    We have 3 packages. Which really only need a reboot generally on one (and 2 others in very specfic cases), not to mention: Gentoo has a concept of slots, and I am pretty sure that is used to allow multiple glibc versions to exist, so nothing stops working, just new things get built against the new library. In this case, it takes a bit of extra room, but what do you think the compat-* rpms do?

    And lets face it, people are still running systems from before the current versions, so this has been handled already. Not to mention, generally there are more bleeding edge gentoo users than other distros, so bugs get found out fairly rapidly.

  • by OrangeTide ( 124937 ) on Friday April 30, 2004 @01:53AM (#9016244) Homepage Journal
    I've gone through several glibc and gcc upgrades on gentoo. Including the imfamous gcc 3.0 to 3.1 upgrade which wasn't fully binary compatible. Gentoo (and plenty of other distros) easily figure out the depedencies. Also Linux does not stop you from running two versions of glibc at once. So you don't have to migrate everything over at the same time unless you can't afford the RAM.

    FreeBSD and NetBSD both cope with this as well. I'm sure Debian and SuSE do too.
  • by carambola5 ( 456983 ) on Friday April 30, 2004 @01:57AM (#9016250) Homepage
    Actually, the basic installation of Gentoo does this already... albeit with a minimal set of packages. During install, you copy a generic root filesystem to your hard drive, chroot into it, and start replacing the "stock" binaries with your own compiled binaries. That's where much of the waiting is (ie: compiling gcc [twice, I think]).

    That's the case for the most basic install (stage 1). If you do a stage 3 install, you're closer to what the parent wants.

    Then, if you go to the GRP releases (which I have not touched), you'll have all the major stuff already compiled: xfree, gcc, openoffice, etc.

    One place that's dangerous to tread for Gentoo is to have many packages pre-installed. One of the driving philosophies is to know exactly what's installed on the system, and have nothing more.
  • by Aneurysm9 ( 723000 ) on Friday April 30, 2004 @02:26AM (#9016335)
    It is as easy as you proposed:

    1. Partition and format
    2. Install system from GRP packages (emerge -K foo)
    3. Start using system
    4. While using system, recompile with customized CFLAGS (nice - emerge -e world)
    5. ???
    6. Profit!
  • Well... (Score:2, Informative)

    by Lord Kano ( 13027 ) on Friday April 30, 2004 @02:27AM (#9016340) Homepage Journal
    s Gentoo gearing up to be the third major enterprise distro?

    Maybe after they update the install process. Some scripts, a GUI or even a text menu would go a long way towards making Gentoo a bigger player.

    I have been using Linux for 6 years and Gentoo was a pain in the ass the first time I installed it.

    Then again, so was Red Hat 4.x my first time installing...

  • by carlitoslinux ( 766841 ) on Friday April 30, 2004 @04:41AM (#9016703) Homepage
    If you are having touble installing gentoo or does not understand the handbook manual on the oficial webpage of gentoo i recommend you to take a look at the anaconda-gentoo graphical installer that victor padra make just go to:
  • by Qoud ( 202153 ) on Friday April 30, 2004 @06:05AM (#9016969)
    I am a system admin, real or not.
    • identical binaries: we want to be able to take binaries from one system and use them on another. If a binary crashes, we need to be able to reproduce the problem on another system. Having binaries compiled with different options everywhere makes tracking down stability issues and other bugs a nightmare.
      So use the same /etc/make.conf on all your servers

    • patches: enterprise systems don't want to upgrade, they want the patches to be backported to their version. New version of foobar fixes a security hole? We don't want it! We want the old version, with a patch. Otherwise we might have to modify our config files.
      Then install the patched ebuild. I went from openssh-3.7.1_p2-r1 to openssh-3.7.1_p2-r2, rather than upgrading to openssh-3.8_p1

    • vendor support: some products will only work on certain distributions. The reason is that the vendors don't have time to test their product on every distribution. If they have to pick only one or two, it will be RedHat Enterprise and SuSE Enterprise. Gentoo rules itself out by not having a canonical set of binaries.
      This a typical chicken & egg situation. Vendors are lazy and only support distributions with major market share, once gentoo becomes prevalant, they'll have to support it or lose customers.

    • CPU time is valuable: we spend lots of money on our servers, and expect to get performance out of them. We really don't want to waste CPU time on compiling. Yes, I'm aware that a faster machine can compile faster. So what? I'm not about to spec out faster machines just to keep up with the compilation requirements. We'd rather spend our money elsewhere.
      So you would rather your applications run at sub-optimal speeds. You can compile on non-production servers & install prebuilt packages.
  • Re:Server room? (Score:3, Informative)

    by Maddog2030 ( 218392 ) on Friday April 30, 2004 @06:49AM (#9017081)
    And if you, as an admin, take less than an hour to test your rpm (or whatever) software installation, on a mission-critical server, you're not doing your job. I will give you that it takes a long time to compile most things, but in my book, it's time well spent.

    As much as I love Gentoo, this comparison makes no sense. When you're compiling, you're still not testing your software installation. You're sitting there waiting for the installation to complete. The Redhat administrator can install and test his installation before you're even done compiling.

    And who said anything about a mission critical servers? Most people aren't running mission critical servers, especially Gentoo users. They're tend to be more desktop oriented, so you're talking about a niche market. If you're running a mission critical server, you always have a completely seperate box to test new software and there's usually no rush to upgrade, barring security updates. In fact, I'd venture to say you may be more vulnerable with Gentoo on a mission critical server because you need to take the time to compile, leaving your exploitable machine open while your Redhat friend took 15 seconds to install the latest security update.

    All that said, I love Gentoo. I use it on my desktop. It's by far my favorite distro. I just realize that Gentoo's approach isn't flawless in itself, and that compiling everything doesn't always make sense. But for myself, I like it.
  • Re:Server room? (Score:4, Informative)

    by Rich0 ( 548339 ) on Friday April 30, 2004 @07:06AM (#9017115) Homepage
    If you're doing this you probably have a test server which is identical to your production server (at least if you have a lot of servers which are essentially clones). In any case, that is the only way to be sure you won't have dependancy problems when you deploy to production.

    In that case while you are doing the initial compile on your test server you do an emerge -b , so that it tar's your binary files. Then just distribute the tar to your production servers once you are happy and do an emerge -k. You can skip the distribution step if you have network mounted filesystems (which would probably be the case in an environment like this).

    Gentoo supports binary packages as readily as source-based ones, just not by default...
  • Re:Gentoo Usage (Score:2, Informative)

    by Spacejock ( 727523 ) on Friday April 30, 2004 @08:35AM (#9017419) Homepage
    I also read somewhere in the forums that it is possible to set up a server internal to compile the packages once for the target machines (if they are all the same) and then perform a binary install to each machine from there.

    I share my distfiles folder over nfs, mount it on all remote machines as /mnt/portage/distfiles and change /etc/make.conf to point to this location. The first machine to download a missing package puts it in this folder, making it available to the rest.

    Next, I shared the /usr/portage/packages folder on the server to all machines with the same architecture (actually, it's more complicated since I have a mix of P3, P4, Athlon XP computers here.) You don't want a P4 putting optimised packages into /usr/portage/packages on the XP server.

    /etc/make.conf points to the packages folder (/mount/pkgs) for each architecture, and I also have 'buildpackages' in the make options.

    All machines are running distcc. When I emerge -k whatever, it's either already there or built and put there for the next machine.

    I'm sure this is documented somewhere, but I messed around until I got what I needed.

  • by pherris ( 314792 ) on Friday April 30, 2004 @08:45AM (#9017468) Homepage Journal
    emerge mplayer

    No looking for parts here and there, just "emerge mplayer" and BAM! It's all there, working great with all the codecs in one shot.

    Fast and clean. Gentoo rocks.

  • Speed? (Score:3, Informative)

    by ( 673283 ) <> on Friday April 30, 2004 @08:58AM (#9017552) Homepage
    Why do so many of the gentoo-zealots only mention the speed optimizations as a reason to run gentoo?
    The reason why *I* run gentoo is because it allows me to very easy customize the features of all packages. Also it very easy to apply custom patches and still have the package managed by portage (therefor knowing when there is a new version out :). The speed improvement (that atleast I haven't noticed) is just a bonus.

    In soviet russia gentoo compiles you!
  • Re:Uh (Score:2, Informative)

    by datadriven ( 699893 ) on Friday April 30, 2004 @09:17AM (#9017680) Homepage
    swaret --upgrade -a Swaret does everything apt does except hose your sytem.
  • Re:I like Gentoo... (Score:3, Informative)

    by zsau ( 266209 ) <slashdot&thecartographers,net> on Friday April 30, 2004 @09:21AM (#9017714) Homepage Journal
    I stopped using Gentoo because I kept getting dependency hell. I also found the time it took to install everything from source annoying.

    I went to Slackware.

    No, I'm not sure if I'm trolling either... :) (But no, in all seriousness, I left Gentoo and went to Slackware for the reasons mentioned and because of Eugina Loli-Q. of OSNews's review; it was pretty nice until I upgraded to Dropline Gnome 2.6. I'm now using ROX-Session and Zero-Install and OroboROX.)
  • by Jason Hood ( 721277 ) on Friday April 30, 2004 @11:10AM (#9018869)
    Actually where gentoo is really nice is on the amd64 platform (few distros have stable amd64 ports). After installing in 64bit mode and playing around with the emul32 libraries I decided that I would rather just have a 32 bit environment embedded in my 64 bit one. There are some apps and plugins that are not ported to amd64 yet.

    Since I already had 32 bit emulation enabled in the kernel I simply created a new dir in / , chrooted in 32bit mode and did a full install in the background. Since I am a developer I am able to test 32bit and 64 bit apps side by side without rebooting. I can also just boot the 32bit install if I want. I have even cross mounted my home directory so that I could use the same source tree. Having done the gentoo install only a handfull of times this was still easy.

    I know people say they want a good installer but I see this experience as a primary example of why I dont want one. Some people like flexibility others need point and drool. Either is fine but both would be great.

Trap full -- please empty.