<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!-- Copyright (c) 1998, 1999 Nik Clayton, All rights reserved.

     Redistribution and use in source (SGML DocBook) and 'compiled' forms
     (SGML HTML, PDF, PostScript, RTF and so forth) with or without
     modification, are permitted provided that the following conditions
     are met:

      1. Redistributions of source code (SGML DocBook) must retain the above
         copyright notice, this list of conditions and the following
         disclaimer as the first lines of this file unmodified.

      2. Redistributions in compiled form (transformed to other DTDs,
         converted to PDF, PostScript, RTF and other formats) must reproduce
         the above copyright notice, this list of conditions and the
         following disclaimer in the documentation and/or other materials
         provided with the distribution.

     THIS DOCUMENTATION IS PROVIDED BY NIK CLAYTON "AS IS" AND ANY EXPRESS OR
     IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES role="package"
     OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
     DISCLAIMED. IN NO EVENT SHALL NIK CLAYTON BE LIABLE FOR ANY DIRECT,
     INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
     (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
     SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
     ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE
     POSSIBILITY OF SUCH DAMAGE.

     $FreeBSD$
     $FreeBSDde$
     basiert auf: r38870
-->

<chapter id="the-website">
  <chapterinfo>
    <authorgroup>
      <author>
	<firstname>Johann</firstname>
	<surname>Kois</surname>
	<contrib>�bersetzt von </contrib>
      </author>
    </authorgroup>
  </chapterinfo>

  <title>Die Webseite</title>

  <sect1 id="the-website-prep">
    <title>Vorbereitung</title>

    <para>Sorgen Sie f�r gen�gend Plattenplatz (zwischen
      200 und 500&nbsp;MB).  Der genaue Wert h�ngt davon ab,
      welche Methode Sie zum Bau der Webseiten verwenden.  Dieser
      Platz wird von den SGML-Werkzeugen, den ben�tigten Teilen
      des Subversion-Baums, f�r tempor�ren Speicher zum Bau der
      Seiten sowie f�r die Installation der Webseiten
      ben�tigt.</para>

    <note>
      <para>Stellen Sie sicher, dass Ihre Dokumentationsports aktuell
	sind.  Wenn Sie sich nicht sicher sind, entfernen Sie die alten
	Ports mit &man.pkg.delete.1;, bevor Sie die neue Version
	installieren.  Derzeit wird unter anderem jade-1.2 vorausgesetzt.
	Haben Sie beispielsweise jade-1.1 installiert, deinstallieren Sie
	es mit:</para>

      <screen>&prompt.root; <userinput><command>pkg_delete</command> jade-1.1</userinput></screen>
    </note>

    <sect2 id="the-website-svn">
      <title><command>svn</command> verwenden</title>

      <para>Um Dateien aus dem <literal>doc/</literal>
	Subversion-Repository <quote>auszuchecken</quote>, muss
	<command>svn</command> installiert sein.  Ist dies bei Ihnen noch
	nicht der Fall, k�nnen Sie dies entweder mit &man.pkg.add.1;
	oder �ber die &os; Ports-Sammlung nachholen:</para>

      <screen>&prompt.root; <userinput><command>cd /usr/ports/devel/subversion</command></userinput>
&prompt.root; <userinput><command>make</command> <maketarget>install clean</maketarget></userinput></screen>

      <para>Um alle zum Bau der Webseite ben�tigten Quellen
	auszuchecken, f�hren Sie den folgenden Befehl aus:</para>

      <screen>&prompt.root; <userinput><command>svn checkout svn://svn.FreeBSD.org/doc/head/ <replaceable>/usr/build</replaceable></command></userinput></screen>

      <tip>
	<para>Falls Sie <command>svn</command> nicht als Benutzer
	  <username>root</username> ausf�hren, stellen Sie bitte
	  zuvor sicher, dass Sie in das Verzeichnis <filename
          class="directory">/usr/build</filename> schreiben d�rfen.
	  Ist dies nicht m�glich, so m�ssen Sie hier ein
	  anderes Zielverzeichnis angeben, in das die Quellen der
	  Webseite gespeichert werden sollen.</para>
      </tip>

      <para>Nachdem <command>svn</command> seine Arbeit beendet hat,
	befindet sich die komplette &os;-Webseite im Verzeichnis
	<filename class="directory">/usr/build</filename> (oder in dem
	von Ihnen angegebenen Verzeichnis).  Haben Sie ein alternatives
	Verzeichis angegeben, m�ssen Sie <filename
	class="directory">/usr/build</filename> in den folgenden
	Ausf�hrung durch Ihr gew�hltes Zielverzeichnis
	ersetzen.</para>

      <para>Das ist alles.  Sie k�nnen nun mit dem
	<link linkend="the-website-build">Bau der Webseiten</link>
	beginnen.</para>
    </sect2>
  </sect1>

  <sect1 id="the-website-build">
    <title>Die Webseiten bauen</title>

    <para>Nachdem Sie die Quellen der Webseite erfolgreich
      heruntergeladen haben, k�nnen Sie mit dem Bau der Webseite
      beginnen.  In unserem Beispiel erfolgt der Bau im Verzeichnis
      <filename
      class="directory"><replaceable>/usr/build</replaceable></filename>,
      in dem sich bereits alle ben�tigten Dateien befinden.</para>

    <procedure>
      <step>
	<para>Wechseln Sie in das Bau-Verzeichis.</para>

	<screen>&prompt.root; <userinput><command>cd</command> <replaceable>/usr/build</replaceable></userinput></screen>
      </step>

      <step>
	<para>Sie starten den Bau der Webseiten, indem Sie in das
	  Unterverzeichnis <filename
	  class="directory">en_US.ISO8859-1/htdocs</filename>
	  wechseln und dort den Befehl
	  &man.make.1; <maketarget>all</maketarget> ausf�hren.</para>

	<screen>&prompt.root; <userinput><command>cd</command> en_US.ISO8859-1/htdocs</userinput>
&prompt.root; <userinput><command>make</command> <maketarget>all</maketarget></userinput></screen>
      </step>
    </procedure>
  </sect1>

  <sect1 id="the-website-install">
    <title>Installieren der Webseiten auf Ihrem Server</title>

    <procedure>
      <step>
	<para>Wechseln Sie wieder in das Verzeichnis
	  <filename class="directory">en_US.ISO8859-1/htdocs</filename>,
	  falls Sie dieses inzwischen verlassen haben.</para>

	<screen>&prompt.root; <userinput><command>cd</command> <replaceable>/usr/build/en_US.ISO8859-1/htdocs</replaceable></userinput></screen>
      </step>

      <step>
	<para>F�hren Sie &man.make.1; <maketarget>install</maketarget>
	 aus und setzen Sie die Variable <makevar>DESTDIR</makevar> auf
	 das Verzeichnis, in das Sie die Webseiten installieren
	 wollen.  Die daraus resultierenden Dateien werden unter <filename
	 class="directory">$DESTDIR/data</filename> installiert, was als die
	 document root ihres Webservers konfiguriert sein sollte.</para>

	<screen>&prompt.root; <userinput><command>env</command> <makevar>DESTDIR</makevar>=<replaceable>/usr/local/www</replaceable> <command>make</command> <maketarget>install</maketarget></userinput></screen>
      </step>

      <step>
	<para>Wenn Sie die Webseiten bereits fr�her in dieses
	  Verzeichnis installiert haben, wurden w�hrend der
	  Installation keine veralteten Seiten entfernt.  Wenn
	  Sie die Webseiten beispielsweise t�glich neu bauen
	  und installieren, findet und entfernt der folgende Befehl
	  alle Dateien, die in den letzten drei Tagen nicht aktualisiert
	  wurden:</para>

	<screen>&prompt.root; <userinput><command>find</command> <replaceable>/usr/local/www</replaceable> <option>-ctime</option> 3 <option>-print0</option> | <command>xargs</command> <option>-0</option> <command>rm</command></userinput></screen>
      </step>
    </procedure>
  </sect1>

  <sect1 id="the-website-env">
    <title>Umgebungsvariablen</title>

    <variablelist>
      <varlistentry>
	<term><makevar>ENGLISH_ONLY</makevar></term>

	<listitem>
	  <para>Ist diese Variable gesetzt und nicht leer, bauen und
	    installieren die Makefiles ausschlie�lich die
	    englischen Dokumente.  S�mtliche �bersetzungen
	    werden dabei ignoriert.  Dazu ein Beispiel:</para>

	  <screen>&prompt.root; <userinput><command>make</command> <makevar>ENGLISH_ONLY=YES</makevar> <maketarget>all</maketarget> <maketarget>install</maketarget></userinput></screen>

	  <para>Wenn Sie die Variable <makevar>ENGLISH_ONLY</makevar>
	    deaktivieren und alle Webseiten inklusive aller
	    �bersetzungen bauen wollen, setzen Sie die Variable
	    <makevar>ENGLISH_ONLY</makevar> auf einen leeren Wert:</para>

	  <screen>&prompt.root; <userinput><command>make</command> <makevar>ENGLISH_ONLY=""</makevar> <maketarget>all</maketarget> <maketarget>install</maketarget> <maketarget>clean</maketarget></userinput></screen>
	</listitem>
      </varlistentry>

      <varlistentry>
	<term><makevar>WEB_ONLY</makevar></term>

	<listitem>
	  <para>Ist diese Variable gesetzt und nicht leer, bauen und
	    installieren die Makefiles nur die HTML-Seiten des
	    Verzeichnisses <filename
	    class="directory">en_US.ISO8859-1/htdocs</filename>.
	    Alle Dokumente des Verzeichnisses
	    <filename class="directory">en_US.ISO8859-1</filename>
	    (Handbuch, FAQ, Artikel) werden dabei ignoriert:</para>

	  <screen>&prompt.root; <userinput><command>make</command> <makevar>WEB_ONLY=YES</makevar> <maketarget>all</maketarget> <maketarget>install</maketarget></userinput></screen>
	</listitem>
      </varlistentry>

      <varlistentry>
	<term><makevar>WEB_LANG</makevar></term>

	<listitem>
	  <para>Ist diese Variable gesetzt, wird die Dokumentation nur
	    f�r die durch diese Variable festgelegten Sprachen
	    gebaut und im Verzeichnis
	    <filename
	    class="directory"><replaceable>/usr/build</replaceable></filename>
	    installiert.  Alle weiteren Sprachen (ausgenommen Englisch) werden
	    ignoriert. Dazu ein Beispiel:</para>

	  <screen>&prompt.root; <userinput>make WEB_LANG="el_GR.ISO8859-7 es_ES.ISO8859-1 hu_HU.ISO8859-2 nl_NL.ISO8859-1" all install</userinput></screen>
	</listitem>
      </varlistentry>

      <varlistentry>
	<term><makevar>NOPORTSCVS</makevar></term>

	<listitem>
	  <para>Ist diese Variable gesetzt, checken die Makefiles keine
	    Dateien aus dem Ports-CVS-Repository aus.  Stattdessen werden
	    die Dateien aus dem Verzeichnis
	    <filename class="directory">/usr/ports</filename>
	   (oder aus dem Verzeichnis, auf das die Variable
	   <envar>PORTSBASE</envar> zeigt) verwendet.</para>
	</listitem>
      </varlistentry>
    </variablelist>

    <para><makevar>WEB_ONLY</makevar>, <makevar>ENGLISH_ONLY</makevar>,
      <makevar>WEB_LANG</makevar> und <makevar>NOPORTSCVS</makevar>
      sind Variablen f�r Makefiles.
      Diese werden entweder in <filename>/etc/make.conf</filename>, in
      <filename>Makefile.inc</filename> oder als Umgebungsvariablen auf
      der Kommandozeile oder in Ihrer Konfigurationsdatei gesetzt.</para>
  </sect1>
</chapter>