Drop glimpse from GRML_FULL
[grml-live.git] / docs / grml-live.txt
index a20c34b..2c79417 100644 (file)
@@ -12,12 +12,19 @@ Synopsis
 
 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]
+<template_directory>] [-v <version_number>] [-bFVhuz]
 
 *******************************************************************************
-Important! This document is growing as requested. If you have questions which
+Important: squashfs-tools in Debian (version 1:3.3-6 for example) currently
+don't work as expected for grml-live.  Please install grml's version 1:3.2r2-9exp1 from
+http://grml.org/squashfs/squashfs-tools_3.2r2-9exp1_i386.deb (for x86) or
+http://grml.org/squashfs/squashfs-tools_3.2r2-9exp1_amd64.deb (for amd64)
+on your build-system instead.
+*******************************************************************************
+
+*******************************************************************************
+Notice! 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
@@ -58,9 +65,18 @@ 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
+allows building a 32bit system on a 64bit host (though you can't build a 64bit
+system on a 32bit system/kernel of course). 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.
+nature and the need of working in a chroot. Currently supported values: i386
+and amd64.
+
+  -b::
+
+Build the ISO without updating the chroot via FAI. This option is useful for
+example when working on stable releases: if you have a working base
+system/chroot and do not want to execute any further updates (via "-u" option)
+but intend to only build the ISO.
 
   -c **CLASSES**::
 
@@ -69,8 +85,24 @@ the classes GRMLBASE, GRML_SMALL and I386 are assumed, resulting in a small base
 system (being about ~150MB total ISO size). If using a non-I386 system (like
 amd64) you should specify the appropriate architecture as well. Additionally you
 can specify a class providing a grml-kernel (see
-/etc/grml/fai/config/package_config/ for a full list).  So instead of GRML_SMALL
-you can also use GRML_MEDIUM and GRML_FULL instead.
+<<X7,the 'CLASSES' section in this document>> for details about available classes).
+So instead of GRML_SMALL you can also use GRML_MEDIUM and GRML_FULL.
+
+  -C **CONFIGURATION_FILE**::
+
+The specified file is used as configuration file for grml-live. By default
+/etc/grml/grml-live.conf is used for main configuration. If a file named
+/etc/grml/grml-live.local exists it is used as well (sourced after reading
+/etc/grml/grml-live.conf to allow overriding settings). As a last option the
+specified configuration file is sourced so it is possible to override settings
+of /etc/grml/grml-live.conf as well as of /etc/grml/grml-live.local. Please
+notice that all configuration files have to be adjusted during execution of
+grml-live, so please make sure you use /etc/grml/grml-live.conf as a base for
+your own configuration file. Please also notice that the configuration file
+specified via this option is **not** (yet) supported inside the
+scripts/hooks/classes at /etc/grml/fai/config. Instead use
+/etc/grml/grml-live.conf and/or /etc/grml/grml-live.local for configuration
+stuff used inside /etc/grml/fai/config.
 
   -F::
 
@@ -79,6 +111,8 @@ Force execution and do not prompt for acknowledgment of configuration.
   -g **GRML_NAME**::
 
 Set the grml flavour name. Common usage examples: grml, grml-small, grml64.
+Please do NOT use blanks and any special characters like '/', ';' inside
+GRML_NAME, otherwise you might notice problems with booting.
 
   -h::
 
@@ -107,7 +141,7 @@ Specify the Debian suite you want to use for your live-system.  Defaults to
 
   -t **TEMPLATE_DIRECTORY**::
 
-Specify place of the templates used for building the ISO. By default 
+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::
@@ -123,6 +157,10 @@ Specify version number of the release.
 
 Increase verbosity in the build process.
 
+  -z::
+
+Use ZLIB instead of LZMA compression in mksquashfs part of the build process.
+
 Usage examples
 --------------
 
@@ -134,7 +172,12 @@ as build and output directory just run:
 To get a small Debian-unstable and grml-small based Live-CD using
 /home/mika/grml-live as build and output directory just use:
 
-  # grml-live -c GRMLBASE,GRML_SMALL,I386 -o /home/mika/grml-live
+  # grml-live -s sid -c GRMLBASE,GRML_SMALL,I386 -o /home/mika/grml-live
+
+To get a medium sized, Debian-unstable and grml-based Live-CD for i386
+architecture using /grml/grml-live as build and output directory just run:
+
+  # grml-live -s sid -a i386 -c GRMLBASE,GRML_MEDIUM,I386
 
 To get a small, Debian-unstable and grml-based Live-CD using /tmp as build and
 output directory and use grml_0.0-3.iso as ISO name (placed inside
@@ -148,7 +191,7 @@ If you have about 700MB of free space inside /dev/shm (being a tmpfs, usually
 you should have >=1GB of RAM) just run "mount -o remount,suid,dev,rw /dev/shm"
 and use /dev/shm as build and output directory - resulting in very fast build
 process.  But please be aware of the fact that rebooting your system will result
-in an empty /dev/shm, so please another directory for $CHROOT_OUTPUT,
+in an empty /dev/shm, so please use another directory for $CHROOT_OUTPUT,
 $BUILD_OUTPUT and $ISO_OUTPUT if you plan to create more persistent output. :)
 
 Main features of grml-live
@@ -200,10 +243,32 @@ 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/).
 
+[[X7]]
 Available classes
 -----------------
 
-Documentation to be done...
+The package selection part of the classes can be found in
+/etc/grml/fai/config/package_config whereas some further classes are defined for
+example in /etc/grml/fai/config/scripts/ so specific feature sets can be
+selected. The following classes are predefined:
+
+* DEBORPHAN:
+* GRMLBASE: the main class responsible for getting a minimal subset of what's
+defining a grml system. Important parts of the buildprocess are specified in
+this class as well, so unless you have a really good reason you should always
+use this class.
+* GRML_FORENSIC: tools for forensic investigations which has been created
+by people from link:http://www.forensic-geeks.org/[forensic-geeks.org].
+* GRML_FULL: full featured grml, also know as the "normal", full grml.
+* GRML_MEDIUM:
+* GRML_POWERPC:
+* GRML_SMALL:
+* LATEX_CLEANUP:
+* LOCALES:
+* NO_ONLINE:
+* RELEASE:
+* REMOVE_DOCS:
+* XORG:
 
 Files
 -----
@@ -304,14 +369,14 @@ 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
+ZERO_LOGFILE configuration option the logfile will be truncated on each 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.
+The FAI part of grml-live logs to /var/log/fai/$HOSTNAME/ - so the
+default being /var/log/fai/grml/.
 
-If you are using the update option of grml-live (option -u) the logs are
-available at /var/log/fai/current.
+If you are using the grml-live buildd you will find the logs of the grml-live
+run at /var/log/grml-buildd.stdout and /var/log/grml-buildd.stderr.
 
 Requirements for the build system
 ---------------------------------
@@ -336,9 +401,10 @@ FAQ
 Help, I'm using Debian etch and I don't have FAI version >3.2
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-  wget http://www.informatik.uni-koeln.de/fai/download/etch/fai-client_3.2.1_all.deb \
-       http://www.informatik.uni-koeln.de/fai/download/etch/fai-server_3.2.1_all.deb
-  dpkg -i fai-client_3.2.1_all.deb fai-server_3.2.1_all.deb
+  wget http://www.informatik.uni-koeln.de/fai/download/etch/fai-client_3.2.6_all.deb \
+       http://www.informatik.uni-koeln.de/fai/download/etch/fai-server_3.2.6_all.deb \
+       http://www.informatik.uni-koeln.de/fai/download/etch/fai-doc_3.2.6_all.deb
+  dpkg -i fai-client_3.2.6_all.deb fai-server_3.2.6_all.deb fai-doc_3.2.6_all.deb
 
 or check out the link:http://www.informatik.uni-koeln.de/fai/[FAI-homepage] for
 further details.
@@ -346,14 +412,14 @@ further details.
 I've problems with the build process. How to start debugging?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Check out the logs inside /var/log/fai/dirinstall/... If you don't have the time
-to debug the problem in further detail or don't know how to proceed just send a
-copy of your config, logs and the commandline with a short problem description
-to <mika@grml.org>:
+Check out the logs inside /var/log/fai/... If you don't have the time to debug
+the problem in further detail or don't know how to proceed just send a copy of
+your config, logs and the commandline with a short problem description to
+<mika@grml.org>:
 
   # history | grep grml-live > /etc/grml/grml_live.cmdline
   # tar zcf grml_live_problem.tar.gz /etc/grml/grml-live.conf \
-            /var/log/fai/dirinstall /etc/grml/fai
+            /etc/grml/grml-buildd.conf /var/log/fai /etc/grml/fai
 
 Can I use my own (local) Debian mirror?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -364,7 +430,7 @@ your needs. Please don't forget that you should use the grml servers as well
 (see default configuration) so all the grml packages can be downloaded as well.
 
 If you want to use a local (for example NFS mount) mirror additionally, just
-adjust MIRROR_DIRECTORY and MIRROR_SOURCES insede /etc/grml/grml-live.conf as
+adjust MIRROR_DIRECTORY and MIRROR_SOURCES inside /etc/grml/grml-live.conf as
 well.
 
 Unless you specify GRML_LIVE_SOURCES and/or FAI_DEBOOTSTRAP the default from