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

 



Forgot your password?
typodupeerror
×
Linux Software

A Walk Through the Gentoo Linux Install Process 352

Anonymous American (Sherman Boyd) writes: "I was looking for a flexible, powerful distribution that makes it easy to build a 'custom' Linux box that meets my exacting specifications. I think I found it. Gentoo Linux has just released version 1.0 of their innovative meta-distribution and to celebrate I decided to throw it on my laptop and write this article based on my experiences." And good news for anyone interested in trying Gentoo: yesterday, Daniel Robbins announced the release of version 1.1a. Read on for AA's detailed look at putting Gentoo on his machine -- Gentoo has a different style than today's typical distributions, and it bears some explanation.

Gentoo solved many problems for me. Some distros install everything, whether you really need it or not. Not Gentoo; other than the base packages required for Linux to run, the only software installed on the system is the software you put there. Gentoo resolves dependencies automatically, eliminating RPM prerequisite hell. As an added bonus I got something I wasn't even expecting. Speed. Blinding, blazing, incredible speed.

The main advantage to the Gentoo distribution is Portage, a python-based ports system similar to BSD ports. For those of you unfamiliar with BSD ports, Portage is a package management tool that downloads and installs source instead of precompiled packages. When I need a program I download, install and compile it with one command:

emerge nmap

The above will download the nmap source code, compile and install it. Of course this method is slow, but it has its rewards. You can also opt to use prebuilt binaries if you are not extremely patient. It took me five hours to get the base Gentoo installed on my PIII with 128 megs of ram. It wasn't a big deal as I had other things to do, but I would like to see the installation process optimized so that it doesn't require any babysitting.

Gentoo is running two of my mission-critical servers right now, I consider it to be stable and mature. A warning, though: this is not a distribution for dummies. This is bare metal Linux, powerful and dangerous. If you do something without thinking you may fall into a bucket of pain.

Let's begin my story.

I download the iso from http://www.ibiblio.org/gentoo/releases/build /. There is a choice of install images here. My favorite way of installing Gentoo is to compile everything, a time consuming process. This method requires a slim 16-meg iso. You may want to grab an iso with pre-built binaries to speed things up, however. This fat iso weighs in at 103 meg. I download the big one with the prebuilt binaries even though I won't use them -- just in case.

I boot my laptop with my shiny new Gentoo CD. The Gentoo install uses isolinux by Peter Anvin. I like the fact that they don't obscure it, giving credit where it is due. It boots quickly and there is a PCI autodetection process, it shouldn't find much on my laptop. Interesting, it loads a SCSI module. Perhaps it has detected my IDE CD burner. Usually this will detect any PCI NIC cards that are installed, but it does not detect my PCMCIA device (of course). After the PCI detection I get a command prompt. I use nano (a small text editor) to open up install.txt, the excellent install doc. Usually these docs are sufficient but the latest ones can be found here:

http://www.gentoo.org/doc/build.html

Keeping the install doc open in this virtual terminal, I hit alt-f2 to open a new one. I begin by loading the pcmcia drivers and installing networking. This is all done at the command line ( insmod, ifconfig, route, dhcpcd, etc.). I use nano to add my DNS servers to /etc/resolv.conf. A word of caution; get in the habit of always using the -w switch with nano. If you do not use the -w switch nano's word wrap feature will jack up your config files. I ping a reliable site, networking is up!

Next I partition my system using fdisk. I choose a simple layout with a swap partition, a root partition and a small boot partition. The boot partition remains unmounted during use, a nice precaution. For filesystems you have a choice of ext2, ext3, ReiserFS and XFS. In my personal experience I've noticed that Reiser performance really rocks when combined with SCSI drives, but as this is an IDE system I think I'll go with XFS. Besides, the XFS tools seem to be a lot more mature than the offerings from Reiser. I format and mount the partitions from the command line creating a /mnt/gentoo directory. I then untar the root filesystem; here I have the choice of the small tarball that requires you to compile everything or a larger tarball that contains pre-built binaries. If you untar the big guy you are almost finished with your install at this point. Using chroot and some scripts you chroot the /mnt/gentoo directory. From this point on you are operating under your new gentoo system.

The first thing I do under my chrooted system is issue this command:

emerge rsync

This downloads the latest version of the portage tree. The portage tree is found under /usr/portage and contains the ebuild scripts used to compile/install programs. Currently there are over 1000 up to date emerge sripts. Next I edit /etc/make.conf, here I can choose compiler settings. I optimize everything for i686. Now it's time to build the GNU compiler and libraries. I run the bootstrap script and leave for lunch. On my PIII 500 the boostrap process takes 2 hours and 2 minutes.

The second emerge command I issue is:

emerge system

Now emerge downloads, compiles and installs my base system packages. I sit back, relax and take the time to fax my legislators a rant about the DMCA. One hour and 30 minutes later it is finished.

Now it is time to download and install the kernel. First I make a link updating my timezone, and then I issue another emerge command:

emerge linux-sources

This grabs the latest kernel, 2.4.19, and drops the source in /usr/src/linux. Ten minutes have elapsed. Now comes the fun, compiling your kernel. That's right, everyone who installs Gentoo compiles their own kernel as a matter of process. I like this. There are some distributions out there that actually say you should never compile your own kernel. Shame on them. I use make menuconfig and the standard commands to compile my kernel. Since Gentoo uses devfs I select /dev file system support and I am also careful to compile in support for XFS. I don't have the kernel mount devfs automatically at boot as the Gentoo startup scripts take care of this for me. Virtual Memory file system support is also enabled.

At this point in time I get to choose a logger. My choices are sysklogd, syslog-ng or metalog. I choose metalog, because it's got the coolest name. I download, compile and install it using a single command:

emerge metalog

XFS has some nice utilities, I better install those. I have some other essential programs to install, and I'm feeling a bit lazy so I chain them all in one big command.

emerge xfsprogs;emerge bitchx;emerge vim;emerge links

At this point I'm feeling pretty 7-Up. I edit my /etc/fstab file, my /etc/hostname file and /etc/hosts. The passwd command is run to set the root passwd. I add my NIC module to the file /etc/modules.autoload and edit /etc/conf.d/net. conf.d/net allows me to configure my IP address and settings, default gateway and alias. I take a look at /etc/init.d/net.eth0, even though I don't need to edit it. I can then add it to the startup script using this command:

rc-update add net.eth0 default

This adds the script to the default runlevel to be executed at startup. Startup scripts are another place Gentoo really shines. The startup scripts have a system of dependencies. For example net.eth0 can depend on pcmcia. The pcmcia drivers get loaded before net.eth0 - this is good.

Next I install grub. If you haven't used grub before, it's nice. You can boot to a kernel directly from the grub shell, without having to edit a config file. lilo is still available, for those of you who prefer it. Gentoo likes to let you make the decisions.

I exit my chrooted shell and unmount all directories. Reboot! Gentoo comes up and the install process is complete.

The Gentoo install process has taught me a lot about Linux, and I like the fact that the command line is embraced, instead of hidden behind gui or scripts. I also like the speed (which is debatable since all I can supply is anecdotal evidence). I wasn't too happy about waiting five hours for everything to compile, but I think it was worth it. I can tell you it compiles and greps noticeably faster than other distros I have run on the exact same machines. I really enjoy using portage, and the packages seem to stay up to date -- if not bleeding edge. This is not a conservative distribution like Debian, however I like the aggressive and intelligent direction gentoo is taking.

If you are considering trying out Gentoo I highly suggest #gentoo on irc.openprojects.net. Also subscribe to the mailing lists found at www.gentoo.org. The Gentoo community has helped me out of several jams in the past, I think they will treat you good too.

While writing this, I received help from a lot of people. However I would like to personally thank the people I ripped off word for word. Thanks notafurry of www.kuro5hin.org for your pointed help with the stilted second paragraph and thank you Ween from #gentoo on openprojects.net for your clean description of portage.

This discussion has been archived. No new comments can be posted.

A Walk Through the Gentoo Linux Install Process

Comments Filter:
  • k5 (Score:3, Funny)

    by smileyy ( 11535 ) <smileyy@gmail.com> on Tuesday April 09, 2002 @02:07PM (#3310987)

    Once again demonstrating that k5 has better and more timely news than /.

    Oh god. What have I done? No, k5 sucks. Really. Stay away. Stay far, far away. You have absolutely no desire to get a k5 account.

    • Re:k5 (Score:2, Informative)

      by purplebear ( 229854 )
      Yeah. I was just thinking to myself, didn't K5 have this exact "feature" last week sometime?

      It seems /. is getting a little behind the times??
    • Re:k5 (Score:2, Offtopic)

      by grnbrg ( 140964 )
      Oh god. What have I done? No, k5 sucks. Really. Stay away. Stay far, far away. You have absolutely no desire to get a k5 account.


      You don't need to see these stories.

      This isn't the site you're looking for.

      Move along. Move along.


      grnbrg

    • When I need to ping a reliable site I ping Google. I've never experienced downtime with them. k5 OTOH...
  • by Anonymous Coward on Tuesday April 09, 2002 @02:09PM (#3311006)
    and no mention that "Gentoo Linux" is an anagram for "Lounge Toxin"?
  • Their website [gentoo.org] has a great look!

  • by Xafloc ( 48004 ) on Tuesday April 09, 2002 @02:12PM (#3311021) Homepage
    I have created a site [www.nod.to] that will allow you to post your Compile Times for the different packages, relative to your hardware.

    It's in alpha stage right now, but I'll add features as we go a long. Any suggestions [mailto] would be appreciated. You must signup first in order to post your compile times.

    Hopefully at some point, one willbe able to get a sense of how long it would take to install, say kde3.

  • by Rorschach1 ( 174480 ) on Tuesday April 09, 2002 @02:13PM (#3311030) Homepage
    The Gentoo site looks about like that of every other distro out there... just fine if you know exactly what you're looking for. How about grabbing a few average Linux users and watching them try to find what they need? I think people just don't realize how poor a lot of the websites and documentation are.

    I think Debian, for example, is a fine installation. I've used it frequently. But the website really irritated me when I needed to find some specific floppy images and hardware support the other day. I got so frustrated that I finally gave up and went to FreeBSD. It's far from perfect, but I found what I was looking for in short order and quickly had the machine up and running.

    Here's a question for anyone involved in the production of ANY distro out there: Is there ANY form of usability testing that goes into these sites? What's the process these people are using for designing the sites?
    • Ah, yes, usability testing..What a crock that is.

      There are two types of "usable":

      One is "usable" because it's close to what the user is used to.
      The other is "usable" because it appeals to someon who has never used that interface before.

      Funny, the only people I hear talking about usability are those who complain they can't do something, because the 'new' interface doesn't emulate what they're already used to..

      I never liked how Microsoft's site worked, and people looked at me strange.
      Friends never liked how Novell's site worked, and I looked at them strange..

      Would you rather have a distro maintainer spending hours and hours on their website, or the distro?

      I guess the solution is just: "Get used to it."

      • I think that attitude is the core of the problem. There IS such a thing as usable, and some designs are just plain BAD. My sister's finishing up a Master's at Stanford in the field, and she's shown me that there's a hell of a lot more to it than I would have thought.

        I run a busy (military) website myself, and I've found that a lot of the users on the site don't use the site in the same way I would. They get the information they need, and they put up with a sub-optimal interface, but if I can find out what they're trying to do it's often a matter of a simple change to allow them to do it with a lot more efficiency. You can't ever ignore the users and tell them to "get used to it", just like saying "read the source code" doesn't cut it as documentation for most folks.

        • I run a busy (military) website myself, and I've found that a lot of the users on the site don't use the site in the same way I would. They get the information they need, and they put up with a sub-optimal interface, but if I can find out what they're trying to do it's often a matter of a simple change to allow them to do it with a lot more efficiency.

          I apologize if it seemed a personal attack, it wasn't. I defiantely wish you luck, but it's not going to happen. People who are used to what you think is sub-optimal (and yes, genuine crap does exist), are going to complain when you make a change. How far do you take that? Let the users build their own interfaces? Maybe the interface to build your own interface is confusing to some..

          How do you say Tomato, Tomato in text?
          Personally, I think economics is crap theory too.
          You can take any course or track, and learn a LOT of detail about that particular subject. Some you'll agree with, some you won't.

          A college degree doesn't necessarily make something/someone viable. So don't accept that just because someone is being taught something, that they'll know all there is to know.
          Just stay open to opinions..

  • My Experience (Score:3, Interesting)

    by XBL ( 305578 ) on Tuesday April 09, 2002 @02:13PM (#3311031)
    I think Gentoo is great. It's FreeBSD, clean and fast. It would definitely take some work to get it up to a point where all of your desktop toys work, but I don't care about that stuff much.

    My only problem with the installation was that it didn't like the partitions I made with Partition Magic. It installed fine, but afterword when I tried to setup Grub, the /boot partition somehow disappeared! fsck chucked out some serious errors, and I had to start over again... and that was not fun.

    It was rather annoying, the babysitting. You just have to sit there an type in a lame command or two now and then. Why can't the installer do that for me?

    In summary, use Gentoo because it's not-bloated, fast, easier than Debian (in my opinion), and Portage is great.
    • Re:My Experience (Score:3, Interesting)

      by athakur999 ( 44340 )
      I've been using Gentoo for a few months now, and like others I've found it a great distro. It definately forces you to learn alot about your system, but does so in a nice way.

      My biggest nit pick is that I wish Portage had a better way of tracking changes between package versions. Sometimes the only difference between two versions is a few lines of a Gentoo-supplied script or config file. When you upgrade the package it forces you you to recompile the whole thing, even though the changes didn't do anything that would have affected compilation.

      Anyway, speaking of Portage, doesn't anyone know what the equivalent of the old-school "emerge --world update" is (to make it look up EVERY installed package)? During a world update the new Portage will only update packages that appear in your "favorites" file. If it does, only then will it update dependencies not in your "favorites" file.
      • What I did was use /usr/lib/portage/pkglist to get a list of packages installed, stripped the version numbers from them and put it in my world file. Then I just did a emerge --update world

        My biggest gripe with Gentoo right now is the QA on ebuild's, one good example is the app-misc/xcircuit ebuild, as of yesterday it was still broken because of stupid typos, on the plus side ebuild's are very easy to write yourself

      • ccache to the rescue (Score:2, Interesting)

        by raulmazda ( 87 )

        My biggest nit pick is that I wish Portage had a better way of tracking changes between package versions. Sometimes the only difference between two versions is a few lines of a Gentoo-supplied script or config file. When you upgrade the package it forces you you to recompile the whole thing, even though the changes didn't do anything that would have affected compilation.

        I don't know if there's a good Gentoo specific answer to your question, but you could speed up the n+1th c/c++ compile if you used ccache to compile your software. See ccache.samba.org [samba.org].

        ccache and its predecessor, compilercache, save me large quantities of time compiling things for work and play.

  • rock (Score:5, Interesting)

    by President Chimp Toe ( 552720 ) on Tuesday April 09, 2002 @02:16PM (#3311056)
    Rock Linux [rocklinux.org] sounds pretty similar. Anyone know how they compare?
  • by Anonymous Coward on Tuesday April 09, 2002 @02:20PM (#3311085)
    A wellwritten article on slashdot. I'm buying a skitrip to hell.
  • Real Linux (Score:1, Interesting)

    by Anonymous Coward
    I would suggest that anyone wanting real control over a linux box use the LFS (linux from scratch) distrobution. You can find it here LSF.ORG [linuxfromscratch.org].

    This is truly the way to make a customized system. The Problem with the BSD ports system is that It tells you what is the best version to run. If you do it this way you will have a complete understanding of your system.

    In Short: If you really want a geeked out version of linux. Do it from scratch with LFS.
    • Couldn't agree more, I went from Mandrake to LFS and I love it. In case you are curious, this is roughly how the install process will go (depending on your level of experience of course):

      Your first install will take about a week and will not work. The second one will take a few days and you'll have a perfectly working "stock" LFS. Then you'll try to get fancy, and end up with an uncomprehensible mess on your next one. After that, you'll be able to get a new system up and running (with a desktop environment and everything) in a weekend or so, and after a few weeks of "settling in" will have the perfect GNU/Linux distro - yours.

      In the end, for me at least, it's worth the work: it's fast, only has what you need/want, behaves exactly as you want it to, etc. It's certainly not for everbody, and probably won't be the thing to get Windows users to switch over, but this is the customizable and flexible part of Linux that we all gush over all the time.

      PS oh yeah, you will need a host system to build it on, but only for like half an hour (ok, maybe a bit longer), and there's plenty of lightweight and quick to install distros out there that will do the job.

  • Minor nit (Score:5, Informative)

    by Mike Connell ( 81274 ) on Tuesday April 09, 2002 @02:23PM (#3311123) Homepage
    This is not a conservative distribution like Debian,

    There are 3 debians, at varying degrees of 'conservativyosity'

    Stable: Potato is dead stable and conservative. To put it another way: it's old, and you probably wouldn't want it on your desktop.

    Testing: Woody is very stable (IME more stable than RH FWIW), and quite up to date (g++ 3 etc)

    Unstable: Not sure of the name because I wouldn't use it. I don't know how stable it is, but I am thinking that it's quite up to date with the latest releases.

    Anyway, the point I'm trying to make in a rather longwinded mannar, is that debian will be as conservative as you want it to be. There is always a tradeoff between "up to date" and "no nasty surprises" debian is very honest about letting you choose.
    • Re:Minor nit (Score:2, Informative)

      by AaronMB ( 136741 )
      > Unstable: Not sure of the name because I wouldn't use it. I don't know how stable it is, but I am thinking that it's quite up to date with the latest releases.

      Its Sid, and as to being unstable, i've found that it isn't. I've used unstable on my laptop for ~6 months now, and not once have I had any sort of issues with it. As always, YMMV, but it has been great for me.
  • the one thing I miss about debian(ok, so there others, but this one in particular) and am wondering if I am just missing it in the config files somewhere. Does gentoo have a menu system? with debian when you install a new package, it throws a menu entry on all window managers you have installed(windowmaker, blackbox, kde, gnome, etc). Thus, whether I use blackbox or windowmaker or whatever, I have all the programs in a nice menu that is identical across most window managers(kde is a notable exception where stuff is slightly different). Is there a system like this in Gentoo and i'm missing it? if not, are there any plans to include something like it?
  • by stevenbee ( 227371 ) on Tuesday April 09, 2002 @02:25PM (#3311133)
    Can someone explain this term?
    Is it like: "I never metadistribution I didn't like?"

    ; )

    • One of Gentoo's many features is profiles, i.e. lists of packages that that describe your installed system. The default profile is a minimal console installation.

      You could, if you desired, make a custom profile describing the linux installation of your dreams. (Hint for Gentoo users: the system profile is determined by the symlink /etc/make.profile that by default points to /usr/portage/profiles/default-1.0 )

      For example you could have server, workstation, BBC, mosix-cluster, etc profiles. A generous use of the --buildpkg flag for emerge (or the lower level, 'ebuild foo.ebuild package') and you have a collection of binary packages ripe for distribution as a, well, distribution. Hence, the concept of meta-distribution.

    • A metadistribution would be a distribution of instructions for building a system, rather than the system itself. This will let you get your packages from the original authors, while getting a set of packages that have been researched (found, configured, etc) by someone who is putting together a coherent system.

  • My Gentoo Install (Score:4, Informative)

    by Trolocsis ( 319617 ) on Tuesday April 09, 2002 @02:26PM (#3311137) Homepage
    I have gentoo up and running on my laptop, and my desktop. I consider myself as an intermediate to semi-advanced linux buff, but I had never really knew the intricities of installing a distribution from complete source and what happens at the core of the installation (thanks to all those GUI installers). It was a great learning experience - at times I had some trouble, but #gentoo actually has the gentoo developers in there helping people with problems and trying to resolve them. Kudos to the Gentoo team.

    Upgrading to a new version of gentoo is easy, and straight forward with the Portage system. There is no need to reinstall, like some flavors of linux, just a simple emerge --update system and an emerge --update world.

    The distro is fast - in fact - much faster than my mandrake box I had on my desktop (before I migrated to gentoo). I have no benchmarks, but the bloat is gone, and the speed is there.
  • Wow, Gentoo IS advanced. They have a time machine!
    • Re:2.4.19? (Score:2, Informative)

      by SagSaw ( 219314 )
      One of the 13 available kernels is a 2.4.19pre? patched with XFS and other goodies. If you don't want bleeding edge, various other kernels are availible, including 2.4.4 and a couple of 2.2's for those who want more stable proved kernels.
      • Re:2.4.19? (Score:2, Informative)

        by ShawnX ( 260531 )
        Careful gentoo's 2.4.19 is my patch: linux-2.4.19-pre2-ac4-xfs-shawn10a available at: http://xfs.sh0n.net [sh0n.net] contains: XFS Patches w/ Rmap + AC.

        The problem is, I broke quota hard and I should have -shawn11 out for gentoo tonight or so. AC Quota / XFS quota really take a beating ;) You can find me on IRC on openprojects.net in #Kernelnewbies, #gentoo and other channels I'm ShawnXFS ;)
  • by yamla ( 136560 )
    Anyone know how well Gentoo works with LVM, Linux's logical volumn manager [sistina.com]? I run Mandrake 8.1 at work and probably won't switch but at home, I also run Mandrake and would likely switch if the dist properly supported lvm. Particularly if that dist supported KDE 3 which I see Gentoo does.
    • Re:LVM? (Score:2, Informative)

      by Anonymous Coward
      quote from: http://www.gentoo.org/doc/build.html [gentoo.org]

      "15.Final steps: install additional packages

      You may need to install some additional packages in the Portage tree if you are using any optional features like XFS or LVM. If you're using XFS, you should emerge the xfsprogs ebuild:

      Code listing 27

      # emerge sys-apps/xfsprogs

      If you're using LVM, you should emerge the lvm-user ebuild:

      Code listing 28

      # emerge --usepkg sys-apps/lvm-user

      "
  • It's true, you know! (Score:4, Interesting)

    by MilesBehind ( 517130 ) <kenkm@rog[ ].com ['ers' in gap]> on Tuesday April 09, 2002 @02:36PM (#3311216)
    Gentoo is a nice distro with tons of potential. The debate whether it is neccessary to compile glibc and everything in the system from scratch aside, the freedom that it allows is incredible. It reminds me a lot of slackware in its openness. There's no shoving stuff down your throat, just one swank port system.

    Not to start a distro war, but I always thought linux distros fall into 2 categories; on one side the colorful, happy-newbie distros with many good features and nice interfaces, but ultimately dreadful underbelly that you get exposed to when things go wrong. On the other hand are distros like slack and debian; will install on anything initially, run fine, and if something goes wrong, they're as transparent as can be and tweakable as hell.

    Problem with slack is that the community is slowly dwindling. Security updates get less frequent, packages are updated and maintained at a slower pace, ultimately making most of the stuff installed non-distro specific and thereby more complex and harder to update.

    Gentoo is as open and simple as slack, just as tweakable and in active development. If the community doesn't get discouraged with some early troubles with the portage system and documentation proliferates, there is a very bright future for the distro.
    • ...it will probably be even better when AMD Hammer gets out. The best way to squeeze some performance out of it will be to compile for that specific architecture (of course, the real gains can only come when people start programming specifically with 64-bit in mind, but that is a while off).
  • by ncc74656 ( 45571 ) <scott@alfter.us> on Tuesday April 09, 2002 @02:39PM (#3311239) Homepage Journal
    I've been using Linux From Scratch [linuxfromscratch.org] for a while now...when I replaced SuSE with LFS on my home server, I noticed a considerable increase in speed. Since Gentoo compiles everything from source (like LFS), it sounds like this'd be an easier way to get the benefits of LFS. Instead of having to babysit the machine while each package is built, you tell it what to build and let it go to town.

    I have a R*dh*t box at work (that was set up by a total incompetent, which makes things even worse) that's screaming for an upgrade...while I can get LFS going in not much time now, I think I'll end up giving Gentoo a shot when the time comes.

  • Tip for i686 users (Score:4, Informative)

    by Kaypro ( 35263 ) on Tuesday April 09, 2002 @02:42PM (#3311268)
    If you have an i686 I recommend getting the i686 iso and simply jumping to the stage 3 install. Basically you'll save yourself a bunch o time since the base install is already compiled for your CPU. No sense in doing over again.

    You'll still have to install X and apps and the kernel, but at least the base will be taken care of.

    Switched to Gentoo 6 months ago from FreeBSD/Linux setup and haven't looked back since.
    Even put it on a new production server. Very nice.

    Have fun with what IMHO is the BEST distrib around!
  • Yeah, right. (Score:4, Insightful)

    by josh crawley ( 537561 ) on Tuesday April 09, 2002 @02:43PM (#3311279)
    This distribution SOUNDS nice, but plain sucks in practice. First, to remove the suckage, have a cd full of source tars. No need for the net.

    That in itself is the main gripe. Bandwidth is the biggest problem. I can bring my computer to my college to download an image (or few). It's big, but once a few months isn't bad. However, all I've got is a modem connection at home (and I'm sure gentoo's program doesnt support resuming). What?! KDE desnt come with it? Guess I'll have to download it. (a day and a half later)... Still isn't done! DAMN! Heh, and then comes compile-time.

    Face it, this distribution is for high bandwidth connections, not for us modem users. And what's really funny is that just yesterday, Slashdot posts article: "Time Warner to Charge Extra for Over-Quota Bandwidth". Yeah, these go together real well.... Reeeeal well.
    • No kidding. I'm getting a bit sick of the tripe these folks with fat pipes keep spouting. I'd like to see some of these folks drop back down to the three and a half hour download just for the kernel. I promise they wouldn't be so damn smug ;)
      Seriously though, it sounds like a great idea, and I am sure it is wonderful if you have the throughput, but let's face it... most folks don't.
      • "Seriously though, it sounds like a great idea, and I am sure it is wonderful if you have the throughput, but let's face it... most folks don't."

        Wonderful statement. I'm betting that this distro would be wonderful... if I had 24/7 access to decently high bandwidth. Still, that aside, it comes to something else.

        (enter cable/dsl/high speed provider): Either you are stuck with sucky slow modem connections, or you can PAY THROUGH THE NOSE for the *permission* to have a high connection to your home. Then we can discuss on the payment of data. Your first born son would be sufficent payment for the first three months.
    • Re:Yeah, right. (Score:3, Informative)

      by SagSaw ( 219314 )
      "(and I'm sure gentoo's program doesnt support resuming)"

      It can use wget, prozilla, or lukemftp out of the box, but you can use any downloader you want; just set FETCHCOMMAND appropriatly.

      "And what's really funny is that just yesterday, Slashdot posts article: "Time Warner to Charge Extra for Over-Quota Bandwidth". Yeah, these go together real well.... Reeeeal well."

      I doubt even the most compulsive upgrader will never approach the quota due to gentoo. The source packages that I've downloaded over the past three months take up 1.5G. At 500M per month, I doubt the quotas will be a problem. Modem use, however, is a problem.
    • Re:Yeah, right. (Score:3, Insightful)

      by cjpez ( 148000 )
      Okay, so don't use Gentoo, then. If you could walk into a Best Buy and purchase a copy of Gentoo, I'm guessing that listed alongside the hardware requirements there'd be "broadband internet connection."

      Nobody's forcing you to use Gentoo over a modem connection; to say that it sucks because it requires something you don't have is just insane. It's like me complaining that Quake 3 sucks because I'm running in software mode on a card w/ 4MB of memory.

    • Of course that doesn't really affect those who do have high bandwidth connections and don't use shit like Time Warner to begin with.

      btw, there are still modem users out there?

    • Re:Yeah, right. (Score:4, Interesting)

      by Steve Hamlin ( 29353 ) on Tuesday April 09, 2002 @05:31PM (#3312362) Homepage

      This distribution SOUNDS nice, but plain sucks in practice.

      No, this distribution IS nice, but it plain sucks for YOU in practice.

      That in itself is the main gripe. Bandwidth is the biggest problem.

      Keep in mind, this is YOUR gripe. Bandwidth is only a problem if you are intending on downloading a lot of data,

      - like this distribution is designed to do from the ground on up.

      Face it, this distribution is for high bandwidth connections, not for us modem users.

      So?? How is that a bad thing? Don't use it. Not every distribution was designed for home modem users. I have lots of bandwidth, and am happy that I can compile the entire OS from scratch, using up-to-date sources. Are you going to demand that Debian remove the net install option, too?

      You wouldn't be surprised that a PPC distribution doesn't work well on your x86. Dont't be surprised when this bandwidth-required distro doesn't work well on your bandwidth-lacking machine.

      I think Daniel (& co.) has done an absolutely awesome job on Gentoo Linux, and deserves compliments, not people criticizing him for designing HIS distribution exactly the way he wants.

      </end rant>
  • compiler (Score:5, Interesting)

    by brer_rabbit ( 195413 ) on Tuesday April 09, 2002 @03:01PM (#3311394) Journal
    it'd be nice if one of these compile-it-yourself distributions worked with Intel's Linux C++ compiler (icc). Though Intel's compiler still doesn't support compiling the kernel and some other stuff, lots of software compiles just fine with icc. You can consistently obtain 10-20% improvements over gcc 2.9x in cpu intensive applications using icc (I haven't compared versus gcc 3.0 yet).

    The icc license should be ok for home users to compile programs for their own use with it. I think you only have to buy the license if you plan on distributing binaries.
    • of course if you are compiling most of your Linux distro, you probably care about things like supporting free software and such...
      • If I'm compiling my own distro it's because I prefer my -O options to what some vendor thinks are the correct compiler optimizations for my processor.

        Using a commercial compiler and supporting free software aren't mutually exclusive. I write, maintain, and contribute to multiple projects.
        And if I cared about supporting free software monetarily, I'd buy Redhat's overpriced cdroms, which I might do for their upcoming release.
    • This is a nice idea, and was addressed on the Gentoo list a few months back. The problem is that many packages don't compile properly using ICC. You could probably have a flag in the ebuild (package) stating whether it supports ICC or not, but I suspect that this would lead to more problems then the 10% speed boost would justify.
  • is a complete distro compile re-install.
    Basically I install my distro, say Suse, with everything I want, then type somthing like 'compile all' and have it automatically recompile everything. A nice extra would be if it could grab the source from my choice of locations:HD, DVD,CD,Net, etc...

    Quite frankly I'm getting a little burned out on tweaking my system. I just want to use it, and spend time with my kids.
    • Gentoo is exactly what you are looking for. Not only can you recompile your whole system, but you can put the optimizations you want in a global make file.

      To recompile your entire system do:
      emerge glibc; emerge --update world --emptytree

      This will recompile glibc, then recompile every other piece of software on your entire system. Pretty slick eh.
      • Thats nice. I'll definiatly give it a try.
        Does it have to get the source from the internet, or does it come on disk.
        Obviously the disk would fall out of date, but it would be a hassle to download all the source via the internet with my dial-up.
        I wouldn't mind paying 10 bucks for a disk with the latest stable source every few months.
  • I'm a windows user. I use windows at work and run it on my computers at home. I've always wanted to install Linux on one of my machines (There is only so much drooling over nice KDE screenshots that I can take.)

    I'm fortunate enough to have "Linux friend" who helps me.. but more often than not they type and I watch. I've made attempts at installing Slackware, Gentoo and Debian. The most recent attempt (successful) involved my friend spending quite a bit of time battling away at the console to download the latest Debian bits. So I now have a working KDE system that I can play around with to learn the ropes. And this is what I wanted.

    But the biggest problem I faced when trying to learn Linux is the installation process. It's discouraged me no end. In my defense, I'm not stupid, I'm actually a software engineer, although yes.. purely windows (and no, not VB).

    My point (getting there) is that you can say what you will about windows but it beats Linux hands down on the installation. Until the Linux installation process becomes as simple as booting from a CD and clicking "Next" a few hundred times, it will not have the user base it deserves.

    I know there's plenty of documentation, help, support, walkthroughs etc.. etc.. but it's just not enough. I haven't found a distribution with a one-off graphical installer (and neither has my friend). There's always a bunch of commands you're going to have to learn and instructions to follow. For many (including myself), this is too daunting, and I don't want to spend a great deal of time reading up on something beforehand.

    I'm not trying to troll here I just think that until we see more distributions with simpler-than-simple installers, Linux will very much remain "underground".

    So if there's no distribution that does this already, can a Linux code-monkey write an app for windows that downloads and burns the desired Linux, then having booted from the CD, walks you through from start to finish, clicking on "Next" and "OK" etc..?
    • Your problem is that you tried three distros targeted at a competent experienced Linux user. If you tried Mandrake, SuSE or Red Hat, I assure you your impression of the install process would be absolutely different.

      "Linux is hard to install" was a popular attack on Linux a couple of years ago, so most commercial distro vendors pushed on this issue and developped simple graphical installers. Most commercial distros are definitely not more dificult to install than Windows, and most are better documented with online help.

      The inherent complexity of installing Linux is that you have to repartition a hard disk, which is unnecesarry in most cases with Windows, but this is a non-issue if you're using the whole hard drive for Linux.

      When you get comfortable with the user-friendlier variants of Linux, you'll appreciate the power you are given by Gentoo, Debian, or *BSD's.
    • I am sure this has been pointed out already, but I'll throw my vote in - of course you'll find the install process dificult if you are using "advanced" distros, it's kind of like saying that LFS [linuxfromscratch.org] is "not there yet" because the install process is complicated.

      Mandrake's installer beats any Windows installation hands down (of course Windows users rarely install it, but anyway); if someone not familiar with the Linux vs. Windows FUD were shown the installation of Win2K (for example) and an 8.x Mandrake, they'd simply laugh if they were told that Windows is the "user friendly" one. And RedHat's not far behind (behind Mandrake that is, not Windows) in that department, either.

      Of course you'll always have the extra step of selecting software to install to complicate things. I just love it when people use these arguments - "Linux is too dificult - it comes with software!"

    • You ought to try a different distribution - Redhat or Caldera maybe - they all have very easy-to-use graphical installation programs - just as easy to use as Windows, really.

      Personally I prefer Windows over Linux, but the distribution of Linux I do use is 'ZipSlack' - it's a Slackware distribution packaged in a 32Mb zip file - just uncompress onto a FAT partition and boot into dos. Excecute the Linux.bat file. Presto! No need to set aside a partition or anything. I have it running on an old 486 laptop. (No X-Windows, though. You'd have to install that yourself :-P)
  • To those who would like to try Gentoo on your spiffy new TiBooks, iBooks, and other expensive Mac hardware, it is my great pleasure to present...

    Gentoo-PPC [sunsite.dk]

    I did it in about a week on my TiBook [apple.com] and with some luck and great help is now available from http://gentooppc.sunsite.dk/ [sunsite.dk].

    Think Different. :p
    Kain

  • by Speare ( 84249 ) on Tuesday April 09, 2002 @03:26PM (#3311563) Homepage Journal

    The leadin says that Gentoo eliminates all that RPM dependency hell. I agree, that's how most newcomers to the RPM scheme see it. A lack of higher tools and a lack of understanding has left many a new RPM user crying in frustration.

    I haven't used Gentoo yet, and it may be the greatest thing since sliced bread. In the interests of helping newcomers who try RPM-based distros, however, a couple of points...

    RPM is a package format, and rpm is the low-level tool that deals with those files. If you use rpm directly, you'll have to deal with the deluge of interconnecting dependencies yourself. However, it was not designed to be the sole front-line tool, it's the workhorse.

    Unlike the Debian strains which all adopted the apt-get tool, each RPM-based distro has gone their own way with dependency management. Debian doesn't seem to focus so much on a distinction between dependency management and package management.

    This dependency management is typically the commercialized aspect of the commercialized distro market: pay a value-added subscription fee for the ease of using a simplified network based package update/installer as a service, as well as some preferential bandwidth considerations. Faster downloads, push-down email notices, scheduled automatic installations, and other value-added services are attractive to corporate and casual users.

    Service tools like up2date, redcarpet, and the like are the intended front-ends that use the rpm mechanisms to seek, download, validate, and install packages.

    Much of the problem with package systems, rpm or deb, lies in the unorganized and untested packages produced haphazardly by small project folks, and the ad-hoc installations by casual users. The end users try rpm directly, or the weak gui equivalents, and at the first sign of dependency problems, they start using --nodeps or --force. Paraphrasing Asimov, "--force is the last refuge of the incompetent." The surest way to bollox an RPM machine is to --force a few packages or remove them with --nodeps, leaving a patchwork of unsatisfied dependencies. The surest way for a package maintainer to encourage such destruction is to blindly make packages that depend on too much, or too little.

    Package management needs to grow up, and recognize the experimenter's needs: add tools at whim, try it a while, and remove it.

    One: If you're not an expert, and want to play with a package for a bit, see if one is produced by your distribution first. Failing that, then see if someone's made a package intended for your version of your distribution. Unless you're going to spend the time reading the source code, it's usually a waste of time and energy to rebuild a package, and it'll be less compatible with your distro anyway.

    Two: If you manage a package, and your program can use X or libaudio or whatever but doesn't absolutely require it, then consider making two packages or making your program smart enough to use what's present at runtime, rather than blindly depend on it being present at installation time.

    Three: The key to user-interface design is that the interface needs to understand the user. Not the other way around. Focus on the needs of the expected types of user: neophyte through master. If you're new, --help and RTFM aren't enough. Don't just teach the user to fulfill the tool's needs, teach your tool to anticipate the user's goals. Don't just teach people to use RPM directly, but instead provide smooth tools that use RPM behind-the-scenes.

    This has gotten longer than I expected; I'd appreciate constructive replies.

    • by autechre ( 121980 ) on Tuesday April 09, 2002 @03:56PM (#3311775) Homepage
      Much of the dependency problems do stem from the way software is packaged. For many RPM-based distributions, they have 1 or 2 CDs worth of material where the packages are all designed to work well together, and then everything else is "contrib", and is not controlled as tightly (or at all). This is very bad.

      The reason that tools like apt-get work very well with Debian is that all 8,000 packages are actually forced to follow guidelines before they are accepted. They also _are_ tested before they get into "testing" from "unstable", and tested even more thoroughly before "stable" is released. There is a policy that actually exists, and it is adhered to strictly.

      In regards to your "multiple versions" suggestion, Debian does this quite frequently. If a package has a version with a Gnome GUI, but can be used without it, Debian will have a base package for that software, and another package you can install for the Gnome GUI. A similar thing is done with PHP and the various modules (PostgreSQL support, etc.).

      To comment on another poster's reply: apt never automatically installs anything for you. If the package you requested to install has unmet dependencies, it will prompt you with the names of the packages which need to be installed/removed, and not continue unless you confirm.

      • On the other hand, the Debian's "centralized" approach means that many third parties don't bother making their own .debs, and Debian users are forced to work around the standard packages (not necessarily a bad thing, but then, why use packaging system if you're just going to work around it?), or wait interminably for a busy package maintainer to release a new package. For instance, my laptop require X 4.1.99 or later (or patches for the Radeon Mobility chipset), but the X Strike Force hasn't yet managed to move past 4.1.0.

        Other things about Debian have languished, for instance the installer. Debian's default installers, using a 2.2 kernel, won't even boot on my laptop (eventually found my way around to the ide images). Debian's installers are the only installers that didn't boot on my laptop -- Sorcerer installed like a dream, as did Red Hat's and Mandrake's.

        My preference has turned out to be source management systems, like those found in Sorcerer and Lunar Penguin.

        -Paul Komarek
    • Dependencies on a system sucks, sucks, sucks. Tried compiling perl 5.6.1 on a RedHat box? Chaos management replaces system administration!

      Once you have one piece of non-rpm software, it just gets worse. Officially, you have an older version. You may even have a good reason why you custom-compiled in the first place. Anyhow, dependencies start complaining once you start upgrading packages that depend on what you custom-built.

      The way to go is to integrate package management into

      ./configure
      make
      make test
      make install

      That would be really, really nice and basically make all distros work together again!
    • RPM, and any other tool that uses some form of database for dependency checking, is incredibly broken. The entire package management falls down as soon as a single major package (like, say, perl) is installed from source.

      It does not strike me as reasonable that I should have to wait for an RPM maintainer to create an RPM of the newest release. Nor does it strike me as reasonable to expect me to know how or want to build my own RPM. I would much rather be able to install my own utilities from source and not have to give up ever using the package tool ever again because the database doesn't know that the "missing" dependencies actually exist!

      A more sensible scheme could be put together using nothing more than bash, grep, tar, and ld. The algorithm would look similar to the following:

      For each executable file in the package we are installing:
      1. run ld $file |grep "0x00000000"
      2. if output = "", continue;
      3. display a "missing dependency" message.
      For dependency on other executables, use the which command. Just about any package requirement can be located automatically without the use of a database. Hell, you can grep through /proc if you want to check things like CPU speed, architecture, available RAM, etc.

      Until package management utilities check for actual presence rather than a registered presence, they will continue to have the problems you have described.

      Nathan

      • Until package management utilities check for actual presence rather than a registered presence, they will continue to have the problems you have described.

        If Gentoo's portage handles this as nicely as FreeBSD's ports, then you should be in heaven. I routinely manually install programs on the FreeBSD boxen that I administer and have the ports system detect their presence when deciding whether a new package's dependencies are met.
    • I wanted to put in a good word for Mandrake's rpm management tools. They have urpmi and friends which operate from the the command line, and a very nice gui wrapper for these (whose name I always forget 'cause you usually start it from an icon). Not only do these help manage dependencies, but they also track rpm archives for you.

      Thus, when you type "urpmi foo.rpm", you get something like "foo.rpm requires bar.rpm. Is this okay?" followed by "please insert cd 3" or else it automatically grabs it from the net (if you've configured it to do so). Really surprising, and very nice, was when uninstalling "foo.rpm", it asked if it was okay to remove "bar.rpm". I'm not sure if it always does that latter bit, because I saw it happen during an installation.

      -Paul Komarek
  • I installed gentoo on one of my boxes a couple of days ago - here is my impression:

    Speed, speed, speed 0 just like the author stated

    the docs are excellent - I spent a half day figureing out how to st up the nvidia drivers and x, just becasue I didn't read the docs. I finally read the desktop guide, and it had everything I needed.

    Maturity - I've also installed sorcerer (the latest release) and while I like it I think gentoio is more mature. No glitches during the install - sorcerer has some kde hangups. No slight to sorcerer, I just think gentoo has had more time to work out the bugs

    • Thanks for the info - I was just about to post an inquiry "has anyone compared gentoo to sorcerer?" I was inspired to try Sorcerer a few weeks ago, and although I really like the concept, I'm disenchanted.

      Like you, I never could get KDE to install with Sorcerer's utility, and I didn't want to bypass the utility and possibly lose package management features. And I also had great difficulty with the Nvidia drivers - it seems like the Sorcerer install for them has a recursive loop in it somewhere. Also, Sorcerer recently forked into two or three separate distros, one of them named something like "Looney Mooney" that doesn't exactly inspire my faith. And although I chafe at cute handholding like Mandrake's, or menu-driven configs that obscure most of the options, Sorcerer takes "lack of documentation" to a whole new level.

      Based on this article and your comment, I think I will give Gentoo a try when I have a few spare hours. Thanks again.

  • tip for installs (Score:5, Informative)

    by Raleel ( 30913 ) on Tuesday April 09, 2002 @03:28PM (#3311578)
    Portage figures out dependendies quite nicely, so take advantage of it. Pick a couple high level apps that you know you will use, and work on those first. For instance, I frequently do

    emerge evolution galeon lynx nessus xmms

    and it gets x, gnome, and all the bells and whistles that I need to run on my system, based on the USE variable set in my make.conf. Do the above and you can leave it go while you go to work or sleep and be assured that things went nicely.

    I'll also mention that if you do

    emerge evolution; emerge galeon;

    It will have the advantage of compiling in series, and thus maybe catching some things that you don't have to redo later, but the disadvantage of failing multiple times on something that does not have a perfect build script, and you can't track down what caused it. I do it with

    emerge evolution galeon

    because you can see what died easier (the last thing on the screen.
  • ... and I highly recommend it. It's slick, it's fast and it's easy to keep your system up to date. The install process seems complicated because it's all command line, but it's really quite easy and gives you a good feeling for your system.
  • I think it is worth mentioning the etymology of the name "Gentoo" for this distro. I believe that back in the day, it used to be called "Enoch [google.com]", but then they decided that they needed a new name... something based on penguins (of course!). Thus Gentoo was chosen, being (I think) a type of penguin known for being the best and fastest swimmer of all penguins.

    So here's some obligatory Gentoo links for you zoologoy freaks:

    Gentoo penguin [capu.net] : "The Gentoo penguin is a member of the genus Pygoscelis, which contains two other members, the Adelie and the Chinstrap. When inspecting the three, the Adelie looks more like the odd one in the group of three. Chinstraps and Gentoos share more morphological features, but the Gentoo is the most colorful of the three with its orangish beak and pinkish-orange feet. They can also be positively identified by an interorbit band of plumage that runs superiorly over the head."

    Pete & Barbara's Page [compuserve.com] : "Males have their maximum weight of about 8 kg just before moulting and their minimum weight of about 5.5kg just before mating. For females the maximum weight is 7.5kg just before moulting but their weight drops to below 5 kg when guarding the chicks in the nest."

    Gentoo Penguin: 10 Facts [aad.gov.au] : "Adults can be found throughout the year on breeding islands indicating that they are relatively sedentary. They feed on Rock cod, amphipods and cephalopods (mainly squid). Females tend to eat more krill than the males, while the males tend to eat more fish than the females. It is thought that gentoo penguins are gregarious at sea."

    Penguin Chicks [seaworld.org] : Come on... everyone loves baby animals! :)

    Seriously though, Gentoo Linux [gentoo.org] sounds really cool. I'm a die-hard Debian [debian.org] guy (especially with Woody [debian.org] going stable in May)... but I plan on giving Gentoo a try this week. And I wish the best to the developers.
  • At this point I'm feeling pretty 7-Up. I edit my /etc/fstab file, my /etc/hostname file and /etc/hosts. The passwd command is run to set the root passwd.


    aren't you going to tell us what it is?
  • It took me five hours to get the base Gentoo installed on my PIII with 128 megs of ram.

    Hmmm, much quicker than Windows. I did a WinME install last month. It took me most of a Saturday. Reboot. Click "yes". Reboot. Click "yes". Reboot. Install driver. Reboot. Reinstall driver. Reboot. ad infinitum.

    I haven't used Gentoo yet, but I can install FreeBSD, including sources, in about seven minutes. Add another five minutes in if I also install XFree86, KDE, Xmms, Mozilla, Linux support, etc.
  • ...is its attention to detail and aesthetics and its general sexiness (the word I was going to use slipped my mind -- I'm an eloquent speaker, trust me).

    After evolving from Mandrake and other n3wb distros, the typical linux user has the choice between Slackware, Debian, and LFS style distros. All of them are great for proclaiming one's leetness. Just being able to go through the installation process of any of the aforementioned is a testament to manliness even penis length cannot surmount.

    But what to do after that? Sure you got a badassed mofo distro, but it looks like shit! LFS and Slack use the horrid BSD style init-scripts (don't flame me...just from my experience from atleast a few years back, not that slack's updated versions since then ;-). Slack and LFS don't have decent package management/upgrading systems. Ever notice how slack packages show full version numbers in pkgtool ONLY for packages that were installed during setup, and not the ones you add later? And to add to that, NONE of the distros mentioned have good looking Redhat style init scripts that have the [OK] and the [Failed] signals to warn you how poorly you set up the system.

    Gentoo has all that and more. By default, it sets up color terminals for all users. No more fidgeting with .bashrc to add colour to your ls's. It makes everything setup sexily across your system. Every package that doesnt follow the system is setup under opt. It even thinks about what to do AFTER you get linux installed1 In debian you could always upgrade to SID and try to fix bugs in your packages. In LFS, you could always try to reinstall, and try to remember without looking all the urls for downloading all the patchfixes for all the packages, and race friends to see who can finish first. Slack doesn't have anything for that -- but never fear, gentoo does. After you setup the system, you can always try to figure out why you cant install vmware, or why certain packages are there in the portage tree but dont seem to install.

    And you can do it all with full colour ls listings. And that's enough rambling and bitching for me today.

A morsel of genuine history is a thing so rare as to be always valuable. -- Thomas Jefferson

Working...