Usually there is no need to repeat the whole process, after you changed some parts of the <ahref="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>. Especially the first step (building of the base system with <i>dfsbuild</i>) may usually be skipped.
If you do not want to use the <i><aclass="ext-link"title="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&subword=0&version=all&release=all&keywords=apt-cacher"href="http://packages.debian.org/cgi-bin/search_packages.pl?searchon=names&subword=0&version=all&release=all&keywords=apt-cacher">apt-cacher</a> to save bandwidth and time, then you should modify the </i>mirror<i>-setting in <ahref="/trac/cryptobox/browser/trunk/etc-default.d/dfs-cbox.conf">dfs-cbox.conf</a> (see <ahref="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a> for details).</i>
<h3id="Configurethebaseimage">Configure the base image</h3>
<p>
Run <i>scripts/cbox-build.sh config</i> to copy the CryptoBox-specific files to the base image.
</p>
<p>
TODO: link to cbox-build.sh-manpage
</p>
<h3id="Removedevelopmentfeatures">Remove development features</h3>
<p>
The original base system, that was created by <i>dfsbuild</i> contains a lot packages and some scripts, that are only useful during development. You should remove them, as they cause severe security implications.
</p>
<p>
To reduce the CryptoBox-LiveCD to the usable minimum for operational use, you should run <i>scripts/cbox-build.sh harden</i>.
</p>
<h3id="Createanisoimage">Create an iso image</h3>
<p>
To burn a CryptoBox-LiveCD, you need an bootable <i>iso9660</i>-image.
</p>
<p>
Create the <i>iso</i> image with <i>scripts/cbox-build.sh iso</i>. The resulting file can be found at <i>_builddir/cd1/cryptobox.iso</i>.
Let the script do it for you: <i>scripts/cbox-build.sh burn</i> (maybe you have to change the <i>CDWRITER</i> setting in <ahref="/trac/cryptobox/browser/trunk/etc-defaults.d/cbox-dev.conf">cbox-dev.conf</a> - see <ahref="?action=doc&page=CryptoBoxDevCustomBuild&weblang=en">CryptoBoxDevCustomBuild</a>).
If you modified the <i>perl</i>- or <i>shell</i>-scripts of the <ahref="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a>, then you can check for syntax errors by running them in a <i>chroot</i> environment. Be careful: you have access to all ressources of your computer, while you are working within a <i>chroot</i> environment - so you can easily repartition your real disk ...
The processor emulator <aclass="ext-link"title="http://fabrice.bellard.free.fr/qemu"href="http://fabrice.bellard.free.fr/qemu">qemu</a> allows you test the <ahref="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> in a virtual environment, that is completely separated from your real computer's resources. It is the tool of choice, if you do nat have a real computer around for testing.
This section is only useful for developers, who want to develop on a running <ahref="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system (emulated or real).
</pre><h3id="Developmentonarunningsystem">Development on a running system</h3>
<p>
When you run an emulation or test a real LiveCD, you may encounter problems and bugs. To test your fixes for these problems, it is convenient, to change the running test system. Afterwards you can merge these changes to your local development copy.
Alternatively you may also upload a new version of your local working copy to the running <ahref="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system.
Type <i>scripts/cbox-dev.sh upload</i> - beware: all recent changes you made to the running <ahref="?action=doc&page=CryptoBox&weblang=en">CryptoBox</a> system, are lost.
</p>
<h2id="SettingupanewRelease">Setting up a new Release</h2>
<p>
Once you finished your development, you surely want to make a new release. Please read the instructions in the <ahref="/trac/cryptobox/browser/trunk/hints/release-policy.txt">releas-policy.txt</a> it will save you a lot of time! Then you basically just have to run <i>scripts/cbox-build.sh release</i> and get yourself a good coffee. After the command has finished you'll see the releasefiles in <i>_buildir</i>.