CONRAD Gentoo Projects Presents...
CONRAD Install Guide 2.0.3 "Techno Geek
FOR 1.5.0-2.0.0 UPGRADE GUIDE SEE SECTION -1A (Right below this)
-----
Looking for small donations so we can get a domain for an official website!
If you wish to donate, we are looking for $10 for a conrad domain name, where we can host the official conrad website and forums. For information about donating, private message me, or contact me on IRC (#conrad, or #no-sources)
-----
Forewarning
This IS an advanced install guide for gentoo linux, it is assuming you have knowledge of gentoo and gnu/linux in general!
Also, DO NOT POST BUGS ON BUGS.GENTOO.ORG!!!
------
-1A CONRAD 1.5.0-2.0.0 UPGRADE GUIDE
All other users, continue the the actual 2.0.0 guide
Now, fasten your seatbelts this may get a little rough.
The changes since 1.5.0 are pretty important, they include.
1) Tons of new LDFLAGS (Including Bdirect and Hashvals)
2) Glibc-2.3.6-r3 (with nxsty patches, edited to sync with portage)
3) binutils-2.16.91 (snapshot release, with the Bdirect patch)
4) New make.conf layout
5) ccache is now used
6) Tons of overlay packages, fixed packages that will not cause a hassle
7) Xorg7, other overlays, gaim 2.0.0, and other goodies already unmasked
Now, this may get a little complex, so stay with me, I need you to understand the following lines...
"LOOK AT YOUR /etc/portage/package.keywords/unmask/use/mask, TAKE THE ENTRIES THAT YOU ADDED AFTER INSTALLING CONRAD, AND BACK THEM UP!!!!! (copy them to a seperate file)"
Make a backup of your make.conf for your USE Flags!!!!!!!!!!!
If you upgraded to glibc-2.3.90*, which is unsupported, do not use this upgrade guide, it will break your system!!!
Code: Select all
# cd /
# wget bfgraphics.net/root-overlay-conrad.tar.bz2
# tar jxvf root-overlay-conrad.tar.bz2
# rm -r root-overlay/boot
MAKE SURE YOU BACKED UP ALL NECESSARY ITEMS
1) USE Flags
2) Addtional package.* entries
3) Your fstab
# mv /etc/fstab /etc/fstab.back
# cp -a root-overlay/* /
# mv /etc/fstab.back /etc/fstab
# rm /etc/make.conf
# mv /etc/make.conf_gcc4 /etc/make.conf
# nano /etc/make.conf
(CHANGE $ARCH TO YOUR ARCHITECTURE)
(Add the additional USEFLAGS you backed up to /etc/make.conf)
(Also read over /etc/portage/package.*, and add what you need there)
# emerge sync
# rm /etc/make.profile
# ln -s /usr/portage/profiles/default-linux/x86/2006.0 /etc/make.profile
# emerge ccache
# emerge glibc binutils gcc libstdc++-v3 libtool portage
# emerge --metadata
# gcc-config 2
# binutils-config 2
# env-update; source /etc/profile
# emerge -P gcc binutils
# emerge glibc binutils libstdc++-v3 gcc libtool portage
# emerge -C xorg-x11
# emerge -oneshot openmotif imake makedepend gccmakedep
# emerge xorg-x11
# LDFLAGS="" emerge --oneshot libXfont
# emerge --emptytree world
# echo 'LD_BIND_DIRECT="1"' >> /etc/env.d/99localEnjoy
-Cheater
------
FAQ
(Q) This is insane, it is so unstable, a system would never run like this!
(A) Well, it is a little intense, but for reasons, the intensity is stable enough for 98% of users - There are only very few packages that are known to break, qemu is the only one I personally know of. The result is a system faster than all others, even though it may take long to get there.
(Q) Isn't reiser4 the most unstable filesystem? Will I lose all my files?
(A) Reiser4 is probally the most unstable filesystem, besides windows :-p, because it is the newest. Is it unstable in general? No it is completely usable and friendly. A few releases ago you may have lost your files, but it is in a much more stable state right now.
(Q) How do I submit bug reports including unsupported testing items, related problems to bugs.gentoo.org?
(A) You can not post the bug, UNLESS you include a patch, then it is perfectly acceptable, submit bugs to upstream developers rather than to gentoo.
------
Toolchain Links
nxsty's glibc overlay - 2.3.6-r2
My GCC 4.0.3/cvs overlay -- updated in the root-overlay package
------
Conrad IRC Channel
Join - #conrad on FreeNode
-----
Notice:
The CONRAD Installation Guide is not supported in any way, shape, or form by the Gentoo Linux Foundation. Thus do not post bugs to gentoo. Never post any bugs relating to the CONRAD guide to bugs.gentoo.org!
-----
Updates:
N/A
-----
Conrad Development Team
(/Builder/Tester/Scripter/Graphic & Web Designer) - Cheater1034
(Scripter-Lucky/Tester/IRC) - Brainiac Ghost
(Scripter-Lucky/Tester) - mdshort
(Tester/Nesl247's Edition) Nesl247
(Host/Tester/Taijuan Manager) - thoffmeyer
-----
Notes: We will assume that x in hdx is the drive letter throughout this guide.
1 - The LiveCD
1.1 - First of all, we are going to download the latest Conrad Gentoo Installation LiveCD If you do not wish to use this livcd or already have a working distro in which to install from please skip this step.
Code: Select all
http://forums.gentoo.org/viewtopic-t-425194.htmlIf you do not know how to boot the disc I suggest that you do not use this guide.
2 -Preparing the Network
2.1 Checking for connection
If the following does not work, then do the steps after it.
Code: Select all
# ping http://google.com
# net-setup eth03.1 - View the hard disk configuration
Code: Select all
# hdparm -i /dev/hdxCode: Select all
hdparm -tT /dev/hdxI only recommend this option for ATA133 hard drives, not anything lower.
Code: Select all
(IDE ATA133 drives only)
hdparm -d1 -c1 -X69 /dev/hdx
(IDE ATA100 or lower drives)
hdparm -d1 -c1 /dev/hdx4.1 Using Fdisk
Remember that once you have the partition layout, you need to set the type to 82 (A.K.A Linux Swap) for the swap partition. Once you have it setup correctly, hit w to write and exit.
Code: Select all
# fdisk /dev/hdx
Command (m for help): p
Disk /dev/hdx: xxx heads, xx sectors, xxxx cylinders
Units = cylinders of xxxxx * 512 bytes
Device Boot Start End Blocks Id System
/dev/hdx1 1 14 158760 83 Linux # boot about 100 MB
/dev/hdx2 15 49 264600 82 Linux swap # swap about 512 MB
/dev/hdx3 50 70 remainder 83 Linux # root remainder of space
Code: Select all
# mkfs.reiser4 /dev/hdx3
# mkfs.ext3 /dev/hdx1
# mkswap /dev/hdx2
# swapon /dev/hdx2
Code: Select all
# mount /dev/hdx3 /mnt/gentoo
# mkdir /mnt/gentoo/proc /mnt/gentoo/boot
# mount -t proc none /mnt/gentoo/proc
# mount /dev/hdx1 /mnt/gentoo/boot5.1 - Downloading and extracting a stage3 tarball
Replace $ARCH with one of the following:
Code: Select all
athlon-xp, i686, pentium3, pentium4Code: Select all
# cd /mnt/gentoo
# wget http://gentoo.osuosl.org/releases/x86/2005.1-r1/stages/$ARCH/stage3-$ARCH-2005.1-r1.tar.bz2
# tar -jxvpf stage3-$ARCH-2005.1-r1.tar.bz2Code: Select all
# wget http://distfiles.gentoo.org/snapshots/portage-latest.tar.bz2
# tar jxvpf portage-latest.tar.bz2 -C /mnt/gentoo/usr/Code: Select all
# cp /etc/resolv.conf /mnt/gentoo/etc/6.1 - Chrooting
Code: Select all
# chroot /mnt/gentoo /bin/bash
# env-update; source /etc/profileCode: Select all
# emerge syncChange according to your zone
Code: Select all
# rm -rf /etc/localtime
# ln -s /usr/share/zoneinfo/US/Eastern /etc/localtimeDO NOT SKIP ANY STEPS, THE NEXT 2 ARE EXTREMELY IMPORTANT!
Root Overlay
The root overlay contains the /etc/* configuration files, it contains a conrad update script, it contains tons of overlays and beyond in /usr/local/overlays/conrad, it includes the latest gcc overlay and no-sources ebuild, it contains Xorg 7, gaim 2.0, and a lot of other packages pre-unmasked.
7.1 - Downloading the root overlay
Code: Select all
# wget http://bfgraphics.net/root-overlay-conrad.tar.bz2
# tar -jxvpf root-overlay-conrad.tar.bz2
# cp -a root-overlay/* /
# rm -r root-overlay
# rm root-overlay-conrad.tar.bz2Replace $ARCH with the corresponding arch
pentium-m users have to use pentium3 TEMPORARILY
athlon64 users have to use athlon-xp TEMPORARILY
Code: Select all
# nano -w /etc/make.conf8.1 -Setting /etc/locales.build - Optional
You have to set this according to your region/area/language
This is completely optional, it just saves build time
Code: Select all
# nano -w /etc/locales.buildCode: Select all
# This file names the list of locales to be built when glibc is installed.
# The format is <locale>/<charmap>, where <locale> is a locale from the
# /usr/share/i18n/locales directory, and <charmap> is name of one of the files
# in /usr/share/i18n/charmaps/. All blank lines and lines starting with # are
# ignored. Here is an example:
# en_US/ISO-8859-1
en_US/ISO-8859-1
en_US.UTF-8/UTF-8Code: Select all
# rm /etc/make.profile
# ln -s /usr/portage/profiles/default-linux/x86/2006.0 /etc/make.profileCode: Select all
# emerge ccache
# emerge glibc binutils gcc libstdc++-v3 libtool portage
# emerge --metadataCode: Select all
# gcc-config 6
# binutils-config 2
# env-update; source /etc/profile
# emerge -aP gcc binutilsCode: Select all
# mv /etc/make.conf_gcc4 /etc/make.conf
Now, change the march again
Pentium-m users who chose pentium3, change the flag to pentium-m
athlon64 users who chose athlon-xp, change the flag to athlon64Code: Select all
# emerge glibc binutils libstdc++-v3 gcc libtool portageCode: Select all
# emerge --emptytree world
# etc-update9.1 - Using No-Sources
NO-SOURCES IS IN THE ROOT-OVERLAY, NO NEED TO DOWNLOAD ANY EBUILD!
NO-SOURCES
No-Sources will be used in the conrad guide, pay attention to nicksched and deadline (IO and CPU Scheduler) in sections of the kernel config. These will allow you to get the best performance possible out of the kernel.
9.2 - Emerging No-Sources
Code: Select all
# emerge no-sources-----
I can only help you out so much, what I can do is tell you how to get started, and what is required.
Code: Select all
# cd /usr/src/linux
# make menuconfig
Code: Select all
Required Options...
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
General setup --->
[*] Support for hot-pluggable devices
Loadable Module Support --->
[*] Module unloading support
Processor type and features --->
[*] Standard x86 support
(Change accordingly)
(Your Processor Family) Processor family
[*] Symmetric multi-processing support
# If you have exactly 1GB of memory use the following else just leave it at default.
Memory Split (3G/1G user/kernel split (for full 1GB Low memory)) ---->
File systems --->
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
<*> Ext3 journalling file system support
<*> Second extended fs support
Device Drivers --->
ATA/ATAPI/MFM/RLL support --->
[*] Generic PCI bus-master DMA support
[*] Use PCI DMA by default when available
[ ] SCSI Emulation Support
Device Drivers --->
Networking support --->
<*> PPP (point-to-point protocol) support
<*> PPP support for async serial ports
<*> PPP support for sync tty ports
100 MBIT/1000 MBIT --->
(make sure you compile in your proper network driver
Sound --->
[M] Sound card support
Alsa --->
PCI Cards --->
[M] Your Driver, mine is intel8x0, a common one is emu10k1 for soundblaster cards
USB Support --->
<*> USB Human Interface Device (full HID) support
Device Drivers > Graphics support:
[*] Support for frame buffer devices
<*> VESA VGA graphics support
VESA driver type (vesafb-tng) --->
(HRESxVRES@FREQ) VESA default mode # Pick your resolution - eg. 1024x768@84
Device Drivers > Graphics support > Console display driver support:
[*] Video mode selection support
<*> Framebuffer Console support
Device Drivers > Graphics support:
[*] Support for the framebuffer splash
Device Drivers > Block devices:
<*> RAM disk support
(4096) Default RAM disk size (kbytes) (NEW)
[*] Initial RAM disk (initrd) supportIn the menuconfig...
Code: Select all
General setup --->
[*] Support for hot-pluggable devices
CPU Schedulars -->
Default CPU Schedular --- (Nicksched CPU Schedular)
# This is the default schedular reccomended for the Conrad Install Guide
# Timeslice config option available, by default, it is at 128Before we configure the kernel, there are a few things you should consider.
ANTICAPATORY = Reccomended for older hard drives, e.g. ata66, not a bad choice for reiser4
DEADLINE = Reccomended for newer hard drives, and all sata hard drives, also a good choice for reiser4
CFQ = Not Reccomended in current conrad guide, DO NOT USE WITH REISER4, due to reiser4s higher cpu requirements, CFQ may cause slowdowns and make things a bit *slower* when using reiser4
GO TO MENUCONFIG...
Code: Select all
Block Later --->
IO Schedulars -->
Anticapatory <*>
Deadline <*>
CFQ <*>
Default == (Choose yours here)Code: Select all
(make sure the /boot partition is mounted)
# emerge grubWindows users, your partition layout could look like this, 1-windows,2-swap,3-root,4-boot
9.8 - Compiling the Kernel
Code: Select all
# make && make modules_install && make install10.1 Fixing groups for slocate
Code: Select all
# groupmod -n locate slocateCode: Select all
# emerge syslog-ng reiserfsprogs reiser4progs e2fsprogs sysfsutils dhcpcd coldplug gentoolkit acpid gentoolkit-dev slocate vixie-cronCode: Select all
# rc-update add syslog-ng default
# rc-update add net.eth0 default
# rc-update add coldplug default
# rc-update add acpid default
# rc-update add vixie-cron defaultIf you followed the kernel compile options, you should have everything required
11.1 - Emerging splashutils and a few themes
Code: Select all
# emerge splashutils splash-themes-livecd
# rc-update add splash defaultPlease select your resolution here. If you do not want 1024x768 then replace it with what you would normally run an X server in.
Code: Select all
# cd /etc/splash
# splash_geninitramfs -v -g /boot/fbsplash -r 1024x768 default12.1 Modifying /boot/grub/grub.conf
In grub, hdx1 is (hd0,0), and hdx2 is (hd0,1) and so forth.
Code: Select all
nano -w /boot/grub/grub.confCode: Select all
# grub
<grub:> root (hd0,0) # boot partition
# (hd0) is the MBR of the drive.
<grub:> setup (hd0)
<grub:> quit13.1 - Editing configuration files
Replace hdx with the correct drive letter.
Code: Select all
# nano -w /etc/conf.d/hdparmCode: Select all
# nano /etc/conf.d/hostname
HOSTNAME="conrad-gentoo"Code: Select all
# nano -w /etc/hosts
127.0.0.1 conrad-gentoo localhostCode: Select all
# nano -w /etc/conf.d/domainname
# DNSDOMAIN=""
# NISDOMAIN=""(Not necessary for dhcp users.)
Code: Select all
# nano -w /etc/conf.d/net
For possible lines, visit the Configuring the Network section in the Gentoo Handbook Here
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=8#doc_chap2NOTE: Reiser4 users use noatime and nodiratime in the options
Code: Select all
# nano /etc/fstabFirst set the root password
Code: Select all
# passwd
<enter new password>
<confirm new password>Code: Select all
# useradd -m -G users,wheel conrad
# passwd conrad
<set conrads password>
<confirm conrads password>14.1 Unmounting and Rebooting
Code: Select all
# exit
# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo
# rebootFind yourself at a grub menu, and boot into your system
If you get a kernel panic then check to make sure you configured everything properly by booting back into the livecd and mounting the partititions, etc.
15 - Other Configuration
15.1 - Looking at the possible use variables
Code: Select all
# nano -w /usr/portage/profiles/use.descCode: Select all
USE="x86 oss apm arts avi berkdb crypt cups encode foomaticdb gdbm gif gpm gtk gtk2 imlib jpeg kde gnome libg++
libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl pam pdflib png python qt quicktime readline sdl
slang spell ssl svga tcpd truetype X xml2 xmms xv zlib indent"There are tons of use flags to choose from, personally, I like a kde/gtk/nvidia system, here is how I will set my use flags
Code: Select all
# nano -w /etc/make.conf
USE="nptl nptlonly glibc-omitfp alsa X gtk -gnome qt kde -arts win32codecs nvidia opengl -gstreamer"Most people don't need this, it will fail to start in most cases
Code: Select all
# rc-update del netmount16 - Installing Xorg-X11 and a graphical environment
16.1 Select a video card, and input device
Replace $CARD with the appropriate driver and uncomment VIDEO_CARDS. Since this is an advanced install guide, you should know what to put. Also if you need evdev or any other input device add that to the input_devices variable. If you leave these exactly (remove $CARD if you don't know) then you will get everything.
Code: Select all
# nano -w /etc/make.conf
INPUT_DEVICES=keyboard mouse
VIDEO_CARDS=$CARDCode: Select all
# emerge -oneshot openmotif imake makedepend gccmakedep
# emerge xorg-x11
# LDFLAGS="" emerge --oneshot libXfontYou should be able to do this on your own.
Code: Select all
# xorgconfigGnome:
Code: Select all
# emerge gamin gnome gdm(Reccomended if you want to integrate KDE with GTK apps, personally I use mostly gtk2 apps, so I use gtk-engines-qt, gtk-theme-switch, and I emerge a very light kde.
Code: Select all
(KDE Only)
# emerge kdebase kdelibsCode: Select all
(monolithic)
# emerge kde kdm
(meta)
# emerge kde-meta kdmCode: Select all
# nano -w /etc/rc.conf
DISPLAYMANAGER="xdm"Code: Select all
# rc-update add xdm defaultIf you have 3D acceleration on your card, you may want to, and should install the NVidia or ATI Drivers.
Gentoo NVIDIA Guide: http://www.gentoo.org/doc/en/nvidia-guide.xml
Gentoo-Wiki ATI Guide: http://gentoo-wiki.com/HOWTO_ATI_Drivers
17 - Configuring ALSA
For more information you may want to visit the Gentoo Linux Alsa Guide.
Gentoo Alsa Guide: http://www.gentoo.org/doc/en/alsa-guide.xml
17.1 - Emerging alsa packages
(Assuming you have the sound card and alsa items as modules in-kernel)
Code: Select all
# emerge alsa-lib alsa-headers alsa-utilsCode: Select all
# alsaconfCode: Select all
# nano -w /etc/modules.d/alsa
<Find near the botton snd-***, and sound-***>
change *** to your sound card name, for example...
(if it is already there, just ignore it)
snd-intel8x0 sound-intel8x0
snd-emu10k1 sound-emu10k1You should run alsamixer to adjust the levels of your card, and make sure it is all unmuted, you can press 'M' to unmute/mute the card, by default, alsaconf should unmute all or most, depending on setup, of the things required.
Code: Select all
# alsamixerCode: Select all
# rc-update add alsasound default18.1 - Updating the world
First of all always keep the sync up-to-date, a emerge sync once a day at least is recommended
Code: Select all
# emerge syncCode: Select all
# emerge -auD worldNow your system should be on the edge in speed and it should be the most up-to-date system once installed.
Your system (hopefully) Now includes...
* Reiser4 Filesystem
* GCC 4.0.3/cvs based system
* Almost the most potential you can get out of your computer!
* The latest packages portage has to offer
* A very nice boot-up splash with a progress bar
-----
Please leave your feedback, suggestions,support issues or other related things.
Do not post Gentoo issues in this post, only related issues with following this guide.
For Support
For support issues, post in this forum.
If you need other assistance, have suggestions, or need to contact me personally, do so at.
Email: bfadmin@bfgraphics.net
AIM: cheater1034
MSN: n/a
IRC: #conrad
------
Messages from Conrad
If you are interested in developing/help develop something for Conrad Gentoo Projects, email me at, conrad-gentoo@bfgraphics.net
Messages from Nesl247
(This goes for the original Conrad Install as well)
I hope your install went well. We ask all who try this to take a few moments of their time to type what they thought of the install, how easy it was, and how it works.
-Nesl247 (Wiseman)
Thanks,
Cheater-conrad
Post all support issues in this thread




