<p>Eine <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> CD wird in wenigen Schritten erstellt. Die Basisarbeit erledigt 'dfsbuild' und die genaue Konfiguration macht 'cbox-build'. </p>
<p>Das Linux Grundsystem für die <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> CD wird mit <aclass="interwiki"title="DebianPackage"href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&subword=1&version=all&release=all&keywords=dfsbuild">dfsbuild</a> gebaut. Das ist ein Programm, welches eine <aclass="external"href="http://www.debian.org">Debian</a> Live-CD erzeugt.<br>
<em>(Wir entwickeln die <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> bisher auf Debian/Linux-Systemen. Prinzipiell dürfte es auch mit deiner Lieblingsdistro funktionieren, nur der anfängliche Einrichtungsaufwand wird dadurch größer.)</em></p>
<p>Für "dfsbuild" bietet sich <aclass="interwiki"title="DebianPackage"href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&subword=1&version=all&release=all&keywords=apt-cacher">apt-cacher</a> an. Damit brauchst du nicht für jeden Bau des Grundsystems alle Debian-Pakete erneut herunter laden. </p>
<p>Die <em>dfsbuild</em>-Dokumentation ist noch recht spärlich. Du kommst aber kaum in direkten Kontakt mit <em>dfsbuild</em>, da es durch 'cbox-build' aufgerufen wird. Die folgenden Links helfen dir vielleicht trotzdem weiter: </p>
<li><p><aclass="external"href="http://www.debian-administration.org/articles/125">Debian Administration: Building Debian CD-ROMS Part 1 - dfsbuild</a></p>
<p>Die wichtige Kleinarbeit, damit aus dem dfsbuild-System eine <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> wird, erledigt <em>cbox-build.sh</em>.<br>
Das Script und die bestehenden Konfigurationsdateien liegen im <aclass="interwiki"title="SubVersion"href="/websvn/cryptobox">cryptobox-Repository</a>. </p>
<p>Weitere Aktionen, die die Entwicklung erleichtern, werden unter <ahref="/cryptobox?action=doc&page=CryptoBoxDevFeatures">CryptoBoxDevFeatures</a> beschrieben. </p>
<p>Der Kernel für die <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> wird statisch kompiliert. Wenn du ihn selbst bauen/verändern willst, dann am einfachsten so: </p>
<li><p> schnapp dir /boot/config-2.6.8 von einer gebauten <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> CD und verändere sie nach deinen Wünschen </p>
<li><p> zum Erstellen des Debian-Pakets: <tt> make-kpkg --revision=1.dfs --rootcmd=fakeroot kernel_image</tt></p>
</li>
<li><p> nun musst du eventuell in der <em>dfsbuild.conf</em> den Namen des vorherigen Kernel-Pakets durch deinen neuen ersetzen </p>
</li>
</ul>
<h3id="head-d81befa59fe38bcf5ffae7c0c4c42141d74395eb">Verwendung des Subversion-Repositories</h3>
<p>Erstellung einer lokalen Arbeitskopie des Entwickler-Repositories: <tt>svn checkout https://svn.systemausfall.org/svn/cryptobox deincryptoboxverzeichnis</tt></p>
<p>Deine Änderungen an der <ahref="/cryptobox?action=doc&page=CryptoBox">CryptoBox</a> klannst du per <tt>svn commit</tt> in unser Repository übertragen. Dazu musst du, aber vorher Schreibrechte erhalten (die wir gerne vergeben). <imgsrc="/cryptobox-img/smile.png"alt=":)"height="15"width="15"></p>
<li><p> unter qemu trat immer wieder ein Fehler "interleaved files not (yet) supported" auf </p>
<ul>
<li><p> willkürlich waren manche Verzeichnisse ungültig (also hatten nur das Datei-Attribut) </p>
</li>
<li><p> die nicht-standardkonformen mkisofs-Optionen "-U -D" haben das Problem nicht behoben </p>
</li>
</ul>
</li>
<li><p> eventuell hängt dies mit dem vorherigen Fehler zusammen: das System verhält sich systematisch fehlerhaft (beispielsweise löst der Start von <em>nmbd</em> generell ein <em>segfault</em> aus) </p>
<li><p> Für <em>dfsbuild</em> bietet sich <aclass="interwiki"title="DebianPackage"href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&subword=1&version=all&release=all&keywords=apt-cacher">apt-cacher</a> an. Damit müssen die Debian-Pakete nicht bei jedem neuen <em>dfsbuild</em>-Vorgang erneut heruntergeladen werden. </p>
<li><p><em>cbox-build.sh</em> verwendet relative Pfad-Angaben - du solltest es also aus dem Verzeichnis heraus starten, in dem sich beispielsweise auch <em>cbox-build.sh</em> befindet. </p>
<p>Hier findest du ältere Ideen, die zum Teil schon recht umfangreiche Gestalt angenommen haben aber momentan von uns nicht weiter verfolgt werden. </p>