<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE sections SYSTEM "/dtd/book.dtd">

<!-- The content of this document is licensed under the CC-BY-SA license -->
<!-- See http://creativecommons.org/licenses/by-sa/1.0 -->

<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/nl/handbook/hb-install-system.xml,v 1.9 2005/03/05 10:01:37 neysx Exp $ -->

<sections>

<version>1.66</version>
<date>2005-02-25</date>

<section>
<title>Chrooting</title>
<subsection>
<title>Optioneel: Mirrors selecteren</title>
<body>

<p>
Om broncodes snel te kunnen downloaden, is het aanbevolen om een snelle mirror
te kiezen. Portage zal in het <path>make.conf</path> bestand zoeken naar de
GENTOO_MIRRORS variabele, de mirrors die deze bevat worden gebruikt. Je kunt
naar nze <uri link="/main/en/mirrors.xml">mirror lijst</uri> surfen en naar een
mirror (of mirrors) die dicht bij jou is (omdat deze vaak de snelste zijn),
maar we bieden ook een mooie tool genaamd <c>mirrorselect</c> aan. Deze biedt
een mooie interface om de mirrors die jij wil te kiezen.
</p>

<pre caption="mirrorselect gebruiken voor de GENTOO_MIRRORS variabele">
# <i>mirrorselect -i -o &gt;&gt; /mnt/gentoo/etc/make.conf</i>
</pre>

<warn>  
Kies geen IPv6 mirrors. Onze huidige stages ondersteunen geen IPv6.
</warn>

<p>
Een tweede belangrijke instelling, is de SYNC instelling in
<path>make.conf</path>. Deze variabele bevat de rsync server die je wil
gebruiken als je de Portage boom (de verzameling ebuilds, alle informatie die
Portage nodig heeft om software te downloaden en te installeren) update. Hoewel
je handmatig een SYNC server kan opgeven, <c>mirrorselect</c> kan dit veel
makkelijker maken:
</p>

<pre caption="Met behulp van mirrorselect een rsync mirror kiezen">
# <i>mirrorselect -i -r -o &gt;&gt; /mnt/gentoo/etc/make.conf</i>
</pre>

<p>
Het is sterk aan te bevelen om na het draaien van <c>mirrorselect</c> alle
instellingen in <path>/mnt/gentoo/etc/make.conf</path> te controleren!
</p>

</body>
</subsection>
<subsection>
<title>DNS Info kopieren</title>
<body>

<p>
Voor we kunnen chrooten moet eerst de DNS informatie naar
<path>/etc/resolv.conf</path> gekopieerd worden. Dit is nodig omdat de nieuwe 
omgeving de nameservers voor je netwerk moet kennen.
</p>

<pre caption="Copy over DNS information">
<comment>(De "-L" optie is nodig zodat zeker is dat we geen symbolische link copieren)</comment>
# <i>cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf</i>
</pre>

</body>
</subsection>
<subsection>
<title>Het proc filesystem mounten</title>
<body>

<p>
Mount het <path>/proc</path> filesystem op <path>/mnt/gentoo/proc</path> om de
installatie toe te staan informatie die de kernel levert te gebruiken, zelfs in
de gechroote omgeving.
</p>

<pre caption="/proc mounten">
# <i>mount -t proc none /mnt/gentoo/proc</i>
</pre>

</body>
</subsection>
<subsection>
<title>De Nieuwe Omgeving</title>
<body>

<p>
Nu alle partities aangemaakt zijn en de basis omgeving geïnstalleerd is,
kunnen we naar de nieuwe omgeving overstappen. Dit gebeurt door te
<e>chrooten</e>, dit betekent dat we van de installatie omgeving (LiveCD of
een ander installatie medium) overstappen naar de geïnstalleerde omgeving
(namelijk jouw aangemaakte partities).
</p>

<p>
Dit chrooten gebeurt in drie stappen. Eerst passen we de root aan van 
<path>/</path> (op het installatie medium) naar <path>/mnt/gentoo</path> (op je
partities) met <c>chroot</c>. Daarna maken we de nieuwe omgeving aan met 
<c>env-update</c> welke alle omgevingsvariabelen aanmaakt. Als laatste laden 
we die variabelen in het geheugen met <c>source</c>.
</p>

<pre caption="De nieuwe omgeving binnen chrooten">
# <i>chroot /mnt/gentoo /bin/bash</i>
# <i>env-update</i>
 * Caching service dependencies...
# <i>source /etc/profile</i>
</pre>

<p>
Proficat! Je bent nu in je eigen Gentoo Linux omgeving. Uiteraard bent je nog
niet klaar, daarom wachten er nog een aantal secties op je :-)
</p>

</body>
</subsection>
<subsection>
<title>Updaten van de Portage tree</title>
<body>

<p>
Je dient nu je Portageboom to updaten naar de meest recente versie.
<c>emerge --sync</c> doet dit voor je.
</p>

<pre caption="Updating the Portage tree">
# <i>emerge --sync</i>
</pre>

<p>
Als er een waarschuwing komt dat er een update is voor Portage kun je dit 
veilig negeren. We zullen Portage later tijdens de installatie wel updaten.
</p>

</body>
</subsection>
<subsection>
<title>USE variabele configureren</title>
<body>

<p>
<c>USE</c> is een van de meest krachtige variabelen die Gentoo biedt.
Verschillende programmas kunnen met optionele support voor bepaalde zaken 
gecompileerd worden Bijvoorbeeld, sommigen met gtk-support of qt-support. 
Anderen met of zonder SSL support. Sommige programmas kunnen zelfs met
framebuffer support (svgalib) in plaats van X11 support (X-server) gecompileerd
worden.
</p>

<p>
De meeste distributies compileren hun packages met support voor zoveel als 
mogelijk, dit zorgt voor grotere programmas, langere laadtijden en meer 
afhankelijkheden. Bij Gentoo ben je vrij in welke opties jij zelf wilt. 
Dit is waar <c>USE</c> komt bij kijken.
</p>

<p>
In de <c>USE</c> variabele definieer je sleutelwoorden die aan compile-opties 
gelinked zijn. Bijvoorbeeld, <e>ssl</e> zal ssl-support compileren bij alle 
programmas die dat ondersteunen. <e>-X</e> verwijderd X-server support (let op 
de min). <e>gnome gtk -kde -qt</e> zal je programmas met gnome (en gtk) 
support, maar niet met kde (en qt) support compileren, zo is je systeem 
volledig getweaked voor GNOME.
</p>

<p>
De standaard <c>USE</c> instellingen staan in de <path>make.defaults</path>
bestanden van jouw profiel. Je zult <path>make.defaults</path> bestanden vinden
in de map waarnaar <path>/etc/profile</path> verwijst en tevens in alle
bovenliggende mappen. De standaard <c>USE</c> instelling is de som van alle
<c>USE</c> instellingen in alle <path>make.defaults</path> bestanden. Wat je
zelf in <path>/etc/make.conf</path> plaatst, wordt berekend tegen de standaard
instellingen. Als je iets toevoegt aan <c>USE</c> wordt het in de standaard
opgenomen. Als je iets verwijdert van <c>USE</c> wordt dit uit de standaard
weggehaald (indien het er in zat). Pas <e>nooit</e> iets aan binnen 
<path>/etc/make.profile</path>; dit bestand wordt overschreven bij een een 
update van Portage!
</p>

<p>
Een volledige beschrijving van <c>USE</c> is te vinden in het tweede deel van 
het Gentoo Handboek, <uri link="?part=2&amp;chap=2">USE vlaggen</uri>. Alle
beschikbare USE vlaggen zijn te vinden op je systeem onder
<path>/usr/portage/profiles/use.desc</path>. 
</p>

<pre caption="Alle beschikbare USE vlaggen bekijken">
# <i>less /usr/portage/profiles/use.desc</i>
<comment>(Je kunt scrollen met je pijltjes toetsen, afsluiten door 'q' in te drukken</comment>
</pre>

<p>
Als voorbeeld <c>USE</c> instelling: een KDE-gebaseerd systeem met DVD, ALSA
en CD Recording support:
</p>

<pre caption="/etc/make.conf openen">
# <i>nano -w /etc/make.conf</i>
</pre>

<pre caption="USE instelling">
USE="-gtk -gnome qt kde dvd alsa cdr"
</pre>

</body>
</subsection>
<subsection>
<title>Optional: GLIBC Locales</title>
<body>

<p>
Je zult waarschijnlijk slechts een of misschien twee locales op je systeem
willen. Als je nu <c>glibc</c> compileert zal een volledige set van alle
beschikbare locales gemaakt worden. Je kunt <c>userlocales</c> als USE vlag
instellen en alleen de locales die je nodig hebt in
<path>/etc/locales.build</path> neerzetten. Doe dit alleen als je weet welke
locales je wilt.
</p>

<pre caption="Activeren van de userlocales USE vlag specifiek voor glibc">
# <i>mkdir /etc/portage</i>
# <i>echo "sys-libs/glibc userlocales" >> /etc/portage/package.use</i>
</pre>

<p>
kies nu de locales die jij nodig hebt:
</p>

<pre caption="/etc/locales.build Openen">
# <i>nano -w /etc/locales.build</i>
</pre>

<p>
De volgende locales zijn een voorbeeld om Engelse (Verenigde Staten) en Duitse
(Duitsland) locales te krijgen met bijpassende character formaten (zoals UTF-8).
</p>

<pre caption="Jouw locales kiezen">
en_US/ISO-8859-1
en_US.UTF-8/UTF-8
de_DE/ISO-8859-1
de_DE@euro/ISO-8859-15
</pre>

</body>
</subsection>
</section>
<section>
<title>Verschillen tussen Stage1, Stage2 en Stage3</title>
<body>

<p>
Neem nu even de tijd om na te denken over de volgende stappen.
Er werd gevraagd te kiezen tussen <e>stage1</e>, <e>stage2</e> of 
<e>stage3</e> en je werd gewaarschuuwd dat deze keuze belangrijk is voor de 
volgende stappen. Dit is de eerste keer dat die keuze de volgende stappen 
bepaald.
</p>

<ul>
<li>
  Als je voor <e>stage1</e> koos, volg je <e>beide</e> stappen in dit 
  hoofdstuk (eerst <uri link="#doc_chap3">van Stage1 naar Stage2</uri>).
</li>
<li>
  Als je voor <e>stage2</e> koos, kan je de eerste stap overslaan en direct 
  aan <uri link="#doc_chap4">van Stage2 naar Stage3</uri> beginnen.
</li>
<li>
  Als je voor <e>stage3</e> koos, dan sla je beide over en ga je door naar
  <uri link="?part=1&amp;chap=7">de Kernel configureren</uri>.
</li>
</ul>

</body>
</section>
<section>
<title>van Stage1 naar Stage2</title>
<subsection>
<title>Introductie tot Bootstrapping</title>
<body>

<p>
Dus je wil alles vanaf nul compileren? Ok dan :-)
</p>

<p>
In deze stap zullen we het Gentoo systeem bootstrappen. Dit duurt lang maar 
het resulteert in een volledig geoptimaliseerd systeem voor jouw machine.
</p>

<p>
<e>Bootstrapping</e> betekent de GNU C Library, GNU Compiler Collectie en een 
aantal andere systeem programmas compileren.
</p>

<p>
Voor we met de bootstrap beginnen wil je misschien eerst alle benodigde
broncodes downloaden. Indien je deze niet wilt kan je verder met
<uri link="#bootstrap">het Systeem Bootstrappen</uri>.
</p>

</body>
</subsection>
<subsection>
<title>Optioneel: De sources eerst downloaden</title>
<body>

<p>
Het is mogelijk om eerst alle source code af te halen en daarna pas het 
bootstrappen te starten (als je niet wil dat je internet connectie de hele 
tijd open staat). Indien je dit niet doet gebeurt dit wel automatisch, maar 
dan heb je een permanente netwerk connectie nodig. Gebruik hiervoor de 
<e>-f</e> optie van het bootstrap script, dit <e>f</e>etcht alle code voor u.
</p>

<pre caption="De benodigde sources downloaden">
# <i>cd /usr/portage</i>
# <i>scripts/bootstrap.sh -f</i>
</pre>

</body>
</subsection>
<subsection>
<title>het Systeem Bootstrappen</title>
<body>

<p>
Nu kan je het bootstrap script starten. Daarna kan je maar best wat anders 
gaan doen, want dit duurt redelijk lang. (Bijvoorbeeld de Gentoo developers 
lastig vallen op #gentoo)
</p>

<pre caption="Bootstrapen">
# <i>cd /usr/portage</i>
# <i>scripts/bootstrap.sh</i>
</pre>

<p>
Als je de <c>ntpl</c> USE vlag hebt gebruikt, dan is het mogelijk dat
<c>bootstrap.sh</c> mislukt met het bericht dat <c>linux-headers</c> de
installatie van <c>linux26-headers</c> blokkeert. Als je deze foutmelding
krijgt, verwijder <c>linux-headers</c> en probeer het opnieuw:
</p>

<pre caption="linux-headers van je systeem verwijderen">
# <i>emerge -C linux-headers</i>
# <i>emerge --oneshot --nodeps linux26-headers</i>
# <i>scripts/bootstrap.sh</i>
</pre>

<p>
Ga nu door met de volgende stap <uri link="#doc_chap4">van Stage2
naar Stage3</uri>.
</p>

</body>
</subsection>
</section>
<section>
<title>van Stage2 naar Stage3</title>
<subsection>
<title>Introductie</title>
<body>

<p>
Als je deze sectie leest heb je een gebootstrapped systeem (ofwel omdat je 
het daarnet zelf gedaan hebt, ofwel gebruik je een <e>stage2</e>). 
Dan is het nu tijd om alle syteem pakketten te compileren.
</p>

<p>
<e>Allemaal</e>? Nee, in deze stap worden enkel deze gemaakt waarvoor er geen 
alternatieven zijn. Sommige pakketten hebben meerdere alternatieven (onder 
andere system loggers) en Gentoo draait rond keuzes, dus we leggen er 
je geen op.
</p>

</body>
</subsection>
<subsection>
<title>Optioneel: Zien wat er gaat gebeuren</title>
<body>

<p>
Als je wil weten welke pakketten er geinstalleerd zullen worden, voer dan
<c>emerge --pretend system</c> uit. Dit geeft een lijst van alle te 
installeren pakketten. Het kan gebeuren dat je hiervoor <c>less</c> of 
<c>more</c> nodig hebt omdat de lijst aardig lang kan worden.
</p>

<pre caption="Bekijk wat 'emerge system' gaat doen">
# <i>emerge --pretend system | less</i>
</pre>

</body>
</subsection>
<subsection>
<title>Optioneel: de Sources downloaden</title>
<body>

<p>
Als je wil dat <c>emerge</c> eerst de sources download voor je verder gaat
(als je niet wil dat uw connectie open staat terwijl je het syteem compileert)
kan je de <e>--fetchonly</e> optie van <c>emerge</c> gebruiken. 
</p>

<pre caption="Fetching the sources">
# <i>emerge --fetchonly system</i>
</pre>

</body>
</subsection>
<subsection>
<title>het Systeem compileren</title>
<body>

<p>
Om te starten met het systeem te compileren, voer je <c>emerge system</c> uit. 
Dit duurt ook een tijdje, dus kan je je maar beter ergens anders mee bezig 
houden.
</p>

<pre caption="Het systeem compileren">
# <i>emerge system</i>
</pre>

<p>
Je kunt nu veilig iedere waarschuwing over het updaten van configuratie
bestanden (en <c>etc-update</c> draaien) negeren. Als je Gentoo systeem volledig
is geïnstalleerd en opgestart, lees dan onze documentatie over <uri
link="?part=3&amp;chap=2#doc_chap3">Configuratie bestanden bescherming</uri>.
</p>

<p>
Als hij klaar is, ga je verder met <uri link="?part=1&amp;chap=7">de Kernel 
configureren</uri>.
</p>

</body>
</subsection>
</section>
</sections>
