Update docs; finalize work on update option
[grml-live.git] / docs / grml-live.txt
index c7cb2c5..a20c34b 100644 (file)
@@ -10,13 +10,14 @@ Linux Live system (CD/ISO)
 Synopsis
 --------
 
-grml-live [-c <classe[s]>] [-g <grml_name>] [-i <iso_name> ] [-o
-<output_directory>] [-r <release_name>] [-s <suite>] [-t <template_directory>]
-[-v <version_number>] [-FVh]
+grml-live [-a <architecture>] [-c <classe[s]>] [-g <grml_name>] [-i <iso_name> ]
+[-o <output_directory>] [-r <release_name>] [-s <suite>] [-t
+<template_directory>] [-v <version_number>] [-FVhu]
 
 *******************************************************************************
 Important! This document is growing as requested. If you have questions which
 aren't answered by this document yet please let me know: <mika@grml.org>!
+This document currently applies to grml-live version 0.0.6.
 *******************************************************************************
 
 Description
@@ -47,12 +48,20 @@ packages will be downloaded and installed via network. If you want to use a
 local mirror (strongly recommended if you plan to use grml-live more than once)
 checkout mkdebmirror (see /usr/share/doc/grml-live/examples/mkdebmirror),
 debmirror(1), reprepro(1) (see /usr/share/doc/grml-live/examples/reprepro/ for a
-sample configuration) and approx(8). To avoid downloading the base system again
-and again check out FAI's NFSROOT (see FAQ of this document for details).
+sample configuration), apt-cacher(1) and approx(8). To avoid downloading the
+base system again and again check out FAI's NFSROOT (see FAQ of this document
+for details).
 
 Options
 -------
 
+  -a **ARCHITECTURE**::
+
+Use the specified architecture instead of the currently running one.  This
+allows building a 32bit system on a 64bit host. Please notice that real
+crosscompiling (like building a ppc system on x86) isn't possible due to the
+nature and the need of working in a chroot.
+
   -c **CLASSES**::
 
 Specify the CLASSES to be used for building the ISO via FAI.  By default only
@@ -101,6 +110,11 @@ Specify the Debian suite you want to use for your live-system.  Defaults to
 Specify place of the templates used for building the ISO. By default 
 (and if not manually specified) this is /usr/share/grml-live/templates/.
 
+  -u::
+
+Update existing chroot instead of rebuilding it from scratch. This option is
+based on the softupdate feature of FAI.
+
   -v **VERSION_NUMBER**::
 
 Specify version number of the release.
@@ -186,6 +200,11 @@ option: "grml-live -c GRMLBASE,GRML_SMALL,I386,FOOBAR ...".
 More details regarding the class concept can be found in the documentation of
 FAI itself (being available at /usr/share/doc/fai-doc/).
 
+Available classes
+-----------------
+
+Documentation to be done...
+
 Files
 -----
 
@@ -280,6 +299,20 @@ files please refer to the source of the scripts.
 This directory provides the files used for building the initramfs/initrd via
 live-initramfs(8).
 
+Available log files
+-------------------
+
+grml-live itself logs to /var/log/grml-live.log. Unless you set ZERO_LOGFILE in
+/etc/grml/grml-live.conf the output is appended to the file. If you set the
+ZERO_LOGFILE configuration option the logfile will be truncated on a new
+invocation of grml-live.
+
+The FAI part of grml-live logs to /var/log/fai/dirinstall/$HOSTNAME - so the
+default being /var/log/fai/dirinstall/grml.
+
+If you are using the update option of grml-live (option -u) the logs are
+available at /var/log/fai/current.
+
 Requirements for the build system
 ---------------------------------
 
@@ -396,8 +429,12 @@ So as /grml/fai/nfsroot is your NFSROOT place the file under
 
   mv base.tgz /grml/fai/nfsroot/live/filesystem.dir/var/tmp/base.tgz
 
+or even better use /etc/grml/fai/config/basefiles/$CLASSNAME.tar.gz instead.
+Use I386 as $CLASSNAME for i386 builds and AMD64 for amd64 builds.
+
 Now running "grml-live ..." will use this file as main system instead of
-executing debootstrap. Check out the output for the following lines:
+executing debootstrap. Check out the output for the following lines if using
+NFSROOT:
 
   [...]
   Calling task_extrbase
@@ -406,6 +443,32 @@ executing debootstrap. Check out the output for the following lines:
   Calling task_mirror
   [...]
 
+or if using /etc/grml/fai/config/basefiles/$CLASSNAME.tar.gz for:
+
+  [...]
+  ftar: extracting /etc/grml/fai/config/basefiles///AMD64.tar.gz to
+  /grml-live/grml-live_20071029.22138/grml_chroot//
+  [...]
+
+Set up apt-cacher for use with grml-live
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Make sure /etc/grml/grml-live.conf provides according GRML_LIVE_SOURCES and
+FAI_DEBOOTSTRAP:
+
+  # cat /etc/grml/grml-live.conf
+  [...]
+  GRML_LIVE_SOURCES="
+  deb http://localhost:3142/deb.grml.org grml-stable  main
+  deb http://localhost:3142/deb.grml.org grml-testing main
+  deb http://localhost:3142/ftp.de.debian.org/debian etch main contrib non-free
+  "
+  [...]
+  FAI_DEBOOTSTRAP="etch http://localhost:3142/ftp.de.debian.org/debian etch main contrib non-free"
+
+Make sure apt-cacher is running (/etc/init.d/apt-cacher restart). That's it.
+All downloaded files will be cached in /var/cache/apt-cacher/ now.
+
 Set up approx for use with grml-live
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~