Archive - Section

May 2nd, 2010

March 26th

Home Theater Specs

Introduction

I put up a page a while back detailing the parts and specifications of all of my computer systems. As mentioned on that page, the intent was to have an easily accessible reference of this information.  The same applies to this page, which lists the details of my home theater system.  There's not much to it, to be completely honest (being assembled back in 2003 when I was fresh out of college), but I recently had need to compile all of this information and figured it'd make sense to post it here for future reference.

I may add some more details in the future, but for now this is mostly just a component reference.

Return to top

Specifications

Component Model Notes
Television Sony KV-36HS500 36" CRT, 4:3
Optical Media Denon DVD-2200 Support for DVD-V, DVD-A, SACD, VCD, MP3/JPEG CD
Progressive Scan video output
Receiver Onkyo TX-NR900  
Speakers Front:
Infinity Alpha 50

Center:
Infinity Alpha 37c

Surround:
Infinity Alpha 25es

Subwoofer:
Velodyne CHT-15
35 Hz - 22 kHz
1" tweeter, 5 1/4" midrange, (2x) 8" woofers

45 Hz - 22 kHz
1" tweeter, 4" midrange, (2x) 6 1/2" woofers

60 Hz - 22 kHz
(2x) 1" tweeters, (2x) 5 1/4" woofers

40 Hz - 120 Hz
15" driver

Return to top

March 29th

Hardware Specs

Introduction

This page lists the components and specifications for my various pieces of computer hardware. This is meant to be an easy reference for myself when I need to figure out, for example, what specific motherboard I had purchased for my last computer, where to get the latest BIOS update for my laptop, etc. I'm placing it on my website simply because it's the easiest thing for me to access at any given time. Feel free to take a look at the specs if you're interested in such things.

Note:  This page is still under construction.

Return to top

blackdog  Custom-built Desktop (upgraded)

Component Model Notes Drivers Miscellaneous
Motherboard Gigabyte GA-P55A-UD4P Intel P55 chipset BIOS
All
Newegg
CPU Support
Wikipedia Core i Series Chipset List
CPU Intel Core i7-860 (SLBJJ) LGA 1156 (Socket H)
(4x) 2.80 GHz CPU /w HT, 1333 MHz FSB
8 MB L3, 45 nm, 95 W TDP
  Newegg
Wikipedia Core i7 CPU List
Memory (4x) G.SKILL F3-12800CL7D-4GBECO 8 GB (4x2GB), DDR3-1600 (PC3-12800), CAS 7-8-7-24-2N, 1.35v   Newegg
Hard Drive(s) Western Digital Raptor WD1500ADFD 150 GB, 10000 RPM, 16 MB Cache, Serial ATA 1.5 Gb/s   Newegg
Optical Drive(s) Samsung SH-S183L DVD-Writer DVD+/-R, DVD+/-RW, DL DVD+/-R, CD-R, CD-RW
Serial ATA 1.5 Gb/s
Firmware Newegg
Video Card EVGA GeForce GTX 460 FTW 1024MB 01G-P3-1377-TR Nvidia GeForce GTX 460 1GB GDDR5 Both Newegg
Sound Card Creative Labs Sound Blaster Audigy 2 Platinum (SB0240)   Windows
Linux
 
Network Card(s) (2x) Integrated Realtek RTL8111D LOM

Replaced:
Integrated Marvell Yukon LOM
1000BASE-T Gigabit Ethernet    
Power Supply Corsair HX620W 650 W   Newegg
Case Gigabyte Poseidon GZ-XA1CA-STB ATX / microATX   Newegg
Monitor (2x) ViewSonic G220fb 21" CRT, QXGA Windows Newegg
Input Device(s) Logitech Elite Keyboard
Logitech MX Revolution Mouse
  Windows
Windows
Newegg
Newegg
Speakers Logitech Z-5500 Digital 5.1 surround sound (digital discrete)
Dolby Digital and DTS Decoding
Dolby Pro Logic II Upmixing
  Newegg

Return to top

boxdog  Custom-built NAS

Component Model Notes Drivers Miscellaneous
Motherboard VIA EPIA SN10000EG VIA CN896 North Bridge
VIA VT8251 South Bridge
Windows Logic Supply
PCI Express Riser Card
CPU Embedded VIA C7 (1x) 1.0 GHz CPU, 400 MHz FSB
128 KB L2, 90 nm, 9 W TDP
  Wikipedia C7 CPU List
Memory PNY MD2048SD2-667 2 GB, DDR2-667 (PC2-5300), CAS 5-5-5   Newegg
Hard Drive(s) System: Transcend TS4GCF300
Data: (3x) Samsung SpinPoint F1 HD103UJ
Controller: 3ware 9650SE-4LPML
4 GB, 300x, Type I Compact Flash
1 TB, 7200 RPM, 32 MB Cache, Serial ATA 3 Gb/s
PCI Express x4, 4-port Serial ATA 3 Gb/s, RAID 5


All
Newegg - System
Newegg - Data
Newegg - Controller
Optical Drive(s) Samsung SN-M242D Slim CD-Writer CD-R, CD-RW, DVD-ROM
ATAPI-4 Ultra DMA 2
Firmware  
Video Card Ingegrated VIA Chrome9 HC IGP      
Sound Card Integreated VIA Vinyl VT1708A HD Audio Codec      
Network Card(s) Integrated VIA VT6130 LOM 1000BASE-T Gigabit Ethernet    
Power Supply External Power Adapter 180 W
Included with case
   
Case Chenbro ES34069 Mini-ITX   Logic Supply

Return to top

showdog II  Custom-built Media Server, using recycled parts

Component Model Notes Drivers Miscellaneous
Motherboard ASUS P5B Deluxe Intel P965 chipset All Newegg
CPU Support
Wikipedia Core 2 Chipset List
CPU Intel Core 2 Duo E6600 (SL9S8) LGA 775 (Socket T)
(2x) 2.40 GHz CPU, 1066 MHz FSB
4 MB L2, 65 nm, 65 W TDP
  Newegg
Wikipedia Core 2 CPU List
Memory (2x) G.SKILL F2-6400CL5D-2GBNQ 2 GB (2x1GB), DDR2-800 (PC2-6400), CAS 5-5-5-15   Newegg
Hard Drive(s) Western Digital RE3 WD5002ABYS 500 GB, 7200 RPM, 16 MB Cache, Serial ATA 3 Gb/s   Newegg
Optical Drive(s)        
Video Card EVGA e-GeForce 8800GTS 320MB Superclocked Nvidia GeForce 8800GTS 320MB Both Newegg
Sound Card Integrated Analog Devices AD1988B HD Audio CODEC   Linux  
Network Card(s) (2x) Integrated Marvell Yukon LOM 1000BASE-T Gigabit Ethernet    
Power Supply OCZ ModXStream Pro OCZ600MXSP 600 W   Newegg
Case Lian Li PC-67      
Monitor N/A - connected to home theater      
Input Device(s)        
Speakers N/A - connected to home theater      

Return to top

lapdog  Dell Latitude D620

Component Model Notes Drivers Miscellaneous
Motherboard Proprietary Motherboard Intel P945PM chipset BIOS Wikipedia Intel Mobile Chipset list
CPU Intel Core 2 Duo T5500 (SL9U8) Micro-FCBGA
(2x) 1.66 GHz CPU, 667 MHz FSB
2 MB L2, 65 nm, 34 W TDP
  Wikipedia Core 2 CPU List
Memory Hynix HYMP512S64CP8-Y5
Crucial CT12864AC667
(2x) 1 GB DDR2-667 (PC2-5300), CAS 5-5-5   Newegg (Crucial)
Hard Drive(s) Intel X25-V SSDSA2M040G2GC

Replaced:
Hitachi Travelstar 5K160 HTS541680J9SA00
40 GB, MLC, Serial ATA 3 Gb/s


80 GB, 5400 RPM, 8 MB Cache, Serial ATA 1.5 Gb/s
  Newegg


Newegg
Optical Drive(s) TSST TS-L632D DVD+/-R, DVD+/-RW, DL DVD+R, CD-R, CD-RW
ATAPI-4 Ultra DMA 2
Firmware  
Video Card Discrete Graphics Nvidia Quadro NVS 110M Windows
Linux
 
Sound Card SigmaTel STAC9200 Intel HD Audio Windows
Linux
 
Network Card(s) Broadcom NetXtreme BCM5752M
Intel PRO/Wireless 3945ABG
  Windows (Both)
Linux (Wireless)
 
Modem Conexant SmartHSF D110 HDA DF MDC V.92 Windows  
Power Supply Dell PA-12 65 W    
Monitor Dell TrueLife TFT-LCD Panel 14.1", WXGA+    
Input Device(s) Logitech MediaPlay Mouse   Windows Newegg
Speakers Logitech mm28      

Return to top

litldog  Dell Inspiron 3800

Component Model Notes Drivers Miscellaneous
Motherboard Proprietary Motherboard Intel Mobile 440BX AGPset BIOS Wikipedia Pentium Pro/II/III Chipset list
CPU Intel Pentium III (SL3XU) FC-PGA (Socket 370)
(1x) 600 MHz CPU, 100 MHz FSB
256 KB L2, 0.18 m, 15.8 W TDP
  Wikipedia Pentium III CPU List
Memory Micron MT16LSDF3264HG-10EE4
Micron MT4LSDT864HG-10EB1
320 MB (256 MB + 64 MB) PC100 SDRAM, CAS 2-2-2    
Hard Drive(s) IBM Travelstar 40GN IC25N020ATCS04-0 20 GB, 4200 RPM, 2 MB Cache, ATA-5 Ultra DMA 4    
Optical Drive(s) LG DRN-8080B DCD-ROM, CD-ROM
ATAPI-4 Ultra DMA 2
Firmware  
Video Card Discrete Graphics ATI Mobility M1 (RAGE 128) Windows
Linux
 
Sound Card ESS Maestro 3i AC97 Windows
Linux
 
Network Card(s) todo      
Modem todo   Windows  
Power Supply Dell PA-6 70 W    
Monitor Dell TFT-LCD Panel 14.1", XGA    

Return to top

bigdog  Gateway P500

Component Model Notes Drivers Miscellaneous
Motherboard        
CPU        
Memory        
Hard Drive(s)        
Optical Drive(s)        
Video Card        
Sound Card        
Network Card(s)        
Modem        
Power Supply        
Monitor        

Return to top

olddog  Gateway P500

Component Model Notes Drivers Miscellaneous
Motherboard        
CPU        
Memory        
Hard Drive(s)        
Optical Drive(s)        
Video Card        
Sound Card        
Network Card(s)        
Modem        
Power Supply        
Monitor        

Return to top

zero  Dell PowerEdge 2950

Component Model Notes Drivers Miscellaneous
Motherboard Proprietary Motherboard Intel 5000X chipset BIOS  
CPU (2x) Intel Xeon E5310 (SLAEM) LGA 771 (Socket J)
(4x) 1.60 GHz CPU, 1066 MHz FSB
8 MB L2, 65 nm, 80 W TDP
  Wikipedia Xeon CPU List
Memory (4x) Hynix HYMP512F72CP8N3-Y5
(2x) GR2DF56728EL667Q
1 GB, DDR2-677 (PC2-5300) FB-DIMM
2 GB, DDR2-677 (PC2-5300) FB-DIMM
   
Embedded Server Management Dell Baseboard Management Controller
Dell Remote Access Controller
  Firmware (BMC)
Firmware (DRAC)
 
Hard Drive(s) (4x) Western Digital RE2 WD5000ABYS
Controller: Dell PERC 5/i Integrated
Backplane: 1x6 3.5"
500 GB, 7200 RPM, 16 MB Cache, Serial ATA 3 Gb/s
RAID 5
Firmware (PERC)  
Optical Drive(s) HLDS GCC-T10N CD-R, CD-RW, DVD-ROM
ATAPI-4 Ultra DMA 2
Firmware  
Video Card Discrete Graphics ATI ES1000   Windows
Network Card(s) (2x) Integrated Braodcom BCM5708C 1000BASE-T Gigabit Ethernet Firmware  
Power Supply (2x) 750W Energy Smart Redundant Power Supply 750 W, hot-swappable    

Return to top

March 28th

Coming Soon

Note:  This page hasn't been updated for quite some time. I'm not sure whether I'll begin using it again, but for now I'm leaving it here for archival purposes.

Introduction

I often hear about various games, movies, products, etc. that sound really interesting, but are still only in developmental stages. While this is nothing new, the problem for me is that I then tend to forget about said item once it's finally released. To paraphrase one of the greatest movies of all time, this is something we shall have to remedy[1].

In order to help with this problem, I'm going to start keeping track of new and upcoming stuff that I find interesting and/or particular noteworthy. Not only will this help me keep track of what's "Coming Soon", it'll also allow me to share this information with my visitors. Now everyone can see just how geeky I can be at times (though I maintain that I'm still not random!).

Each item will be posted to this page, along with a description and estimated release date. I'm not sure yet how populated this list will become, nor what I'll do with the entries once they're officially released, but I figure this will be an interesting experience regardless. To kick things off, here's the first batch of items.

Concerts


N/A

Games


N/A

Movies


Star Trek: The Next Generation: The Complete Series

  • Release Date: Tue, 10/02/2007

Yes, I'll admit it. I'm a Star Trek fan. I'm not a die-hard fan or anything, but I've always enjoyed the television shows and movies, going back to The Next Generation. (The Original Series, in case you're wondering, was well before my time and I never got into the reruns.) The Next Generation has been out on DVD for some time now, but it was originally released in season sets while I was still a poor college student. $110/season x 7 seasons isn't exactly affordable. Now that it's being released in a significantly discounted series box set, it's time to finally take the plunge. This is, after all, the TV show that got me into science fiction.

Stargate SG-1: The Complete Series

  • Release Date: Tue, 10/09/2007

I've been wanting to catch up on Stargate SG-1 for a few years now, though I guess since it's no longer on the air "catch up" is no longer the right word. I really enjoyed the original movie back in the day, and have more recently been enjoying Stargate Atlantis, but I missed out on SG-1 entirely. At ten seasons, it was just a bit too much for me to borrow from a friend and work through. Now that they're releasing a complete series boxed set, though, for a pretty significant discount over the original releases, it looks like I finally have the excuse I've been waiting for. :-) Complete details of the release can be found here.

Music


N/A

Archived Content


The Bourne Ultimatum

  • Release Date: Fri, 08/03/2007

This is another movie about which I'm cautiously optimistic. The Bourne Ultimatum is the third film in a trilogy of films based on the Robert Ludlum books of the same name. I thoroughly enjoyed The Bourne Identity, which came as quite a surprise to me as the trailer didn't excite me very much. I thought it had an intriguing story, a well-executed plot, and a great balance of action and drama. The Bourne Supremacy, however, was a letdown. The production quality seemed to drop considerably, and the provoking storyline was largely dropped and replaced by a number of boring and pointless action sequences. I can only guess that this shift was the result of a new director for the second film. Sadly, the director of the second film will also direct the third. I still find the world and overall storyline created by Ludblum intriguing, and am looking forward to watching the third and final installment of the franchise, but I think I may hold off and read some reviews of the movie before going to see it myself. I'd rather skip it altogether than spend money on another letdown.

I passed on this one. As I said, I'm a big fan of the original, but thought that the direction of the second film when severely downhill. Since the third was directed by the same as the second, I was nervous about the quality, and sure enough after seen a couple reviews similar to "The Bourne Ultimatum Made Me Sick", I knew this move wasn't for me.

Babylon 5: The Lost Tales - Voices in the Dark

  • Release Date: Tue, 07/31/2007

Yes, I'll admit it - I'm a Babylon 5 junkie. The show was phenomenal. The character development and scale and complexity of the main story line is rarely rivaled even today, and in my opinion has yet to be topped. Needless to say, I was delighted beyond words when it was announced last year that he would be developing a new series of direct-to-DVD movies beginning in 2007 entitled "Babylon 5: The Lost Tales", after a 5+ year hiatus from any B5-related projects. There was much rejoicing in the streets (ok, in the homes of sci-fi geeks everywhere).

Voices in the Dark is the first of the series to be released. It features two mini-movies focusing on two of the core characters of the series (John Sheridan and Elizabeth Lochley) as well as a third character from the spin-off series Crusade (Galen). It will be released on July 31, 2007.

Note to self: Look into new soundtrack as well, released by Varese Sarabande.

Now this, on the other hand, was fantastic. The DVD is divided into two halves, each telling a story focused on one of the major characters from the show (Lochley first, then Sheridan). The Lochley episode was ok - not great, but ok. The Sheridan episode, however, was fantastic. If you're a fan of the series, you'll definitely want to pick this up. Also, if you're a movie soundtrack buff, I recommend picking up the soundtrack as well. It's scored by Christopher Franke, the composer for the entire original series. Very good music.

Fantastic Four: Rise of the Silver Surfer

  • Release Date: Wed, 07/04/2007

I'm cautiously optimistic about this one. Despite the severe browbeating that the first Fantastic Four movie received by critics, I personally enjoyed it. Overall, it was a fun and enjoyable movie, with a decent storyline and a good cast that, for the most part, really nailed their roles. I'd expect the sequel, Fantastic Four: Rise of the Silver Surfer, to be at least as enjoyable as the original, but I'm waiting for a proper trailer before making my decision on this one (the teaser trailer is omits any hint of plot or production quality).

This was pretty decent, but I can't say it lived up to my hopes. Overall the movie was enjoyable and fun to watch, but near the end it began suffering from shear ridiculousness (and yes, I know it's based on a comic book). I don't think I'll pick up the DVD when it's released.

Dream Theater - Systematic Chaos

  • Release Date: Tue, 06/05/2007

Systematic Chaos will be the first Dream Theater album released under their new label, Roadrunner Records. Anyone that knows me personally is well aware that I'm a huge Dream Theater fan, so it goes without saying that I'm really looking forward to this. Their last studio album, Octavarium, was perhaps the best of their 21 year career (in my opinion, of course), and I'm eagerly awaiting my next musical fix.

This CD kicks ass. It's definitely not for everyone, but if you're a fan of progressive rock/metal, you definitely need to pick it up. It took a few listens before it really grew on me, but damn, it's hard to listen to anything else now (and I'm writing this about 3 months after it's release). It was so good I also planned a vacation to Chicago around their concert schedule to I could see them live. :-)

Sister Hazel

  • Sat, 04/22/2007 - 20:00
  • Horshoe Casino & Hotel
  • 1021 Casino Center Dr.
  • Robinsonville, Mississippi 38667
  • 21 & Over, Doors @ 7PM, Hazel @ 8PM, Tickets $20-$25

This concert was awesome. Cheap tickets, short drive, GREAT music, and a fun show. I can't really ask for much more. :-) I strongly recommend seeing Sister Hazel live if they play anywhere near you.

Spider-Man 3

  • Release Date: Fri, 05/04/2007

Have you seen the trailer for this? It looks freakin' amazing! I normally don't get this exited over sequels, but the story, action, and effects all look top notch. This is one movie that I will see in theaters this year, without question. Given the extremely high quality production of the previous two films (both of which were better than I expected, especially story-wise), I think Spider-Man 3 will be sure to please.

I don't care what anyone else says - this move was awesome. Yes, there were some weaknesses, as many have pointed out, and I won't dispute that. However, on the whole the movie was extremely fun and engaging, and very much a worthy end to a phenomenal movie trilogy. I highly recommend going to watch it if you haven't already done so.

Dawn of Mana

  • Release Date: Tue, 05/22/2007

Secret of Mana, released for the Super NES way back in 1993, was one of my favorite games released for that system. Developer Square (now Square Enix) did an amazing job of blending traditional console RPG elements with action/adventure style gameplay popularized by The Legend of Zelda. I have longed for a sequel for many years, and despite numerous related releases, I never was able to enjoy one (due to Japanese-only releases, the choice of console, etc.).

That's about to change. :-) Square Enix is set to release Dawn of Mana in North America on May 22. Despite my self-imposed ban on buying any new games until I finish playing through all of the older ones that I already own but have not played, I think I'm going to have to make an exception for this. The graphics look pretty amazing (despite the somewhat overly-cartoony style), and if the gameplay and story lives up to that of its predecessor, it should make for a damn fine game indeed.

Well, this one has come and gone, and unfortunately I didn't pick it up as planned. Despite the amazing potential, most of the reviews I read rated game play and control very poorly. As much as I would like to play through it anyway just for the story, I just don't have much time to spend on video games these days, and I'd rather continue working through my backlog of games rather than pick up a less-than-stellar new one that will undoubtedly take many hours to complete. Come on, Square. I expect much better of you. :-)

This is a test

December 16th, 2006

LILO and Console Splash Screens

Note:  This page is likely very outdated.  I've left it here primarily for archival purposes.  Please refer to the following to links for current information and support:
http://forums.gentoo.org/viewtopic-t-49036.html
http://forums.gentoo.org/viewtopic-t-52290.html

Purpose:

Recent versions of the top-tier Linux distributions (SuSE, Red Hat, etc.) include splash screens at the LILO prompt, and sometimes even on the console when booting the system.  While this is really no more than eye candy, it does have the "Ohh" factor that can attract other people to Linux, which is a Good Thing.

This HOWTO will detail how to enable these splash screens on other distributions, as well as how to change, customize, etc. the splash screen if your preferred distribution already includes one.  This will focus on Gentoo (since that's all I have to work with), but I'll attempt to make it as generic as possible.  Let's get started.

Update:  While this HOWTO was originally intended to be a guide for setting this up on all distributions, it currently covers Gentoo exclusively.  Many of the steps automated by the Gentoo ebuild are quite low-level (patching your kernel, modifying your bootloader, etc.), and as such it will take some time for me to figure out how to reproduce these steps manually.

Prerequisites:

  • kernel patch - included with Gentoo ebuild
  • splash screens - example artwork is included with the Gentoo ebuild; additional artwork may be obtained here

Installation and Configuration:

Installation under Gentoo is very easy, thanks to the bootsplash ebuild.  Follow the steps below to install it.  Note: These instructions are specific to bootsplash-0.4-r1.  The procedure may differ for later versions.

emerge /usr/portage/media-gfx/bootsplash-0.4-r1
ebuild /var/db/pkg/media-gfx/bootsplash-0.4-r1/bootsplash-0.4-r1.ebuild config

The ebuild command above will patch your kernel for splash screen support during boot, so the next step is to enable this in your kernel and recompile it.  Enable the following options:

Block Devices --> <*> Loopback device support
                  <*> RAM disk support
                  [*] initrd support

Console Drivers --> [*] Video mode selection support
                    Frame-buffer support --> [*] Support for frame buffer devices
                                             [*] VESA VGA graphics console
                                             [*] Use splash screen instead of boot logo

Be sure to compile and install your new kernel.

Next, you'll need to install your splash screens.  Decide which resolution you want, and substitute that in for the commands below.  By the way, it's not necessary to use the symlinks (you can call the files directly), but it does make it easier when trying to use additional splash screens.

cd /usr/share/bootsplash/
rm consolesplash* bootsplash*
ln -s gentoo-console-1024x768.cfg consolesplash.cfg
ln -s gentoo-console-1024x768.jpg consolesplash.jpg
ln -s gentoo-boot-1024x768.cfg bootsplash.cfg
ln -s gentoo-boot-1024x768.jpg bootsplash.jpg
splash -s -f bootsplash.cfg >/boot/splash_initrd
rc-update add bootsplash default

Note that there are two different splash screens, one called bootsplash and one called consolesplash.  bootsplash is displayed during the boot process, appearing once the kernel begins to load (after LILO), and until lasts until the Login: prompt.  consolesplash, as you can guess, appears at the login prompt, and remains present on any virtual terminals.  I should point out here that bootsplash is enabled and controlled by your boot loader (LILO), while consoleplash is enabled by the /etc/init.d/bootsplash init script (yes, the consolesplash init script is called bootsplash - just ignore this bad naming convention).

Why have two separate screens?  Well, in addition to the obvious reason (two separate pictures), you can also control the size and shap of the text independantly.  For example, during boot you may prefer to have a tall and narrow text area so that you can easily view the boot messages as they scroll by.  Once you login, though, you may prefer to work in a shorter but wider environment, allowing you to view more text on each line.  The default splash screens are configure like this, and details for changing them are provided below.

Now that you have your splash screens installed, the only remaining task is to configure LILO to display it during boot.  This involves two steps.  First, you have to set LILO to boot in high-resolution mode.  Second, you'll need to set it to display the image.

Decide which resolution you want to use and consult the following table for the VGA number you'll need:

   640x480  800x600  1024x768  1280x1024
256 769 771 773 775
32K 784 787 790 793
64K 785 788 791 794
16M 786 789 792 795

If you're not sure which resolution and color depth you want, I recommend 791 for 1024x768x16.  I've had the best luck with this setting.

To enable everything, add the following lines to the default stanza of your lilo.conf:

vga = 791
initrd = /boot/splash_initrd

Substitute your resolution number for 791, and don't forget to run lilo afterwards to install it.

At this point everything should be installed and configured.  Reboot, and you should be greeted by Larry the cow (yes, the default splash screen can be changed).

Configuration:

Now that you have everything setup, you'll probably want to change the splash screens.  This is pretty easy to do, but you must follow two important guidelines:

  • The images must be the same size as your console resolution
  • The images must be the same color depth as your console

You can grab additional images here.  Each of these images are 1024x768 and 16 bit.

Remember, whatever images you use must conform to the above specifications.  Once you've ensured they do, the rest of the process is relatively easy.

To change your bootsplash screen, copy the new image to /usr/share/bootsplash/, delete the bootsplash.jpg symlink pointing to the old splash screen, then recreate it pointing to your new image.  Unless your image is very similar to the old one, you'll also need to reconfigure it.  Copy the file bootsplash.cfg is linked to so you'll have a template, then open your new .cfg file in an editor.

There are 3 settings you can modify in this file: the border coordinates, the text foreground color, and the text background color.  The coordinates (in pixels) define what part of the screen will display text, and the text color settings should be self-explanatory.  Here's my bootsplash.cfg file:

/usr/share/bootsplash.cfg:
version=2
tx=20
ty=10
tw=990
th=655
fgcolor=15
bgcolor=0

Remember, the coordinates are in pixes, so this says to start the text area at (20,10) and end at (990,655).  tx and tw define, from right to left, the start and end points along the x-axis, and ty and th define from top to bottom the start and end points along the y-axis.  Don't confuse this with the mathematical coordinate system, in which the y-axis origin starts at the bottom.  This configuration also specifies to make my text white with a black bacground.

Note that it's very difficult to guess what the correct coordinates should be, so you may have to resort to trial and error by taking your best guess, rebooting to see how it looks, then trying again.

Once you're happy with the configuration, make the bootsplash.cfg is pointing to your new .cfg file, then install it as your did before:

splash -s -f bootsplash.cfg >/boot/splash_initrd
lilo

This created the new initrd file, and updates LILO to use it.

Modifying your consolesplash image is easier.  As before, copy the new image to /usr/share/bootsplash/, and update the consolesplash.jpg accordingly.  You'll also want to copy the file consolesplash.cfg is pointing to so you'll have another configuration template, then update consolesplash.cfg to point to your new .cfg file.  As above, you'll also need to make sure the .cfg file is properly configured for your new image, then save any changes.

Your new consolesplash screen should automatically be loaded by the bootsplash init script on the next reboot.  Edit /etc/init.d/bootsplash and make sure /usr/bin/splash line is pointing to /usr/share/consoleplash.cfg.  As long as consolesplash.cfg and consolesplash.jpg are linked to the correct files, you should be good to go.

Reboot and be amazed by your handiwork.

If you notice any errors in this document, or if you have trouble getting something working correctly, send me an e-mail.  It took me several tries to get everything setup correctly, so don't get discouraged if it doesn't work right away.  Good luck!

Installing Gentoo Linux

Note:  This page is completely out of date.  I've left it here primarily for archival purposes, and also because it still contains some useful reference information for my own system.  Everyone else should refer to the Gentoo Linux Handbook instead for installation assistance. 

What is Gentoo?

In short, Gentoo is a source-based, community-driven, and heavily-optimized distribution.  There are no RPMs, no DEBs, and no .tgz binaries - just about everything you install on your computer will be built from source code.

What does that mean?  It means that Gentoo is a complex and difficult to install operating system, but the rewards for taking the time to learn and configure everything are nearly endless.  Whether you want performance, configurability, stability, security, or maintainability, Gentoo will work for you.  In addition, Gentoo's community involvement and support is the best I've ever seen, so you can rest assured that friendly assistance is but a forum post away.

For more information about Gentoo, visit the Gentoo home page at http://www.gentoo.org/.  For support, head to the forums at http://forums.gentoo.org/.  And finally, check out the "About Gentoo Linux" page at http://www.gentoo.org/main/en/about.xml if this is your first experience with Gentoo.

Purpose:

This document is NOT intended to be a comprehensive, step-by-step guide to installing Gentoo Linux.  The official Gentoo Linux x86 Installation Guide already does an extremely good job of that.  You can view the guide here: http://www.gentoo.org/doc/en/gentoo-x86-install.xml

Instead, this document is meant to provide supplemental information to the guide, such as example config files, additional reference material, etc.  In addition, it will list the installation steps on my specific hardware (see next section).  Any installation on similar hardware should be very similar to the process described here; as a result, this can provide a good reference to make sure everything's on track and no steps have been missed.

Please also note that this guide only covers the installation and initial configuration of Gentoo, just enough to get a functional system.  Additional help and configuration guides can be found on the Gentoo documentation site at http://www.gentoo.org/main/en/docs.xml.  I strongly suggest browsing through the available documentation to see what's there.

My Systems:

Included here are hardware specs for the systems on which I've documented my installation of Gentoo.  This is for your reference.  Find the system that most closely matches your hardware configuration, and use my setup commands for that system as a guide for your own installation.

Dual Athlon MP 2400+
Processor: (2) AMD Athlon MP 2400+
Memory:    512MB PC2100 DDR SDRAM
Video:     nVidia GeForce4 Ti 4600
Audio:     Creative Labs Soundblaster Audigy2 Platinum
Network:   3com 3cr990, Intel EtherExpress Pro 10/100
Modem:     Zoom v.92 Ext. FaxModem
Mouse:     4-button Logitech Cordless MouseMan Optical
Storage:   37GB 10000RPM Ultra160 SCSI
Dual Athlon MP 1800+
Processor: (2) AMD Athlon MP 1800+
Memory:    1024MB PC2100 DDR SDRAM
Video:     nVidia GeForce2 Pro
Audio:     Creative Labs Soundblaster Live! 5.1 Platinum
Network:   3com 3c905C
Modem:    
Mouse:     3-button Logitech First Wheel Mouse
Storage:   (1) 20GB 7200RPM UDMA-4 E-IDE, (1) 80GB 7200RPM UDMA-4 E-IDE
Gateway Performance P500
Processor: 500MHz Pentium III
Memory:    384MB PC100 SDRAM
Video:     3dfx Voodoo3
Audio:     Creative Labs Soundblaster Live! 5.1 Platinum
Network:   3com 3cr905c
Modem:    
Mouse:     3-button Logitech First Wheel Mouse
Storage:   (2) 20GB 7200RPM UDMA-4 E-IDE, (1) 30GB 5400 UDMA-4 E-IDE
Dell Latitude D600
Processor: 1.4GHz Pentium M
Memory:    512MB SDRAM
Video:     32MB ATI Mobility Radeon 9000
Audio:     Sigmatel 9750
Network:   Broadcom 570x Gigabit
           Dell TrueMobile 1400 Dual Band WLAN
Modem:     Conexant D480 MDC
Mouse:     2-button PS/2
Storage:   20GB 4200RPM UDMA-4 E-IDE
Dell Latitude C640
Processor: 1.8GHz Pentium 4M
Memory:    512MB PC133 SDRAM
Video:     32MB ATI Mobility Radeon 7500
Audio:     Crystal CS4205 (Intel i810)
Network:   3com 3c920 (3c905-TX)
Modem:     PCTel 2304WT MDC
Mouse:     2-button PS/2
Storage:   20GB 4200RPM UDMA-4 E-IDE
Dell Latitude C400
Processor: 866MHz Pentium III-M
Memory:    256MB PC133 SDRAM
Video:     16MB Intel i830M IGP
Audio:     Crystal CS4205 (Intel i810)
Network:   3com 3c905C-TX
Modem:     Conexant MD56ORD
Mouse:     2-button PS/2
Storage:   20GB 4200RPM UDMA-4 E-IDE

Prerequisites:

  • Time - this distribution will take a lot of time and effort to install, especially if this is your first time installing a source-based distribution.  Save this for a day when you're able to spend a decent amount of time tinkering with it and reading through documentation.
  • A Pentium II-based machine or better, with at least 64 MB RAM and 2 GB hard disk space.  It's possible to install on a lower-end machine, but not any fun at all.  More RAM and more hard drive space is also a good thing.
  • The Gentoo Linux x86 Installation Guide - read it now, and have a copy available while installing Gentoo.
  • Gentoo Linux installation CD - grab the latest release ISO from http://distro.ibiblio.org/pub/linux/distributions/gentoo/releases/.  If you plan on doing a Stage 1 install, you can get the x86/livecd/gentoo-basic-x86 ISO.  Otherwise, download the gentoo-3stages-x86 ISO.  Burn to CD.
  • **NOTICE**  These instructions were written for Gentoo 1.4_rc3.  Other releases will be similar, but will undoubtedly have some variation.  If anything here conflicts with the official installation guide, give precedence to the official guide.

Preparation:

You have two main decisions to make up front - how you want to setup your partitions, and which "stage" you want to install.  The installation guide covers both of these topics in detail.  Read through sections 1 (Introduction) and 5 (Partitioning) now to make sure you understand what's happening, and plan ahead for what you want to do.

For partitioning, I generally like to create a /boot primary partition at the very front of my hard disk, allow space for any other OS partitions after, then create a large / (root) logical partition and usually about a 256 MB logical swap partition.  I also like to use ext3 for all my filesystems.  It may not be as efficient as reiserfs in some situations, but it's generally regarded as safe and well-supported journaling filesystem, which, in the case of my data, is more important to me.

You may also want to consider adding a separate /home partition as well, in case you'd like to keep your personal data separate from the rest of the operating system.  In general, though, just use whatever partition layout you used with your previous distribution - that should work fine.

One more note about the stages - this document will cover a Stage 1 (most involved) installation.  If this is your first Gentoo install, though, I'd recommend going with a Stage 3 installation.  I'll mention below what parts you can skip if you're doing a Stage 3 install.

Installation:

Initial Steps

Remember, you need to have a copy of the installation guide available.  If you have a second computer, just keep it loaded in your web browser.  Otherwise, print it out.

To get started, boot from the installation CD.  At the boot: prompt, enter 'gentoo'.  Choose your language when prompted, then immediately enter 'passwd' to set the root password after it's finish booting.  Don't forget to set the root password here - if you don't and you have some kind of problem during the install, you will not be able to login on a different terminal to fix the problem.

Next, load whatever hardware drivers you need.  The installation guide explains this process well.  Gentoo recognized and auto-configured everything on my Latitude C400 without any problems.

At this point you need to configure your network interface.  If your NIC is recognized by Gentoo and you're on a DHCP network (as was the case with my Latitude C400), this may be done automatically for you.  If not, you can use 'net-setup eth0' to configure it.  Refer to the install guide for many additional details.

At this point, I've done the following on my systems:

Dual Athlon MP 2400+
smp doscsi vga=791  #start smp installer, probe for SCSI, enable SVGA
passwd              #set root password
ping www.cisco.com  #confirm network works
setterm -blank 0    #disable console blanking
Dual Athlon MP 1800+
smp vga=791  #start smp installer, enable SVGA
passwd              #set root password
ping www.cisco.com  #confirm network works
setterm -blank 0    #disable console blanking
Performance P500
nofb                #boot default kernel, disable framebuffer mode
passwd              #set root password

#setup and confirm networking
ifconfig eth0 192.168.0.2 broadcast 192.168.0.255 netmask 255.255.255.0
route add -net default gw 192.168.0.1 netmask 0.0.0.0 metric 1 eth0
vi /etc/resolv.conf
ping www.cisco.com

hdparm -d1 -u1 -c1 -k1 -A1 -m16 -a64 -X66 /dev/hde  #enable drive optimizations
setterm -blank 0    #disable console blanking
Latitude D600
gentoo nodetect nodhcp      #start installer and copy CD to tmpfs
passwd              #set root password
hdparm -d1 -u1 -c1 -k1 -A1 -m16 -a64 /dev/hda  #enable drive optimizations
modprobe tg3  #enable internal NIC
dhcpcd eth0  #enable DHCP
ping www.cisco.com  #confirm network works
setterm -blank 0
Latitude C640
gentoo cdcache      #start installer and copy CD to tmpfs
passwd              #set root password
hdparm -d1 -u1 -c1 -k1 -A1 -m16 -a64 /dev/hda  #enable drive optimizations
ping www.cisco.com  #confirm network works
setterm -blank 0
Latitude C400
gentoo cdcache      #start installer and copy CD to tmpfs
passwd              #set root password
hdparm -d1 -u1 -c1 -k1 -A1 -m16 -a64 /dev/hda  #enable drive optimizations
ping www.cisco.com  #confirm network works

Partitioning

You already have your partitioning scheme planned out from earlier, right?  Re-read section 5 to make sure you didn't overlook anything, then use either cfdisk (easier) or fdisk (more powerful) to make any necessary changes.

Once your partitions are in place, it's time to initialize the filesystems.  Follow the instructions in the installation guide, and use there examples to create whichever filesystems you'd like.

Next, you need to mount your new partitions.  Again, follow the directions and examples in the install guide.  Also, be sure to activate your swap partition.  This is particularly important if you have less than 256 MB RAM - if you do not have extra swap space, the build process will probably fail.

This is how I setup my systems:

Dual Athlon MP 2400+
mke2fs -j /dev/sda1          #create /boot filesystem
mke2fs -j /dev/sda5          #create / filesystem
mke2fs -j /dev/sda6          #create /home filesystem
mount /dev/sda5 /mnt/gentoo  #mount / filesystem
mkdir /mnt/gentoo/boot       #create /boot mount point
mount /dev/sda1 /mnt/gentoo/boot  #mount /boot filesystem
Dual Athlon MP 1800+
mke2fs -j /dev/hda1          #create /boot filesystem
mke2fs -j /dev/hda2          #create / filesystem
mke2fs -j /dev/hdb2          #create /home filesystem
mkswap /dev/hdb1             #create swap filesystem
swapon /dev/hdb1             #activate swap filesystem
mount /dev/hda2 /mnt/gentoo  #mount / filesystem
mkdir /mnt/gentoo/boot       #create /boot mount point
mount /dev/hda1 /mnt/gentoo/boot  #mount /boot filesystem
Performance P500
mke2fs -j /dev/hde1          #create /boot filesystem
mke2fs -j /dev/hde3          #create / filesystem
mkswap /dev/hde2             #create swap filesystem
swapon /dev/hde2             #activate swap filesystem
mount /dev/hde3 /mnt/gentoo  #mount / filesystem
mkdir /mnt/gentoo/boot       #create /boot mount point
mount /dev/hde1 /mnt/gentoo/boot  #mount /boot filesystem
Latitude D600

mke2fs -j /dev/hda2          #create ext3 / filesystem
mount /dev/hda2 /mnt/gentoo  #mount / filesystem
Latitude C640
mkswap /dev/hda3             #create swap filesystem
mke2fs -j /dev/hda2          #create ext3 / filesystem
swapon /dev/hda3             #activate swap filesystem
mkdir /mnt/gentoo            #create installation mount point
mount /dev/hda2 /mnt/gentoo  #mount / filesystem
Latitude C400
mkswap /dev/hda3             #create swap filesystem
mke2fs -j /dev/hda2          #create ext3 / filesystem
swapon /dev/hda3             #activate swap filesystem
mkdir /mnt/gentoo            #create installation mount point
mount /dev/hda2 /mnt/gentoo  #mount / filesystem

Configuring Installation Environment

Decide which Stage you want to install.  Remember, Stage 1 requires compiling EVERYTHING on your system, and as such will take quite a while.  Stage 3 includes prebuilt system packages that will greatly speed up installation.  You should only need to install Stage 1 if you're obsessed with getting every last bit of performance out of your system, or perhaps if you simply want to feel more manly.  Otherwise, go with Stage 3.

Follow the directions on the web site to get (if necessary) and extract your desired Stage tarball, then enter the chroot environment and update the portage tree as described.  Note that at this point you must have networking enabled to continue.

Finally, make sure your make.conf file is configured properly.  This file defines portage's behavior, and contains the two most important settings on a Gentoo system - your USE flags, and your CFLAGS.  USE flags basically describe what components you want to be enabled/disabled in programs, which optional components are installed, etc.  CFLAGS set which options gcc will use when building packages.  Aggressive CFLAGS can lead to good performance gains, but it can also cause some instability.  I've included my USE and CFLAGS settings below for reference, but BE SURE TO READ section 10 in the install guide, and The USE Variable HOWTO, available at http://www.gentoo.org/doc/en/use-howto.xml.

You'll notice that my example USE flags below contain all options those preceded by a - are disabled, those not are enabled.  Please note that I only do this for my reference and that it is NOT necessary - USE flags are disabled by default, and as such will only be enabled if explicitly mentioned here.  Be sure to check your /etc/make.profile/make.defaults file, however - it contains some USE flags as well.  To disable any listed in there, add them to your make.conf list and prepend them with a -.

Here are my steps:

All Systems
cd /mnt/gentoo                #change to installation / directory
tar xvjpf /mnt/cdrom/gentoo/stage1-<version>.tar.bz2  #extract Stage 1 tarball
mount -t proc /proc /mnt/gentoo/proc                  #mount /proc settings
mirrorselect -a -s4 -o >>/mnt/gentoo/etc/make.conf    #select fast Gentoo mirror
cp /etc/resolv.conf /mnt/gentoo/etc/                  #copy nameserver information

chroot /mnt/gentoo /bin/bash  #enter install environment
env-update                    #configure environment
source /etc/profile           #configure environment

emerge sync                   #download portage tree

nano -w /etc/make.conf        #configure portage
                              #my Athlon make.conf
                              #my P500 make.conf
                              #my GX150 make.conf
                              #my D600 make.conf
                              #my C640 make.conf
                              #my C400 make.conf

Stage 1 Installation

If you're performing a Stage 3 installation, skip this section.

The first thing that must be done is bootstrap your system.  This will build and install your compiler, and other essential system programs.  Read section 11 of the installation guide for additional info.  This step will take awhile to complete.

After the bootstrap is complete, it's time to install the base system packages.  Again, read section 12 for more information, and be prepared to wait an even longer time for this to complete.

My steps:

All Systems
cd /usr/portage          #change to portage directory
scripts/bootstrap.sh     #begin bootstrap
emerge -p system | less  #confirm package selection
emerge system            #begin system installation
Stage 3 Installation

If you're performing a Stage 3 installation, your bootstrap process and base system installation is already complete.  I do, however, stronly advise that you follow the steps in 13 of the installation guide to ensure your packages are up-to-date.

Continuing Installation - Kernel and System Logger

At this point, the Stage 1 and Stage 3 installs are equal, so everyone should follow from here.  Before installing anything else, be sure to set your timezone and date information, as described in section 14 of the guide.

Gentoo allows you to choose which type of kernel you want to install.  Section 15 of the guide explains the most common choices, and you can see a list of even more options in /usr/portage/sys-kernel/.  The two most common choices are vanilla-sources and gentoo-sources.  vanilla-sources are the stock kernel source you would download from kernel.org, and as a result are the safest choice.  gentoo-sources have been optimized by the Gentoo developers for performance and extra functionality.  Either choice should be safe, but if you're not very confortable configuring a kernel, I'd suggest sticking with the vanilla sources.

Be absolutely certain that you read section 15 in the install guide.  It contains a lot of information about how to configure and build your kernel, as well as some of the options you need to be sure to enable.  Some of these options are different than other distributions, so be sure to check these.

Next you'll want to install a system logger.  You have several choices, but I'd recommend going with either syslog-ng (easy and powerful) or metalog (performance-oriented).

You'll also need to install a cron daemon.  Again, you have several choices available.  I've always used vixie-cron, and it works fine me.

Here's what I installed:

All Systems
#configure timezone and set date
ln -sf /usr/share/zoneinfo/US/Central /etc/localtime
date <MMDDhhmm>
hwclock --systohc

#configure and install kernel
emerge <kernel>-sources  #install chosen kernel
cd /usr/src/linux/
make menuconfig  #my Athlon gaming-sources-2.4.20-r3 .config file
                 #my P500 development-sources-2.6.0_beta6 .config file
                 #my GX150 development-sources-2.6.0_beta5 .config file
                 #my D600 ac-sources-2.4.22-r4 .config file
                 #my C640 selinux-sources-2.4.20-r2 .config file
                 #my C400 vanilla-sources-2.4.20 .config file
**2.4.x kernel** make dep && make bzImage modules modules_install
**2.6.x kernel** make && make modules_install
cp arch/i386/boot/bzImage /boot/bzImage-<version>
cd /boot/
ln -s bzImage-<version> bzImage

#install system logger and cron daemon
emerge syslog-ng vixie-cron

Installing Additional Necessary Packages

At this point you will want to install any additional packages you will need after restarting your machine.  In particular, you should install pcmcia-cs if you're using a laptop, and any necessary ppp software if you're using DSL or dial-up.

Here's what I installed:

Latitude C640
emerge pcmcia-cs  #PCMCIA drivers for my laptop
Latitude C400
emerge pcmcia-cs  #PCMCIA drivers for my laptop

Modifying Configuration Files

Next, you'll need to modify several system configuration files.  Be sure to read each relevant section in the installation guide, and I've included samples from my installation below.

Dual Athlon 2400+
#/etc/fstab
#/etc/hostname
#/etc/hosts
#/etc/rc.conf
#/etc/conf.d/local.start
Performance 500
#/etc/fstab
#/etc/hostname
#/etc/hosts
#/etc/rc.conf
#/etc/conf.d/local.start
Latitude D600
#/etc/fstab
#/etc/hostname
#/etc/hosts
#/etc/rc.conf
#/etc/conf.d/local.start
Latitude C640
#/etc/fstab
#/etc/hostname
#/etc/hosts
#/etc/rc.conf
#/etc/conf.d/local.start
Latitude C400
#/etc/fstab
#/etc/hostname
#/etc/hosts
#/etc/rc.conf
#/etc/conf.d/local.start

Configuring Your Bootloader

Make sure you properly configure your bootloader.  Otherwise, your system will not be able to boot.

The default bootloader for Gentoo is grub, but I much prefer lilo.  See the install guide for configuration instructions for both grub and lilo.  If you'd also prefer to install lilo, remember that you need to install it and uninstall grub before continuing.

Please note that /etc/lilo.conf will not exist after installing lilo.  If you're unsure of what goes in the configuration file, copy /etc/lilo.conf.sample to /etc/lilo.conf and modify the well-commented sample file.  I also included my lilo.conf file below.

Here's my configuration:

All Systems
emerge lilo          #install lilo
emerge unmerge grub  #uninstall grub
nano /etc/lilo.conf  #configure lilo
                     #my Athlon lilo.conf file
                     #my P500 lilo.conf file
                     #my GX150 lilo.conf file
                     #my D600 lilo.conf file
                     #my C640 lilo.conf file
                     #my C400 lilo.conf file
lilo                 #write lilo configuration to boot record

Enabling Services and Modules

By default, most services and deaemons are disabled at boot.  Available services on your system can be found in /etc/init.d/.  Look through this directory and decide what you want to enable automatically at boot, then use 'rc-update add <name> default' to enable each of them.  Please note that this is particularly important for your system logger and cron daemon.&nbap; My recommended choices are listed below.

You'll also need to tell Gentoo which modules you want to load at boot.  Most modules should be automatically loaded when needed, but it is necessary to place some of them in /etc/modules.autoload to ensure they're loaded at boot.  I also included my modules.autoload file below.

Here's what I enabled:

All Systems
rc-update add syslog-ng default  #enable system logger
rc-update add vixie-cron default      #enable cron daemon
rc-update add net.eth0 default   #enable networking on eth0 (see next section)
rc-update add sshd default       #enable SSH server
rc-update add numlock default    #enable numlock

nano /etc/modules.autoload       #add modules to be loaded at boot
                                 #my Athlon modules.autoload and modules.conf files
                                 #my P500 modules.autoload and modules.conf files
                                 #my GX150 modules.autoload and modules.conf files
                                 #my D600 modules.autoload and modules.conf files
                                 #my C640 modules.autoload and modules.conf files
                                 #my C400 modules.autoload and modules.conf files
modules-update                   #update system module configuration

Configuring Networking

You'll also want to make sure that your network interface is configured properly when you reboot.  First, make sure the proper module (if you didn't compile the driver directlry into the kernel) is in /etc/modules.autoload.  Next, edit /etc/conf.d/net to match your particular network environment.  Finally, make sure your network interface is enabled at boot.  See above section for details on that.

Here's my configuration:

Dual Athlon MP 2400+
   
/etc/conf.d/net:
iface_eth0="192.168.0.3 broadcast 192.168.0.255 netmask 255.255.255.0"
gateway="eth0/192.168.0.1"
Performance P500
   
/etc/conf.d/net:
iface_eth0="192.168.0.2 broadcast 192.168.0.255 netmask 255.255.255.0"
gateway="eth0/192.168.0.1"
Latitude D600
   
/etc/conf.d/net:
iface_eth0="dhcp"
iface_eth1="dhcp"
dhcpd_eth0="-t 20"
dhcpd_eth1="-t 20"
Latitude C640
   
/etc/conf.d/net:
iface_eth0="dhcp"
iface_eth1="dhcp"
dhcpd_eth0="-t 20"
dhcpd_eth1="-t 20"
Latitude C400
   
/etc/conf.d/net:
iface_eth0="dhcp"
iface_eth1="dhcp"
dhcpd_eth0="-t 20"
dhcpd_eth1="-t 20"

Finishing Installation

Before proceeding any further, set your root password.  Please note that this is not what you already did at the beginning of the installation.  That command set the password for the installation; now you must set the password for your installed system.

Next, I recommend that you create a bootdisk.  See section 24 of the install guide for instructions on doing that.

Finally, exit the chroot environment, unmount all filesystems, and reboot.  Hopefully everything will work correctly, and you'll be brought to the Login: prompt for your shiny new Gentoo installation.  If you do have any problems, remember that you can use the installation CD as a resuce disk by booting it, chrooting yourself into your installation environment, then fixing any errors.  See the install guide for more information.

One last note.  I have, on a couple different occasions, had problems booting because no /proc directory was created during the installation.  After unmount /mnt/gentoo/proc/, but before unmounting /mnt/gentoo/, be sure to check that /mnt/gentoo/proc/ exists.  If not, create it.

Here are my final installation steps:

All Systems
passwd      #set root password
etc-update  #update necessary configuration files
exit        #exit chroot environment
cd /        #change from installation directory
umount /mnt/gentoo/boot  #unmount boot filesystem
umount /mnt/gentoo/proc  #unmount proc filesystem
reboot      #reboot

System Configuration

Now that you're system is installed and running (you did reboot, right?), it's time to start configuring it.

Enabling PCMCIA support

If you're installing Gentoo on a laptop and you need PCMCIA support, you MUST rebuild pcmcia-cs at this point.  Even if you already built and installed it during the installation phase, it must be rebuilt to support your current kernel.

Here's how I rebuilt mine:

Latitude C640
emerge pcmcia-cs  #rebuild pcmcia-cs for current kernel
Latitude C400
emerge pcmcia-cs  #rebuild pcmcia-cs for current kernel

Adding Users

The process of adding and configuring users under Gentoo isn't quite the same as what I'm used to from other distributions (which can be good or bad, I guess).  I've added some more information to this section than is probably necessary, but it should hopefully ensure that nothing was overlooked.

First, make sure your skel files are correct.  These files, found in /etc/skel/ (they're hidden, so use ls -l to see them), are copied to a user's home directory when a new account is created, and basically set that the default environment.  You can customize the ones that are currently in /etc/skel/ to incorporate any default settings you might like (for example, I like to set my history size to 1000, rather than the default 500), or you can add any additional files to this directory, so that all users will be preconfigured (for example, you can add an .xinitrc file to set the user's default desktop environment).  My config files are included at the end for your reference.

Next up is to create the user account.  You can do this with the useradd command; however, there is a catch.  By default, this version of useradd will not create the user's home directory, and it also assumes you want all users to belong to the 'users' group.  I prefer to have a unique group for each user, and I certainly want to create the directory.  So, you can use the groupadd command to create the new group first, and then useradd -m to create the home directory.  I also explicitly specify all information to ensure the accounts get created properly.  Finally, don't forget to set the user's password.

Here's my user configuration:

Dual Athlon MP 2400+
   
/etc/skel/.bash_profile:
[ -f ~/.bashrc ] && . ~/.bashrc
export HISTSIZE=1500
/etc/skel/.bashrc:
eval `dircolors -b /etc/DIR_COLORS`
alias ls="ls --color=auto"
alias rd=rmdir
alias md=mkdir
alias c=clear
alias x=startx
case $TERM in
   xterm*|rxvt|eterm)
      PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
      ;;
   screen)
      PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\033\\"'
   ;;
esac
Latitude C640
   
/etc/skel/.bash_profile:
[ -f ~/.bashrc ] && . ~/.bashrc
export HISTSIZE=1000
/etc/skel/.bashrc:
eval `dircolors -b /etc/DIR_COLORS`
alias ls="ls --color=auto"
alias rd=rmdir
alias md=mkdir
alias c=clear
alias x=startx
case $TERM in
   xterm*|rxvt|eterm)
      PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
      ;;
   screen)
      PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\033\\"'
   ;;
esac
/etc/skel/.xinitrc:
exec startkde  #set KDE as default desktop
Latitude C400
   
/etc/skel/.bash_profile:
[ -f ~/.bashrc ] && . ~/.bashrc
export HISTSIZE=1000
/etc/skel/.bashrc:
eval `dircolors -b /etc/DIR_COLORS`
alias ls="ls --color=auto"
alias rd=rmdir
alias md=mkdir
alias c=clear
alias x=startx
case $TERM in
   xterm*|rxvt|eterm)
      PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
      ;;
   screen)
      PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\033\\"'
   ;;
esac
/etc/skel/.xinitrc:
exec startkde  #set KDE as default desktop

And here's how I created my users:

Dual Athlon MP 2400+
groupadd -g 1000 jbreland
useradd -u 1000 -g jbreland -G users,portage,wheel,floppy,cdrom,audio \
        -d /home/jbreland -s /bin/bash -c "Jared Breland" -m jbreland
passwd jbreland
Latitude C640
groupadd -g 1000 jbreland
useradd -u 1000 -g jbreland -G users,portage,wheel -d /home/jbreland \
        -s /bin/bash -c "Jared Breland" -m jbreland
passwd jbreland
Latitude C400
groupadd -g 1000 jbreland
useradd -u 1000 -g jbreland -G users,wheel -d /home/jbreland -s /bin/bash \
        -c "Jared Breland" -m jbreland
passwd jbreland

Configuring Your Editor

The only editor included by default on your new system is nano, a basic GNU pico-like editor.  If you like pico, this should work fine for you - skip this section.  If, however, you demand more power from your editor, you'll want to install either vim or emacs.  I prefer vim, so I'll use vim in my examples here, but configuring emacs should work in much the same way.

The first thing you'll need to do is install vim.  Use 'emerge -s vim' to see which packages are available for vim.  The command-line version will always be installed no matter what you choose, you but may also install a graphical version of vim based on either QT (kvim) or GTK (gvim).

After installing vim, you'll need to uninstall nano and set vim as your default editor.  To do this, edit /etc/csh.env, /etc/env.d/00basic, and /etc/profile.env and each occurance of /bin/nano to /usr/bin/vim.  If you're used to typing vi instead of vim, I'd also recommend creating a symbolic link for /usr/bin/vi that points to /usr/bin/vim.

Finally, you'll want to configure your editing environment.  Edit /etc/vim/vimrc and make any changes you'd like.  I've included my file below as a reference.

Here's how I configured vim:

Dual Athlon MP 2400+
emerge vim             #install vim
emerge unmerge nano    #uninstall nano
vi /etc/csh.env        #update to vim
vi /etc/env.d/00basic  #update to vim
vi /etc/profile.env    #update to vim
vi /etc/vim/vimrc      #setup default vim environemt
                       #my vimrc file
Latitude C640
emerge vim             #install vim
emerge unmerge nano    #uninstall nano
vi /etc/csh.env        #update to vim
vi /etc/env.d/00basic  #update to vim
vi /etc/profile.env    #update to vim
vi /etc/vim/vimrc      #setup default vim environemt
                       #my vimrc file
Latitude C400
emerge vim kvim        #install vim and kvim
emerge unmerge nano    #uninstall nano
ln -sf /usr/bin/vim /usr/bin/vi  #create symlink for vi
vi /etc/csh.env        #update to vim
vi /etc/env.d/00basic  #update to vim
vi /etc/profile.env    #update to vim
vi /etc/vim/vimrc      #setup default vim environemt
                       #my vimrc file

Configuring Your Mouse

If you spend any amount of time using the console, you'll definitely want to configure your mouse for it (to configure it under X, see below).  The process is similar for both PS/2 and USB mice - install gpm, configure /etc/conf.d/gpm, and start the gpm service.  The only difference between a USB and PS/2 installation is the config file.

Here's my configuration:

Dual Athlon MP 2400+
emerge gpm                 #install gpm
vi /etc/conf.d/gpm         #configure gpm
                           #my conf.d/gpm file
/etc/init.d/gpm start      #start gpm
rc-update add gpm default  #enable gpm at boot
Latitude C640
emerge gpm                 #install gpm
vi /etc/conf.d/gpm         #configure gpm
                           #my conf.d/gpm file
/etc/init.d/gpm start      #start gpm
rc-update add gpm default  #enable gpm at boot
Latitude C400
emerge gpm                 #install gpm
vi /etc/conf.d/gpm         #configure gpm
                           #my conf.d/gpm file
/etc/init.d/gpm start      #start gpm
rc-update add gpm default  #enable gpm at boot

Configuring Audio

Your kernel must be configured for support for your sound card.  If you already enabled this during installation, you're good to go.  Otherwise, reconfigure your kernel settings, compile again, and install the new kernel and modules.  If you compiled the driver directly into your kernel, just reset and you should be good to go.  If you compiled it as a module, add the module to your /etc/modules.autoload file and run 'update-modules'.

Now that your audio is working, I'd highly recommend installing aumix.  This is a console mixer that will allow you to set various volume levels for your sound card, as well as remember your default settings when rebooting.

Here's how I setup my systems:

Latitude C640
emerge aumix                 #install aumix
/etc/init.d/aumix start      #start aumix service
aumix                        #set default mixer settings
/etc/init.d/aumix restart    #restart aumix to load default settings
rc-update add aumix default  #enable aumix at boot
Latitude C400
emerge aumix                 #install aumix
/etc/init.d/aumix start      #start aumix service
aumix                        #set default mixer settings
/etc/init.d/aumix restart    #restart aumix to load default settings
rc-update add aumix default  #enable aumix at boot

Desktop Configuration

Configuring XFree86

Unless you only want to use the console, it's time to configure X.  Be warned, though - X configuration under Gentoo is difficult, due to the lack of any "wizards" used by some other distributions.  Before proceeding any further, make sure you have your kernel configured properly.  If you missed anything there, X will simply not run.  Also, X was probably already compiled and installed during installation (it's in the default USE flags, so you'd have to explicitely disable it to make it not install).  If, however, this is not the case, 'emerge xfree' will install it.

Now, you basically have three choices for configuring X - by hand (hopefully using a backed-up copy of a working configuration on your hardware), using xf86cfg, or using xf86config.  If you already have a working copy of your XF86Config file, I'd strongly suggest the first option.  Just modify it as necessary.  Otherwise, use either xf86cfg or xf86config to do the job.  xf86cfg will start a framebuffered X and allow you to configure it using a GUI, but I've always had more luck with the command-line based xf86config.  Either way, your milage may vary.

I've included my XF86Config file below.  You should be able to use most of it in your own, but you will need to know your video card and monitor information, and you also may need to change the mouse configuration (this is for a 2-button PS/2 mouse).

Once you think you have it right, test it with 'startx'.  If anything fails, read the screen output from X and look for any lines starting with (EE) or (WW).  Also, check the log file in /var/log/XFree86.0.log.  Edit your XF86Config and try again.

**NOTE**  If you have 'exec startkde' in your ~/.xinitrc, or 'XSESSION=kde-3.1' in your /etc/rc.conf (as I have in my examples), X WILL NOT WORK.  Even if it's configured properly, it will try to load KDE and fail because it's not installed.  To fix this for temporary testing, edit (or create) ~/.xinitrc and add two lines: 'exec xterm' followed by 'exec twm'.  This will give you a rudimentary desktop environment in which to make sure X works.  When you're happy with it, delete ~/.xinitc (or change it back to 'exec startkde').

I've included my commands below for configuring X.  Please note that I also included a few extra commands for compiling a special driver not included in the kernel.  This is for my reference, and you hopefully should not have to do anything similar.

Dual Athlon MP 2400+
xf86cfg  #configure X
         #my XF86Config file
Latitude C640
xf86cfg  #configure X
         #my XF86Config file
Latitude C400
xf86cfg  #configure X
         #my XF86Config file

# Specific to i830 integrated graphics chips
ebuild /usr/portage/x11-base/xfree/xfree-4.3.0.ebuild compile
cd /var/tmp/portage/xfree-4.3.0/
cd work/xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel
make -f Makefile.linux i830.o
mkdir /lib/modules/2.4.20/kernel/drivers/char/drm/
cp i830.o /lib/modules/2.4.20/kernel/drivers/char/drm/
echo -e "/lib/modules/2.4.20/kernel/drivers/char/drm/i830.o:\n" \
        >>/lib/modules/2.4.20/modules.dep
echo "i830" >>/etc/modules.autoload
update-modules

Configuring KDE

Way back at the beginning of this article I mentioned how great Gentoo is, how great Portage is, etc.  By now, you're probably asking yourself if I'm insane.  Well, here is where we finally get to let Portage shine.  Note, this section is obviosly about installing KDE.  If you would prefer to install GNOME, the process is very similar (basically, replace 'emerge kde' with 'emerge gnome').

To get started, type 'emerge -p kde'.  Portage will automatically resolve all dependencies needed to install KDE, then show you a list of what it will install.  This list shows everything KDE needs, as well as whatever optional programs and components are enabled through your USE flags.  My list had about 80 packages in it, so needless to say, installing this will take a long time.  Start the installation with 'emerge kde' and then go to sleep, wake up and go to work, go out to dinner later that night, and then it might be done.  Hopefully, everything will compile without any problems, and you'll be left with the very beautiful KDE 3.1 installed, all done with one simple command.  Now, how great is that?

Here's how I installed it on my systems:

Dual Athlon MP 2400+
# specify which KDE components I want
ls /usr/portage/kde-base/
emerge arts kdeaddons kdeadmin kdeartwork kdebase kdebindings kdegames \
       kdegraphics kdelibs kdemultimedia kdeutils
Latitude C640
# see what's going to be installed, then specify which KDE components I want
emerge -p kde
emerge arts kdelibs kdebase kdeartwork kdenetwork kdepim kdemultimedia \
       kdeutils kdegames kdegraphics kdeaddons kdeadmin
Latitude C400
# see what's going to be installed, then specify which KDE components I want
emerge -p kde
emerge arts kdelibs kdebase kdeartwork kdenetwork kdepim kdemultimedia \
       kdeutils kdegames kdegraphics kdeaddons kdeadmin

Miscellany

Now that both your base system and your desktop is configured, you're ready to start using your shiny new Gentoo system productively.  There are a few more things you may want to consider doing, though.

Updating Your Portage Tree

Before proceeding, I suggest you update your portage tree.  This ensures that anything you install will be the most current version available.  Additionally, this would be a good time to update any existing packages that are already installed, just in case any updates have been released.

Here's how I updated my systems:

All Systems
emerge rsync      #update portage tree
emerge -pu world  #check for any updates
emerge -u world   #install any updates

Installing Additional Packages

As I mentioned before, Gentoo's approach is to install only what you tell it, either explicitely or through USE flags.  As a result, some applications that you would usually assume are installed (because they're installed by default with other distributions) are not.  You may want to jot down a list of apps that you regularly use in Linux, and then use portage to isntall them before proceeding.  You can see everything that's available by browsing the /usr/portage/ tree.

Some suggestions of app packages you may want:

  • Database - mysql
  • Development - kdevelop, blackdown-jdk, quanta
  • Encryption - gnupg
  • File/Print Server - samba, nfs-utils, autofs
  • FTP Client - gftp, ncftp
  • FTP Server - pure-ftpd
  • Instant Messenging - gaim
  • Mail Client - mozilla
  • Mail Server - sendmail
  • Multimedia - xmms, xine-lib, xine-ui, xine-dvdnav
  • Office Suite - openoffice-bin
  • System - gentoolkit, gkrellm, eject, tcpdump
  • Web Browser - mozilla, lynx, links
  • Web Server - apache, mod_php, mod_ssl

Remember, due to your USE flags, some of these apps may already be installed.  To check, use either 'emerge -p app' or 'emerge -s app'.