| View previous topic :: View next topic |
| Author |
Message |
cheater1034 Veteran


Joined: 09 Sep 2004 Posts: 1162
|
Posted: Sat Jun 14, 2008 11:30 pm Post subject: |~| CONRAD |~| Stage 1 on 72 "Eins/Uno/One" INSTAL |
|
|
in loving memory of Cory, aka vipernicus
=~~-~~=
Upgrade guides at bottom of guide
Upgrades from older versions of conrad (ex: v400 "flying colors") is not supported
=~~-~~=
JOIN #Conrad on irc.freenode.org!
JOIN #zen-sources on irc.freenode.org for -zen and -zenMM support
NO RULES IRC CHAT! UNCUT, UNCENSORED
Maybe not really, but it is pretty loose and the discussion is whatever you talk about!
CONRAD
Stage 1 on 72 RELEASE #3(.2) "Toby's Release"
For your convenience, enjoyment, pleasure, fantasy fulfillment, life long dream fulfillment, job, friends, and family!
NOT Supported or endorsed by the Gentoo Foundation, inc. in any way. Do not file bugs on bugs.gentoo.org
^ I'm required to tell you that, but you'll be fine if you post logical bugs related to gcc 4.3.1, glibc 2.8, etc they won't care, people have already reported bugs and fixes were presented (described how to fix in this guide). Don't be afraid to ask on #gentoo for help either, just tell them your problem and see if they can help you.
#conrad is a great place, great people, great help, so JOIN #conrad irc.freenode
=~~-~~=
REL 1 -----> REL2 CHANGELOG
* THIS IS NOW ONLY A STAGE1 BASED INSTALLATION, BELOW IS THE REASON!
* Before, the bootstrap.sh script did not work with ~x86, however i edited it and enhanced it a bit and now we use bootstrap.sh
<void>* The bootstrap script now works with ~x86, and it completely builds the gcc 4.3.1 toolkit, and sets it as the default ---> Meaning that after running bootstrap, you basically go straight to emerge -e system
* Now use zen-sources from SVN, instead of manually downloading the release patch
* KDE-SVN for portage Guide!!!!
=~~-~~=
REL 2 -----> REL3 CHANGELOG
* Now downloadable overlays/portage configs. Saving you time and searching for fixes!
* LDFLAGS, and prelinking now explained which will make noticable improvements
* Compiz Documentation
* DROP kde svn guide
* bootstrap improvements
* Add reference to -zenMM kernel allowing either selection.
* Upgrade guide for those already installed
=~~-~~=
REL 3 -----> REL3.1 CHANGELOG
* Now use funtoo tarballs
* build gcc 4.3.1 before bootstrap with a separate patched overlay, then delete the overlay before boostrap
* Use the gentoo bootstrap script, no need for the conrad bootstrap anymore
* Typos/fixed writing
=~~-~~=
color=darkblue]REL 3.1 -----> REL3.2 CHANGELOG [/color]
=~~-~~=
ABOUT
=~~-~~=
This guide is in no way as unstable as previous versions, ~x86 is not unstable IMO. I've used the ~x86 branch of packages since 2004.*, after i realized from my first gentoo installation that my packages were older than every other distribution's stable branch i've always used ~x86. And I've never been presented with one problem as a result of it. The gcc 4.3.1 toolkit as described in this guide is just the latest and greatest, I wouldn't make and endorse this installation method if i felt it was unusable.
If you've ever seen my previous versions, you'll see what i mean, they weren't just over the top, they were about 2.531 miles over the top and a tiny mistake could break the whole system. However, this version gives you a lot more flexibility. You can even use paludis (i won't judge you, i promis ) if it tickles your fantasy.
Most people don't know or forgot how to do a stage1 nowadays, because it's been deprecated for about 3 years if i'm not mistaken. There's nothing wrong with it, don't question it :-p
=~~-~~=
By: cheater-conrad (aka Brandon)
Named for: Puppy Conrad (Now BIG conrad), my avatar is drawn from an ACTUAL photo of CONRAD
=~~-~~=
THE #CONRAD CREW
----These are the originals from years ago, you could be on this list but first you need to join #conrad! *slap* ----
- Thoffmeyer (operator/founder)
- p4r0l3 (operator)
- Seren (Not an operator, but he should be)
- bigbob73 (operator)
- Vanquisher
- drbombay
- Xerion
- Cheater-Conrad/Myself
=~~-~~=
READ - ME - FIRST
First of all, this is an installation method from stage1, the goal is a ~x86 gentoo system, first doing a bootstrap to get to stage2, then we have our full toolkit built, and we can now emptytree the system to get to stage3 Below is a quick run down of the steps in this installation document:
- We use the 2008.0 stage1 tarball to start off, beginning like you would on any normal gentoo installations
- Then we set our chost/cflags using THIS, If you use ANYTHING beyond what is stated in that wiki you are not following this guide properly!
- We then make sure to define ACCEPT_KEYWORDS="~x86" in our make.conf, along with misc. options such as MAKEOPTS and PORTAGE_NICENESS.
- Then we begin the bootstrap, which will progress us to stage2.
- Then we set USE flags and emerge -e system
- Now we describe the rest of the steps to configure the kernel and boot the gentoo system!
Q: Stage1!?!?!?! That's stupid isn't it? you can just rebuild a stage3 with emerge -e system and get the same thing!
A: Yes you can, but emerge -e system is not enough. To achieve the gcc 4.3.1 toolkit and ~x86 on a stage3, first you would have to change the CHOST/CFLAGS, then rebuild/update the entire system for ~x86. after this, you would be required to set the gcc 4.3.1 as the default profile. Then you would be required to rebuild the toolkit AGAIN with gcc 4.3.1. After this, you would be required to emerge -e system for the SECOND time! in order to rebuild everything with the new toolkit, alternatively to the original gcc 4.1 and glibc 2.6.
Uhh, a little different than just emerge -e system, as you can see it will take almost TWICE as long to begin with a stage3, than it will to begin with a stage1. And it is much quicker/easier/smarter to begin with a stage1 for this type of system
=~~-~~=
STAGE 1 -----> STAGE 2
=~~-~~=
Notes: You can safely assume that 'x' in 'hdx' is a drive letter throughout this guide. Example: 'hdx = hda or hdb'
[-1-] - Choosing a LiveCD
There are ONE/UNO/EINS (1) choices, don't get confused. This is for X86 AND X86_64 Users, one cd fits all!.
1.1 - System Rescue CD
NOTE: This LiveCD is for ALL users (x86 and x86_64).
NOTE2: My particular install was using the 1.0.3 version of the sysrescuecd, which is kernel 2.6.25
Download:
| Quote: | | http://www.sysresccd.org/Download |
1.2 - Burn the CD and Boot it up
If you are incapable of performing this task, it is strongly advisable that you do not attempt this installation
[-2-] - Preparing Your Network
2.1 - Check For Internet Connection
Quick test:
| Code: | | # ping http://google.com |
If no ping,
| Code: | | # net-setup eth0/1/2/3 |
[-3-] - (Optional, Not for SATA users) Using HDPARM
NOTE: sata users can use sdparm, but i've never used it and the commands are probably different.
3.1 - View Hard Disk Configuration
This is important so we know exacty what options to set, if you get confused please do skip this step.
We must know the configuration to know what options to set.
| Code: | | # hdparm -i /dev/hdx |
3.2 - Some of our options
These are some of our options I'm going to personally set, these will change on your configuration (hdparm -i)
I don't expect you to enable every single one, you don't have to, but you can if you would like, btw
DO NOT THINK YOU HAVE TO ENABLE EVERY ONE OF THESE SETTINGS! Most people will not/should not!
* After we set this up, make sure you add these options to /etc/conf.d/hdparm (Explained later in the guide)
* -a1024 = sets read_ahead buffer to 1024 bytes
* -a256 = default read_ahead_buffer
* -c1 = sets io support to 32bit (most commonly supported)
* -c3 = sets io support to 32bit with sync, if -c1 gives you problems, this is an alternitive, but will be slightly slower.
* -c0/2 = set io support to 16bit, if your hdd does not support 32bit
* -d1 = turn on dma
* -m16 = sets multile buffers count to 16 (my hd max. find it using hdparm -i)
* -A1 = enables read-lookahead
non-laptops:
* -M254 = change the acoustic management, 254 is the maximum for speed, 128 is the quiet, you can choose anything in between <-- will increase power usage
laptops?:
* -B1 = enable full power management, 255 turns it completely off, you can choose any number between 1-255
3.3 - Test Hard Disk Speed
| Code: | | hdparm -tT /dev/hdx |
3.4 - Enhance Hard Disk Performance - Optional
NOTE: THESE ARE ALL OPTIONAL OPTIONS! If you can not understand hdparm -i, do not mis set any options.
First option: enabling DMA
We'll do things one at a time, and we'll start by turning on DMA
| Code: | | hdparm -d1 /dev/hdx |
second option: Setting multi sectors
This varies, hdparm -i should read MaxMultiSect, which will specify what you can use. For me, it is 16
| Code: | | hdparm -m16 /dev/hdx |
Third option: Acoustic Management
I'm going to set it to the maximum, 254
| Code: | | hdparm -M254 /dev/hdx |
Fourth option: Power Management
I'm going to turn it down because I don't need to worry about conserving power in my particular case. I'll leave it default
Fifth option: read lookahead
Lets enable it for our purposes
| Code: | | hdparm -A1 /dev/hda |
Sixth option: readahead
You can adjust the amount of readahead buffer with -a
I want it a little bigger than my drive's default (256) so I'll set it up to 1024
don't set this yourself, unless you're sure you know what you're doing!
| Code: | | hdparm -a1024 /dev/hdx |
Seventh option: IO support
Most drives can support 32-bit, if yours doesn't use 16-bit, if yours gives you problem with -c1, try with sync, -c3 (slower), otherwise use 16-bit (default -c0, -c2)
| Code: | | hdparm -c1 /dev/hdx |
Recap: All options we have chosen (These may be crazy, i haven't used hdparm in a long time)
| Code: | | # hdparm -d1 -c1 -m16 -M254 -A1 -a1024 /dev/hdx |
[-4-] - Partitioning
This guide will go about using the following setup:
/dev/hdx1 - boot
/dev/hdx2 - swap
/dev/hdx3 - root
/dev/hdx4 - windows
4.1 - Using Fdisk
Remember that once you have the partition layout, you need to set the type to 82 (Linux Swap) for the swap partition and 83 (Linux) for the root and boot partition. Once you have it setup correctly, hit *w* to write and exit.
Explanations
Swap (suggestions): The swap space should be double the amount of ram you have *** up to 768mb.
e.g. (256mb ram * 512mb swap, 512mb ram * 1gb swap, 768mb ram * 1.5 gb swap)
If you have 1gb of ram, optimal swap is 1gb.
If you have 2gb of ram, optimal swap is 512mb
If you have over 2gb of ram, no swap is reccomended.
| Code: | # 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 if 2gb ram+, less use 2x the ram size
/dev/hdx3 50 70 2564563 83 Linux # root * remainder of space, unless you dual boot windows
/dev/hdx7 70 90 remainder 07 Windows # windows * remainder of space unless you don't have windows
|
4.2 - Choosing a filesystem for /
There are multiple filesystems in the linux kernel (and not in the linux kernel) to choose from.
You can be as basic as JFS or you can even run ntfs-3g (fuse). Although i absolutely do not reccomend running ntfs on /, it is possible*
READ THIS!!!
We are only choosing a filesystem for / as per our partition scheme. For /boot there is no point in choosing a journaling filesystem, and no difference will be noticed. This is a lookout for / only, FS for other partitions should be chosed based on the type of data on the partition.
----
JFS
JFS "Journaling File System" is a very basic journaling filesystem. It is probably the oldest journaling filesystem in the linux kernel dating all the way back to 1990, meaning a lot of debugging in between for what would be today a very stable code base.It does not perform well nor is it particularly flashy. I do not know any setups I would reccomend using it with when there are much better all-around options.
XFS
XFS dates back to 1994. It is probably the second oldest journaling filesystem in the linux kernel. XFS is probably the most steady filesystem in the linux kernel. It has a much-debugged rock solid code base. And the performance is greater than ext3, especially with the handling of larger files. XFS is a great choice for the user who never wants to deal with filesystem issues, and also getting pretty good performance.
ext3
Ext3 "Third extended filesystem" is a extension of ext2 "Second extended filesystem". Differences vs. ext2 are (1) Journaling FS support, (2) Online filesystem growth, and (3) H Tree. ext3 does not have very high performance compared to other filesystems, and I would not consider it a good choice when you can get likely better performance on XFS, while also having a much more stable filesystem.
ReiserFS
ReiserFS is a general purpose journaling filesystem, created by Namesys. Reiserfs(3) is complete and feature-filled. It is generalyl considered to have better performance than the filesystems mentioned above. Although reiserfs3 tail packing can have a pretty good performance impact.
Reiser4
Reiser4 is a new reiserfs, built from the ground up. Supposed to handle directories with a large amount of files a lot better, has much more efficient handling of small files, and it has a plugin structure. Reiser4 was and always has been a very good filesystem. However it seems kernel developers wanted to make all kinds of changes for merge in the mainstream kernel, and since then it has been going downhill. I do not reccomend reiser4 as it seems to kill every partition it lands on now, which never happened in the past. Hopefully in the future reiser4 can return to the state it was a couple years+ ago.
ext4/ext4dev
Ext4 "Fourth extended filesystem". Ext4 began as a fork of the ext3 filesystem, but kernel developers wanted to keep ext3 stable, causing the project to become ext4. It has some new features such as extents, and it is backwards compatible (ext3 can mount as ext4) and ext4 can mount as ext3 (unless extents is enabled). Ext4 is now generally stable and will soon lose the title ext4dev next 1 or 2 kernel releases. I reccomend as it probably is among the best in overall performance in the linux kernel, between reiserfs and reiser4 (not in linux kernel).
BTRFS
BTRFS, b--tree filessystem, is still in development, introduced in 2007 by Oracle, has a new design that when more stabilized will probably be the choice of most users, and those operating production servers. Although i am using BTRFS, i do not reccomend it as you will need to re-formate / upon version updates due to changes in the mounting structure.
4.3 - Creating Partitons
Please keep in mind the example partition scheme used throughout the guide.
Making /boot and swap
| Code: | # mkfs.ext2 /dev/hdx1
# mkswap /dev/hdx2
# swapon /dev/hdx2
|
Making /
Generic
I don't feel i need to explain all of these, just some with special notice i'll explain, just run the mkfs of the FS you want, ex. mkfs.xfs, mkfs.ext3, mkfs.reiserfs, mkfs.reiser4, etc.
ext4
| Code: | # mkfs.ext3 /dev/hdx3
# tune2fs -E test_fs /dev/hdx3 |
reiser4 with lzo/gzip compression
| Code: | LZO:
# mkfs.reiser4 -o create=ccreg40,compress=lzo1 /dev/hdx3
GZIP:
# mkfs.reiser4 -o create=ccreg40,compress=gzip1 /dev/hdx3 |
4.4 - Mounting your hard drives
You may need to specify -t <fsname> depending on the filesystem
| Code: | # mount /dev/hdx3 /mnt/gentoo
# mkdir -p /mnt/gentoo/proc /mnt/gentoo/boot
# mount /dev/hdx1 /mnt/gentoo/boot |
[-5-] - Preparing Chroot
I've been informed that bootstrapping is a good opportunity to try PALUDIS, if interested then you can read up about it:
http://paludis.pioto.org/overview/gettingstarted.html
http://forums.gentoo.org/viewtopic-p-5118336.html#5118336
5.1 - *Funtoo* Downloading and Extracting the stage1
We are going to use funtoo stages, as you can use i686, and they have gcc 4x
Funtoo stages go by _date_, so the date downloaded is the newest available at the time of _writing_, i suggest browsing the repo for the latest stage, and if your cpu is too old for i686 (ie 386 or 486 class CPUs), choose the other appropriate ARCH.
i686
| Code: | # cd /mnt/gentoo
# wget http://www.funtoo.org/linux/i686/funtoo-i686-2008.07.17/stage1-i686-2008.07.17.tar.bz2
# tar -jxvpf stage1-i686-2008.07.17.tar.bz2
# rm stage1-* |
x64
| Code: | # cd /mnt/gentoo
# wget http://www.funtoo.org/linux/amd64/funtoo-amd64-2008.07.15/stage1-amd64-2008.07.15.tar.bz2
# tar -jxvpf stage1-amd64-2008.07.15.tar.bz2
# rm stage1-* |
5.2 - Downloading and Extracting a Portage Snapshot
| Code: | # wget http://gentoo.osuosl.org/snapshots/portage-latest.tar.lzma
# tar --lzma -xvf portage-latest.tar.lzma -C /mnt/gentoo/usr |
5.3 - Copying resolv.conf
| Code: | | # cp -L /etc/resolv.conf /mnt/gentoo/etc/ |
[-6-] - Preparing New Environment
6.1 - Fetching the portage overlays and configuration files
| Code: | # For Overlays
mkdir /mnt/gentoo/usr/local/portage
wget conrad.whitesouls.com/overlay/portage.tar.bz2
tar jxvf portage.tar.bz2 -C /mnt/gentoo/usr/local/portage
# For portage config files
mkdir /mnt/gentoo/etc/portage
wget conrad.whitesouls.com/configs/config.tar.bz2
tar jxvf config.tar.bz2 -C /mnt/gentoo/etc/portage
|
6.2 - Mounting /proc
| Code: | | # mount -t proc none /mnt/gentoo/proc |
6.3 - Chrooting
| Code: | # chroot /mnt/gentoo /bin/bash
# env-update; source /etc/profile |
6.4 - Check for correct date
| Code: | # date
061316332008
(If incorrect, enter the following in correct format, and please use military time)
# date MMDDhhmmYYYY |
6.5 - Changing to 2008.0 Profile
| Code: | # rm -r /etc/make.profile
# ln -s /usr/portage/profiles/default/linux/x86/2008.0/ /etc/make.profile |
[-7-] - Preparing For Installation
7.1 - Configuring make.conf AND Setting ACCEPT_KEYWORDS="~x86"
Please Note, the following flags in make.conf are MANDATORY to change
* ACCEPT_KEYWORDS="~x86" # Not using this defeats the whole purpose of the guide, so turn it on
* CHOST, please set your CHOST using: http://www.gentoo.org/doc/en/change-chost.xml
Configuring CFLAGS should be done using the following website:
http://gentoo-wiki.com/Safe_Cflags
Anything beyond this is not reccomended because most individuals do not know what these flags do but they will enable them anyway!
| Code: | | # nano /etc/make.conf |
Here's an example make.conf, it's my make.conf for my intel core 2 duo e6400 at this stage in the process
Please DO NOT use -march=native at this point
| Code: | CFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="i686-pc-linux-gnu" # or x86_64-pc-linux-gnu
ACCEPT_KEYWORDS="~x86" # or ~amd64
PORTAGE_NICENESS="15"
# Dual Core
MAKEOPTS="-j3"
|
7.2 - Making use of the portage overlays
| Code: | # cat /etc/make.conf
..
PORTDIR_OVERLAY="/usr/local/portage"
.. |
[-8-] - Bootstrapping (progressing into stage2, mind you we are still at stage1)
8.1 - Emerging gcc 4.3.1
We do this _BEFORE_ the bootstrap, so we can build everything with gcc 4.3.1, and if we don't use this special patched 4.3.1 ebuild then we will experience failure.
Get the overlay:
| Code: | # wget conrad.whitesouls.com/gcc.tar.bz2
# tar jxvf gcc.tar.bz2 -C /usr/local
# rm gcc.tar.bz2 |
Set the overlay in make.conf:
| Code: | # cat /etc/make.conf
..PORTDIR_OVERLAY="/usr/local/portage /usr/local/portage/kde-overlay /usr/local/gcc"..
(notice you ADD /usr/local/gcc) |
Emerge the ebuild:
| Code: |
(This _should_ pull gmp, mpfr, and glibc 2.8)
# USE="-* build" emerge =sys-devel/gcc-4.3.1-r1 |
Delete the overlay/make.conf entry
We no longer need these files any more, it was a temporary patch for bootstrap
| Code: | # rm -r /usr/local/gcc
# cat /etc/make.conf
..PORTDIR_OVERLAY="/usr/local/portage /usr/local/portage/kde-overlay"..
(notice you REMOVE /usr/local/gcc) |
Set gcc 4.3.1 to default profile; prune the old gcc
| Code: | # gcc-config -l
(gcc 4.3.1 should be listed second, if there is no star next to it, indicating it's the default, then run)
# gcc-config 2
# emerge -aP gcc (assure it's pruning 4.1.2, then say yes |
8.2 - Setting march=native
Since gcc 4.2*, we now have the ability to set "native" as the "-march" parameter for GCC. This automatically detects the CPU and fills in all the optimal flags, etc.
| Code: | # nano /etc/make.conf
Revise:
CFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe"
TO:
CFLAGS="-O2 -march=native -fomit-frame-pointer -pipe" |
8.3 - Setting userlocales
| Code: | | # nano -w /etc/locale.gen |
Example file:
| Code: | # 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-8
|
8.4 - Setting up LDFLAGS
The following LDFLAGS are proven to be quite stable and we are going to use them as they will give us some nice gains!
There is a more unstable selection which i am using on my system and have not encountered any problems with which is also below.
| Code: | # nano /etc/make.conf
Add:
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed" |
8.5 - Running the BOOTSTRAP Script! - YEAh bABY!
| Code: | # cd /usr/portage/scripts
# ./bootstrap.sh |
Go enjoy some java joe's or a nice starbucks because this will take awhile (longer than a regular bootstrap for the update of gcc's sake)
- Please know that this script completely builds the gcc 4.3.1 toolkit, so after it's done the old gcc is already pruned and the new toolkit is all built on gcc 4.3.1
Congratulations, you now have a fully disfunctional gentoo stage2 installation, but this is only the beginning!!!! Time for STAGE3!
=~~-~~=
STAGE 2 -----> STAGE 3
You now have a fully built stage2 will gcc 4.3.1, glibc 2.8, ~x86/~amd65, etc., if you do not believe me run gcc-config -l :-p
=~~-~~=
Now, this is essentially our final step before getting ready to boot up, this will bring us to the stage3 you download from the servers, except unlike the stage3's on the servers yours is ~x86, custom built for your machine with your flags, and it's all built with the latest version of gcc, 4.3.1 (meaning, it doesn't suck )
Remember young lad, this is the whole point of this installation, you only have a couple simple steps and a fairly long wait
Dear loyal stage1/3 doers, this is the final step for me, and i regret to inform you that you don't even have the gcc 4.3.1 toolkit. Heck, you could quit now and do a stage1 like this and still finish before you'd finish that disgusting stage1/3
On to our stage3!
8.6 - Setting your USE flags
THIS WILL add more things to your emerge -e system, but don't fret child, you will have everything built the way you want it, for me i have my use flags below, and it turned 95 packages into 116, including some x libraries
This is another ADVANTAGE OVER STAGE3, the stage3 is built with the stock use flags, this stage3 is built with YOUR use flags, saving you from having to rebuild packages in the future because alsa, or gpm, or X was not set as a use flag when the package was originally built
For more information on setting use flags, please visit: http://gentoo-wiki.com/FAQ_USE_Flags
http://gentoo-wiki.com/FAQ_USE_Flags
These are mine for a gnome/xfce/gtk based env
My use flags:
| Code: | | USE="alsa acpi X -kde aim -arts nvidia fbcon ffmpeg firefox firebird gif gpm mplayer mpeg mp3 ncurses opengl pdf php gdm gtk gnome xfce" |
I suggest doing this before rebuilding the system for reasons described above ^, if you do it after then you will not have a system built with your use flags.
8.7 - Rebuilding the SYSTEM
This is the longest step in the _core_ of the guide, aside from the obvious Xorg/KDE/Gnome/other DE builds, but those don't make up the core system like these steps.
However, the following command will rebuild everything, including the toolkit, so we're probably looking at 2-3x longer than building the toolkit by itself. Just start this up, have dinner or watch a movie and you're in pretty good shape.
Now, build the system.
8.8 - Setting the timezone
There's a reason for doing this after emerge -e system, because when you start with a stage1 there is no /usr/share/zoneinfo!
| Code: | # rm -rf /etc/localtime
(for me, i'm going to set the US/Eastern timezone)
# ln -s /usr/share/zoneinfo/US/Eastern /etc/localtime |
_do NOT use step 8.9 yet, it's still in progress_
8.9 - Setting up Paludis *OPTIONAL*
Since R3.2, paludis is now described. as an optional alternative.
Please consult http://paludis.pioto.org/overview/gettingstarted.html before continuing
We do NOT use portage2paludis.sh
---
(1) Downloading the paludis configuration
There are 3 configurations available:
1. paludis-i686: Generic for i686 systems + conrad
2. paludis-amd64: Generic for amd64/64-bit systems + conrad
3. paludis-amd64-no-multilib: Generic for amd64/64-bit system w/o multilib + conrad
| Code: | # wget http://conrad.whitesouls.com/paludis/paludis-i686.tar.bz2
or
# http://conrad.whitesouls.com/paludis/paludis-amd64.tar.bz2
or
# http://conrad.whitesouls.com/paludis/paludis-i686-nomultilib.tar.bz2
Extract with:
# tar jxvf paludis-*.tar.bz2 -C /etc |
(2) Configuring the paludis configuration
Browse through /etc/paludis to make the configuration custom, be sure to set use.conf with your use flags. Many files have comments above them explaining what to do.
(3) Making directories for paludis
Paludis can not make directories itself for security purposes, we must do it.
| Code: | # mkdir /var/tmp/paludis
# mkdir -p /var/cache/paludis/write-cache
# mkdir /var/cache/paludis/names-cache
# mkdir /var/cache/paludis/metadata |
(4) Emerging paludis
Now we need to emerge paludis, be sure to build paludis with the "ruby" use flag so you can use the playman script.
(5) Using overlay with paludis
The overlay is described as being in /usr/local/overlays/conrad
change the location= line to the relevant location if possible.
| Code: | # cat /etc/paludis/repositories/conrad.conf
master_repository = gentoo
location = /usr/local/overlays/conrad
names_cache = /var/cache/paludis/names-cache
write_cache = /var/cache/paludis/write-cache
format = ebuild |
For other overlays, use playman just like layman, then sync afterwards. Config files are automatically created, although you can edit them to change the default location of where the overlays will be written, all syncing of overlays is handled through paludis _not playman_
(6) Using chown to change ownership to paludisbuild > portage
We need to do this otherwise you'll get warning: disabling userpriv no paludisbuild group, along those lines.
| Code: | # chmod g+x /var/tmp/paludis
# chown -R paludisbuild:paludisbuild /usr/portage/distfiles && chown -R /usr/portage/distfiles/*
# chown -R paludisbuild:paludisbuild /var/tmp/paludis && chown -R /var/tmp/paludis/* |
(7) Syncing paludis
At this point, if you are using playman to get overlays, it may be necessary to to install git/svn/cvs. I built git without the gtk and perl use flags because i didn't want to install a whole bunch of extra X/perl package, but you can build them if you want. emerge dev-util/git subversion cvs.
( Regenerating cache
| Code: | | # paludis --regenerate-installable-cache; paludis --regenerate-installed-cache |
(9) Paludis usage
* For the rest of this guide, you can now substitute "paludis -i" for "emerge"
* I reccomend that when you make a package.use/keywords/unmask/mask/etc entry that you apply it to BOTH paludis and portage, same with make.conf/bashrc
* I reccomend keeping the same overlays in paludis as in layman
* I reccomend using the same directory for the conrad overlays in paludis and portage
* See: http://gentoo-wiki.com/HOWTO_Use_Portage_alternative_-_Paludis for help with usage, also man paludis[/code]
8.10 - Setting up layman
If you are unsure how to use layman, please consult: http://gentoo-wiki.com/TIP_Overlays#Layman
| Code: | # emerge layman
# echo "source /usr/local/portage/layman/make.conf" >> /etc/make.conf
# layman -a zen-overlay # we need this for nvidia and zenmm, as well as a dummy kernel ebuild since we use git |
[-9-] - Making the decision... zen/zenRT/zenMM
9.1 - Looking at the differences between the 3
-zen
* Based off of the latest vanilla kernel from git.
* Tuxonice, Reiser4, BTRFS, BFQ, lockless and cpc, zen-tunables, tp_smapi, gentoo patches (fbcondecor, etc), fujitsu laptop patches, eeepc patches, and even some more useful stuff.
-zenMM
* Based off of the latest -mm kernel patch
* Reiser4 (mm inclusive), BTRFS, BFQ, lockless(mm inclusive), zen-tunables, tp_smapi, gentoo patches (fbcondecor, etc), fujitsu laptop patches, eeepc patches, and even more useful stuff.
-zenRT
* Based off of the latest -RT branch of the linux kernel (git)
* 100% real-time kernel (good for audio/multimedia purposes)
* Includes most of the features found in zen/zenmm, including btrfs, reiser4, etc.
9.2 - Setting up the sources/Using git to clone the tree
| Code: | # cd /usr/src/linux
# emerge dev-util/git (USE="-gtk" if you do not want to pull a whole bunch of X packages, USE="-perl" if you don't want to pull perl packages)
for zen:
# git clone git://zen-sources.org/zen/kernel.git zen-sources
for zenMM
# git clone git://zen-sources.org/zen/kernel-mm.git zenmm-sources
for zenRT
# git clone git://zen-sources.org/zen/kernel-rt.git zenrt-sources
# ln -s zen*-sources/ linux |
9.3 - Configuring and Compiling Kernel
-----
All I can do is tell you how to get started, and what is required.
| Code: | # cd /usr/src/linux
# make menuconfig
|
Please note none of this menuconfig has changed since the conrad guide of quite awhile ago, so the below information is somewhat outdated, this was just to give you an idea anyways, i don't feel i can tell people what to compile in their kernel since there are tons of hardware possibilities
Below are _guidelines_ for compiling the kernel, and nothing more.
| Code: | 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 (Used for amd64/em64t cpus)
(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 --->
<*> Your filessytems here
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
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 --->
[*] Sound card support
Alsa --->
PCI Cards --->
[*] Your Drive
USB Support --->
<*> USB Human Interface Device (full HID) support
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) support |
9.4 - Choosing an IO Scheduler
We're going to configure another important aspect in our kernel. Here is a run down of each IO Scheduler.
CFQ: Best all-around for desktop performance, including reiser4. If you want to use the others go for it, but CG now reccomends CFQ
| Code: | KERNEL CONFIGURATION
Block Devices > IO Schedulers
[*] Anticipatory
[*] Deadline
[*] CFQ
[*] BFQ
(Default = Deadline) |
NOTE: I reccomend AS/Deadline for reiser4, as CFQ has some problems on certain hardware configurations.
9.5 - Emerging Grub
| Code: | (make sure the /boot partition is mounted)
# emerge grub |
9.6 - Setting up OSS v4(.1) (optional)
OSS depends on GTK+2 due to ossxmix, if you don't want to emerge a bunch of X junk now, i suggest doing this after installing X later on
OSS FAQ
*Q OSS is old and deprecated, and it's lame versus alsa.
A - No, the OSS IN-KERNEL is deprecated, oss4 has more drivers than alsa, and the mixer is much better IMO, and sound quality is superb. (it's basically what I think alsa should be)
-----
Anyway, I highly reccomend trying oss4, it's extremely easy to setup, and it works very well.
Step 1 - Going back to kernel menuconfig
| Code: | # cd /usr/src/linux
# make menuconfig
---
Device Drivers -->
<M> Sound card support --->
< > Advanced Linux Sound Architechture
< > Open Sound System (DEPRECATED)
*note, sound card support should be built as a module, and ALSA/OSS should BOTH be completely disabled just to avoid conflicts
--- |
Step 2 - Getting the oss overlay
First, make sure mercurial is installed (emerge -a mercurial)
Then we need to get the oss-overlay
| Code: | | # hg clone http://hg.atheme.org/users/majeru/portage-overlay oss-overlay |
Step 3 - Editing make.conf, and moving the overlay to /usr/local/portage
This is easy, we need to edit PORTDIR_OVERLAY
| Code: | # mv oss-overlay /usr/local/portage
# cat /etc/make.conf
...
PORTDIR_OVERLAY="/usr/local/portage"
change to:
PORTDIR_OVERLAY="/usr/local/portage /usr/local/portage/oss-overlay |
Step 4 - Masking the mercurial ebuild, USE="flash", and emerging oss-devel
| Code: | *Masking mercurial ebuild:
# echo "=media-sound/oss-devel-9999" >> /etc/portage/package.mask
*flash support for oss is nice to have, so:
# echo "media-sound/oss-devel flash" >> /etc/portage/package.use
*emerging oss-devel
# emerge oss-devel |
Step 5 - Adding OSS to the default runlevel
| Code: | | #rc-update add oss default |
It's nice, that's all you have to do, it will automatically pick your driver, and instead of alsamixer, check out ossmix and ossxmix, both are much better than alsamixer IMO, ossxmix is extremely useful and awesome, here's a screenshot because a picture is a million words right? URL: http://img169.imageshack.us/img169/9569/ossxmixhb4.png
Step 6 - Naming the overlay
You'll probably get annoying no repo_name entries, just do this:
| Code: | # mkdir /usr/local/portage/oss-overlay/profiles
# echo "OSS v4 Overlay" >> /usr/local/portage/oss-overlay/profiles/repo_name |
Step 7 - Kepping the overlay up to date
You probably want to keep the latest oss, for me i could never build the mercurial ebuild successfully, but you could try it yourself (idk maybe it's just always broken when i try it)
but to keep the overlay up to date routinely simply just do the following
| Code: | # cd /usr/local/portage/oss-overlay
# hg pull -u |
9.7 - Compiling the Kernel
If you're not doing the gensplash step
| Code: | | # make ; make modules_install ; make install |
If you are going to setup a gensplash
9.8 - *Optional* Setting up gensplash
Please carefully follow the instructions under each bold face heading.
(1) Get back into menuconfig sucka
Now, we need to enable the following
| Code: | Device Drivers ->
Graphics support ->
[*] Support for frame buffer devices ---->
<*> Enable Firmware EDID
---------------------------
Device Drivers ->
Graphics Support ->
Console display driver support ->
[*] Video mode selection support
< > Framebuffer Console support |
(2) USE="x86emu"
This is optional, but for some people v86d segfaults unless this use flag is set
| Code: | | # echo "sys-apps/v86d x86emu" >> /etc/portage/package.use |
(3) emerg klibc and v86d for uvesafb
| Code: | | # emerge klibc; emerge v86d |
(4) Configuring the kernel (again)
We need to enable all of the following.
| Code: | Device Drivers ->
<*> Connector - unified userspace <-> kernelspace linker --->
...
Graphics support ->
<*> Userspace VESA VGA graphics support |
| Code: | General Setup ->
[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support
(/usr/share/v86d/initramfs) Initramfs source file(s) |
| Code: |
Console display driver support --->
[*] Video mode selection support
<*> Framebuffer Console support
[*] Support for the Framebuffer Console Decorations |
(5) Building the kernel and installing it
| Code: | | # make; make modules_install; make install |
(6) Emerging splashutils and themes
| Code: | # echo "media-gfx/splashutils fbcondecor" >> /etc/portage/package.use
# emerge splashutils splash-themes-gentoo splash-themes-livecd |
(7) Creating an initramfs image
I'm using the livecd splash, i find it the best and most functional, plus it's the only 1 out of the 3 emerged that supports my resolution.
Apparently widescreen resolutions don't work, and on top of that the biggest possible resolution is 1280x1024, that sucks
| Code: | # cd /etc/splash
(obviously change your resolution)
# splash_geninitramfs -g /boot/fbsplash-livecd-2007.0 -r 1280x1024 -v livecd-2007.0 |
Once you get to grub.conf setup the rest is described
[-10-] - Emerging Additional System Files
10.1 - Emerging Services and Tools
NOTE: you do not need all of these, but they are certainly reccomened and most people need dhcpcd, and if you need the tools for your file system (reiser4progs if you used reiser4), and gentoolkit has a lot of neat stuff, etc.
| Code: |
# emerge syslog-ng sysfsutils acpid dhcpcd gentoolkit slocate vixie-cron |
emerge the FS progs you need (e2fsprogs is part of the system profile, and is not needed to be emerged again)
# emerge reiserfsprogs reiser4progs btrfs-progs xfsprogs jfsutils
------> You probably dont need and wont use all of those things, so you can remove some of them too
10.2 - Adding the programs to the default runlevel
| Code: | (first off, for net.eth0)
# ln -s /etc/init.d/net.lo /etc/init.d/net.eth0
# rc-update add syslog-ng default
# rc-update add net.eth0 default
# rc-update add acpid default
# rc-update add gpm default
# rc-update add vixie-cron default
# rc-update add numlock default |
NOTE: If you emerged additional things you need, such as mdadm like myself, you may also need to add them into the runlevel
10.3 - Setting up NTP
NTP basically sets your time to that of a network server (using your locally configured timezone)
| Code: | # echo "net-misc/ntp caps" >> /etc/portage/package.use
# emerge ntp
# ntpdate -b -u pool.ntp.org
# rc-update add ntpd default
# rc-update add ntp-client default |
10.4 - (OPTIONAL) Using NTFS-3g for NTFS filesystems
This is obviously optional, and only needed if you have NTFS filesystems from a windows install or whatever other reason there is to have a ntfs partition.
Follow the following steps for ntfs-3g
(1) Configuring the Kernel
What do want to make sure is set in .config is:
You can have regular NTFS in the kernel too, and you can mount it using either fs/driver, specifying either ntfs or ntfs-3g
Obviously rebuild and re-install your kernel if the above setting was not already set
(2) Emergence
| Code: | | # emerge sys-fs/ntfs3g |
(3) Mount a ntfs volume
Mount a ntfs partiton manually with this command:
| Code: | | # ntfs-3g /dev/hdxy /mnt/ntfsfolderfilesystemetcetc |
(4) Example FSTAB line
This are my ntfs-3g fstab lines
| Code: | /dev/sdb3 /mnt/windows ntfs-3g 0 0
/dev/sda1 /mnt/doze ntfs-3g 0 0 |
=~~-~~=
Continuation in post 2! _________________ #conrad on freenode, Go there now.
Gentoo since 1.4_rc3, 5 year+ gentooer (I Quit)
Conrad Stage 1 on 72 Document
Try upstream FIRST. If its broken there too, dont tell me about it!
Last edited by cheater1034 on Fri Jul 25, 2008 12:19 pm; edited 64 times in total |
|
| Back to top |
|
 |
cheater1034 Veteran


Joined: 09 Sep 2004 Posts: 1162
|
Posted: Sat Jun 14, 2008 11:35 pm Post subject: |
|
|
Cont'd
=~~-~~=
[-11-] - Configuring and Installing Grub
11.1 - Modifying '/boot/grub/grub.conf'
In grub, hdx1 is (hd0,0), and hdx2 is (hd0,1) and so forth.
| Code: | nano -w /boot/grub/grub.conf
# If idle for 15 seconds, boot the default operating system
timeout 30
# Means default is the conrad gentoo installation, set to 1 for windows
default 0
# splash image is nice
splashimage=(hd0,0)/grub/splash.xpm.gz
# Please note that this is not needed, otherwise it will run the default i/o as configured in your kernel
# elevator=deadline/cfq/anticipatory/bfq
title ~Conrad~ Stage1 on 72 | -zen
root (hd0,3)
# No widescreen resolutions, they don't work :(
kernel /boot/vmlinuz-2.6.26-rc8-zen1 root=/dev/md0 video=uvesafb:1280x1024-32@60,ywrap,mtrr splash=silent,theme:livecd-2007.0 quiet CONSOLE=/dev/tty1
initrd /boot/fbsplash-livecd-2007.0
title=Winbloze
rootnoverify (hd0,3) # in our demonstrative partitions, windows was on hda4
makeactive
chainloader +1 |
11.2 - Running grub for installation to MBR
| Code: | # grub
<grub:> root (hd0,0) # boot partition
# (hd0) is the MBR of the drive.
<grub:> setup (hd0)
<grub:> quit |
[-12-] - Configuring Your System
12.1 - Editing Configuration Files
Replace 'hdx' with the correct drive letter.
| Code: | # nano -w /etc/conf.d/hdparm
# lets add all our options as seen previously above. refer back to it if you need to |
12.2 - Set Your Hostname and Domainname
| Code: | # nano /etc/conf.d/hostname
HOSTNAME="conrad-v4" |
| Code: | # nano -w /etc/hosts
127.0.0.1 conrad-v4 localhost |
| Code: | # nano -w /etc/conf.d/net
dns_domain_lo="domain"
(obviously replace domain with whatever your desired domain name) |
12.3 - Editing the /etc/conf.d/net
| Code: | | # nano -w /etc/conf.d/net |
| Code: | # DHCP Default Setting
config_eth0=( "dhcp" ) |
For additional info, refer to '/etc/conf.d/net.example'
12.4 - Configuring FSTAB
NOTE: Reiser4 users must use noatime in the options. If you aren't using reiser4 just ignore this note.
| Code: | # nano /etc/fstab
...Change lines 20-23... |
Example
| Code: | /dev/hdx1 /boot ext2 noauto,noatime 1 2
/dev/hdx3 / reiser4 noatime,nodiratime 0 1
/dev/hdx2 none swap sw 0 0
/dev/hdx4 none ntfs ro 0 0
/dev/sda1 /mnt/cdrom iso9660 noauto,ro 0 0 |
12.5 - Setting up Users
Note: I don't use users, i always log in as root but i don't reccomend it, shoot me if you wish for disobeying the laws of security.
First set the root password
| Code: | # passwd
<enter new password>
<confirm new password> |
Then set up a user
| Code: | # useradd -m -G users,wheel,audio,video conrad
# passwd conrad
<set conrad password>
<confirm conrad password> |
12.6 - Prelinking the system
To get the most out of our system we will run prelink, now that hash style is enabled by default in binutils > 2.17.50xxxxxx, prelinking can make a fairly noticable difference.
| Code: | # emerge prelink
# prelink -amR |
Well golly that was easy!
Time to make this happen consistently to keep the binaries prelinked (in the background)
| Code: | # nano /etc/conf.d/prelink
change PRELINKING=""
to PRELINKING="yes" |
Then prelink will automatically run in the background, so you don't have to worry about it!
[-13-] - Rebooting System
13.1 - Unmounting and Rebooting
| Code: | # exit
# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo
# reboot |
13.2 - Booting New System
Hopefully you'll have a grub menu, and be able boot into your new system.
If you get a kernel panic then check to make sure you configured everything correctly by booting back into the SysrescueCD and checking back your fstab, grub.conf, and if neither of those contains errors the problem probably lies in your kernel configuration.
[-14-] - USE flags and additional configuration
14.1 - Looking at the possible use variables
| Code: | | # nano -w /usr/portage/profiles/use.desc |
Uhh, if you did this way back in step 8.7 then you don't need to do this , and your system has already been built with your use flags
14.2 - Setting additionalUSE Flags
| Code: | # nano -w /etc/make.conf
USE="add1 add2 add3.....xv" |
For more In-Depth configuration information, consult the Gentoo Handbook
[-15-] - Installing Modular X and a graphical environment
15.1 - Emerging Xorg
| Code: | # nano /etc/make.conf
...Set INPUT_DEVICES and VIDEO_CARDS
EX:
INPUT_DEVICES="keyboard mouse"
VIDEO_CARDS="nv nvidia vesa"
------
(I find the following to be the best way to get the most complete modular X possible)
------
# emerge -Dvat xorg-x11
# emerge -DuNav xev xdpyinfo xvinfo xset xdriinfo xprop
# emerge -DuNav font-adobe-100dpi font-adobe-75dpi font-adobe-utopia-100dpi font-adobe-utopia-75dpi font-bh-100dpi font-bh-75dpi font-bh-type1 font-bh-lucidatypewriter-100dpi font-bh-lucidatypewriter-75dpi font-bitstream-100dpi font-bitstream-75dpi ttf-bitstream-vera corefonts freefonts font-ibm-type1
|
15.2 - Getting an xorg.conf setup
You should be able to do this on your own.
or
15.3 - Installing a DE+WM
There are several WMs, here are links on HOW-TOs for some common ones.
For KDE SVN, NOT stable/portage, place entries from /etc/portage/kde_keywords and /etc/portage/kde_unmask into package.keywords and package.unmask respectively
KDE-4 (stable/portage): http://www.gentoo.org/proj/en/desktop/kde/kde4.xml
KDE-4 (dev/SVN): http://gentoo-wiki.com/HOWTO_KDE4#Introduction
-----
Gnome (stable/portage-layman):
| Code: | # layman -a gnome
(I reccomend gnome-light, then adding packages as necessary)
# emerge gnome-light
(The following are nice to have)
# emerge eog gnome-applets gnome-utils at-spi libgail-gnome |
XFCE 4 (stable/portage):
XFCE 4 (dev/svn):
There's an overlay in layman, may explain later.
15.4 - Compiz SVN
First, we need to get the desktop-effects overlay.
| Code: | | # layman -a desktop-effects |
In the conrad configs, compiz svn is already unmasked
| Code: | | # emerge compiz-fusion fusion-icon |
Autostarting with kde
| Code: | # ln -s /usr/bin/fusion-icon ~/.kde/Autostart/fusion-icon
(please note, for kdesvn, .kde will be .kdesvn, for kde4 from portage, .kde will be .kde4) |
Autostarting with gnome
To do this, load up gnome, and on the top bar go to System -> Preferences -> Sessions and click on "Add"
Then make the command: fusion-icon &, and that will autostart it every time gnome is loaded
15.5 - Graphics Drivers
If you have 3D acceleration on your card, you should install the nvidia or ati drivers.
NVIDIA: http://www.gentoo-wiki.com/HOWTO_nVidia_Drivers
ATI: http://www.gentoo-wiki.com/Ati
IF YOU HAVE -zenMM and NVIDIA, you MUST READ THIS!!!
-mm needs a very simple patch on nvidia to make it work, you can get the patched ebuild from zen-overlay.
| Code: | | # layman -a zen-overlay |
Then just emerge nvidia-drivers as usual!
=~~-~~=
~END~
=~~-~~=
Also a note on the total installation time if you're curious:
- For me (intel core 2 duo e6400 at 3 ghz) - about 6 hours, however i had left it idle for a little while, and i stopped and took time to write this document as i went along. And i encountered problems and had to find solutions that i already found and fixed for you in the document.
- I have not heard from anyone else
=~~-~~=
Hello, Notice i am not looking for responses criticizing a stage1 installation, if i receive them i will punch you. Because my response is already documented above this post.
=~~-~~=
Updates are commonplace, check back to see if they pertain to you!
=~~-~~=
REL1-->REL2 upgrade guide
<See REL2-->REL3 upgrade guide and wrap-up below>
=~~-~~=
REL2-->REL3 upgrade guide
Ok, here it goes.
(1) Getting the conrad overlay
We now use the conrad overlays, new in REL3
| Code: | # wget conrad.whitesouls.com/overlay/portage.tar.bz2
# tar jxvf portage.tar.bz2 -C /usr/local/portage |
(You should already have /usr/local/portage in make.conf, if not add it, or extract it into the directory you do have defined, some have /usr/portage/local which i never understodd, i think /usr/local/portage is the most correct location of a portage overlay)
(2) Adding LDFLAGS to make.conf
The REL2 and previous have no ldflags, this is quite a major improvement.
| Code: | # cat /etc/make.conf
Add:
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed"
anywhere you want, however i like to keep it organized in there, for that i would place right under CFLAGS/CXXFLAGS/CHOST |
(3) Rebuilding the world
To use the ldflags on all the packages already installed we have to rebuild them, there isn't really any other options
Yes, it will take awhile.
If something fails, emerge --resume is your best friend (fix the problem first of course ), it's probably something stupid
| Code: | # emerge sync
# emerge -e world |
(4) Running revdep-rebuild
We probably just updated and changed stuff, removing some reverse dependencies, but that's what revdep-rebuild is for.
(5) Prelinking/configuring prelink
| Code: | # emerge prelink
# prelink -amR |
Now, we need to run prelink automatically in the background to keep binaries prelinked
| Code: | # nano /etc/conf.d/prelink
change PRELINKING=""
to PRELINKING="yes" |
Update wrap-up
Now you are completely updated to REL3, and when new changes are made you can also upgrade.
New sections since REL2 include the following, and are not in the upgrade guide as they are optional/not needed:
* 15.4 - Compiz-svn
* 9.1 - Looking at the pros and cons of -zen and -zenMM (zenmm is an alternate choice to zen)
* 9.6 - Setting up OSS v4(.1) (optional)
* 9.8 - *Optional* Setting up gensplash
* 10.3 - Setting up NTP
* 10.4 - (OPTIONAL) Using NTFS-3g for NTFS filesystems
=~~-~~=
Fixes and changes LOG (in order)
* Describe oss-devel (4.1) installation - 7/14/08
* Based off of the _funtoo_ i686/amd64 stage1 - 7/19/08
* Back to gentoo bootstrap, it works with i686 now, it didn't work with i486 - 7/19/08
* build gcc 4.3.1 with special overlay before bootstrapping - 7/19/08
* Change from REL3 to REL3.1 - 7/19/08
* Added NTP and ntfs-3g - 7/20/08
* Upgrade guides - 7/20/08 _________________ #conrad on freenode, Go there now.
Gentoo since 1.4_rc3, 5 year+ gentooer (I Quit)
Conrad Stage 1 on 72 Document
Try upstream FIRST. If its broken there too, dont tell me about it!
Last edited by cheater1034 on Sun Jul 20, 2008 10:45 pm; edited 15 times in total |
|
| Back to top |
|
 |
thoffmeyer Apprentice


Joined: 10 Apr 2004 Posts: 207 Location: GMT -5 Hours
|
Posted: Sun Jun 15, 2008 3:48 am Post subject: |
|
|
Sweetness, I will have to try this and let you know how it goes soon.. sometime.. I'm downloading the cd.. so hopefully later today I will do it and let you know my experiences. _________________ Conrad Guide, Current Maintainer
Join us on IRC
Server: irc.freenode.net
Channel: #conrad |
|
| Back to top |
|
 |
kernelOfTruth Veteran


Joined: 20 Dec 2005 Posts: 2933 Location: Vienna, Austria; Germany; hello world :)
|
|
| Back to top |
|
 |
unK Guru


Joined: 06 Feb 2007 Posts: 462
|
Posted: Sun Jun 15, 2008 6:53 am Post subject: |
|
|
| kernelOfTruth wrote: | | Code: | | CFLAGS="-march=prescott -O2 -fomit-frame-pointer -pipe" |
when using gcc-4.3.1, this is pretty conservative and also doesn't foster all of core2 duo's performance:
use -march=core2 or -mtune=nocona -msse3 -mssse3 instead
|
I think best option is to use -march=native, as it recognizes your processor type and sets all -msse* things for you. _________________ ncmpc++ | | |