X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=docs%2Fgrml-live.txt;h=9bb69488886dbd2ffb976c86be0ce2fb1375d886;hb=605d6e3967d18f9a4e99b90e6ee1947f4a5ab1c5;hp=69b874f5019bf0d1993a4e1bf367eb8e93e76795;hpb=357aeccc20289a8b31a4d50ac718b9acc4e65c22;p=grml-live.git diff --git a/docs/grml-live.txt b/docs/grml-live.txt index 69b874f..9bb6948 100644 --- a/docs/grml-live.txt +++ b/docs/grml-live.txt @@ -47,8 +47,8 @@ Options -c **CLASSES**:: Specify the CLASSES to be used for building the ISO via fai. By default only -the classes GRML and I386 are assumed, resulting in a small base system (being -about ~150MB ISO size). +the classes GRMLBASE and I386 are assumed, resulting in a small base system +(being about ~150MB ISO size). -t **TARGET_DIRECTORY**:: @@ -63,29 +63,22 @@ Force execution and do not display summary of configuration details. Display short usage information and exit. - additional_arguments_for_fai:: - -Any additional argument(s) to grml-live will be given to the FAI commandline -(being basically "fai dirinstall ...). This might become a temporary solution -(due to security reasons), if you need an option please let us know so we can -implement it. - How to get your own live-cd - the easy, fast and simple way ----------------------------------------------------------- -To get a small, Debian-stable and grml based live-cd: +To get a small, Debian-stable and grml based live-cd using /dev/shm/ +as build and output directory: + + # grml-live - # TARGET="/grml/grml_uncompressed" - # CDDIR="/grml/grml_cd" - # grml-live -c GRML -t $TARGET - # mksquashfs $TARGET/* $CDDIR/live/grml.squashfs -noappend - # cd $CDDIR - # mkisofs -V "my personal grml" -l -r -J -no-emul-boot -boot-load-size 4 \ - -boot-info-table -c boot/isolinux/boot.cat \ - -b boot/isolinux/isolinux.bin -o /grml/grml.iso . +[NOTE] -(TODO: provide the content of /grml/chroot/grml_cd through the package -grml-live, in the meanwhile get the content from a current grml-ISO) +If you have about 700MB of free space inside /dev/shm (being a tmpfs, usually +you 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_TARGET, $BUILD_TARGET +and $ISO_TARGET if you plan to create more persistent output. :) The class concept ----------------- @@ -94,26 +87,26 @@ grml-live uses FAI and its class based concept for adjusting configuration according to your needs. This gives you flexibility and strength without losing the simplicity in the build process. -The main and base class provided by grml-live is named GRML. It's strongly -recommended to **always** use the class GRML when building an ISO using +The main and base class provided by grml-live is named GRMLBASE. It's strongly +recommended to **always** use the class GRMLBASE when building an ISO using grml-live as well as the architecture dependend class (being 'I386' for x86_32 currently only). The following files and directories are relevant for class GRML by default: - /etc/grml/fai/config/scripts/GRML/ - /etc/grml/fai/config/debconf/GRML - /etc/grml/fai/config/class/GRML.var - /etc/grml/fai/config/hooks/instsoft.GRML - /etc/grml/fai/config/package_config/GRML + /etc/grml/fai/config/scripts/GRMLBASE/ + /etc/grml/fai/config/debconf/GRMLBASE + /etc/grml/fai/config/class/GRMLBASE.var + /etc/grml/fai/config/hooks/instsoft.GRMLBASE + /etc/grml/fai/config/package_config/GRMLBASE Take a look at the next section for information about the concept of those files/directories. If you want to use your own configuration, extend an existing configuration and/or add additional packages to your ISO just invent a new class. For example -if you want to use your own class named "FOOBAR" just extend CLASSES="GRML" inside -/etc/grml/grml-live.conf to CLASSES="GRML,FOOBAR" or invoke grml-live using -the classes option: "grml-live -c GRML,FOOBAR ...". +if you want to use your own class named "FOOBAR" just extend CLASSES="GRMLBASE" +inside /etc/grml/grml-live.conf to CLASSES="GRMLBASE,FOOBAR" or invoke grml-live +using the classes option: "grml-live -c GRMLBASE,FOOBAR ...". More details regarding the class concept can be found in the documentation of FAI (available at /usr/share/doc/fai-doc/). @@ -144,11 +137,11 @@ out-of-the-box so you shouldn't have to configure anything in this file. /etc/grml/fai/make-fai-nfsroot.conf -TODO +TODO: documentation /etc/grml/fai/NFSROOT -TODO +TODO: documentation /etc/grml/fai/apt/sources.list @@ -180,17 +173,23 @@ installation process. File with lists of software packages to be installed or removed. The different classes describe what should find its way to your ISO. When running 'fai -v -C -/etc/grml/fai -cGRML dirinstall ...' only the files from the directory GRML/ -will be taken, if you use 'fai -v -C /etc/grml/fai -cGRML,FOOBAR dirinstall ...' -then the files of GRML/ **plus** the files from FOOBAR/ will be taken. So just -create a new class to adjust it to your needs. Please notice that the directory -GRML contains a package list defining a minimum but still reasonable package -configuration. +/etc/grml/fai -cGRMLBASE dirinstall ...' only the files from the directory GRML/ +will be taken, if you use 'fai -v -C /etc/grml/fai -cGRMLBASE,FOOBAR dirinstall +...' then the files of GRML/ **plus** the files from FOOBAR/ will be taken. So +just create a new class to adjust it to your needs. Please notice that the +directory GRML contains a package list defining a minimum but still reasonable +package configuration. /etc/grml/fai/config/scripts/ Scripts for customising the ISO within build process. + /etc/grml/fai/files/ + +This directory provides files used inside the scripts of +/etc/grml/fai/config/scripts/*. For a full documentation what happens with the +files please refer to the source of the scripts. + /etc/grml/fai/live-initramfs/ This directory provides the files used for building the initramfs/initrd via @@ -202,9 +201,10 @@ Requirements for the build system * any Debian based system should be sufficient (if not please send a bug report), for example a grml2hd harddisk installation ships all you need -* enough free disk space, at least 700MB are required for a minimal grml-live -run (~400MB for the chroot [$CHROOT_TARGET], ~150MB for the build target -[$BUILD_TARGET] and ~150MB for the resulting ISO [$ISO_TARGET]). +* enough free disk space; at least 800MB are required for a minimal grml-live +run (\~400MB for the chroot [$CHROOT_TARGET], \~150MB for the build target +[$BUILD_TARGET] and \~150MB for the resulting ISO [$ISO_TARGET] plus some +temporary files) * fast network access for retreiving the Debian packages used for creating the chroot (check out "local mirror" and "NFSROOT" to workaround this problem as far @@ -213,28 +213,39 @@ as possiblbe) Known TODOs ----------- -* extend the grml-live wrapper script so it runs all the necessary command in a -single run (boot/isolinux, mksquashfs and mkisofs stuff is missing currently) +* do not use /dev/shm/ als default target directory (which one do we want to use +instead?) -* really support signed apt repositories +* add support for amd64 [gebi?] + ppc [formorer?] (and identify all packages +that are arch specific so we have a clean package list in all classes) + +* support different grml-flavours through classes right out-of-the-box (being: +grml, grml64, grml-small for at least x86, amd64 and ppc) + +* support setting grml-live configuration on the command line to provide +different flavours using the commandline only + +* really support signed apt repositories (currently it's deactivated via fai's +dirinstall for some packages) * explain (and provide configuration for) the use of NFSROOT * support setting stuff like ISO name, version,... (especially for stuff inside x86_files/boot/isolinux) -* identify all packages that are arch specific +* support "final builds" (including stuff like md5sums) -* support different flavours and architectures of Debian (currently it defaults -to Debian/stable x86_32) +* use hooks of FAI as far as possible in all grml-live scripts -* use hooks of FAI in grml-live script? - -* the GRML class(es) should send output as used inside FAI as well (so it's not -as verbose unless you specify it) +* the grml-live class(es) should send output as used inside FAI as well (so it's +not as verbose unless you specify it, make it configurable) * provide possibility for cleanup of all created build directories +* support hooks to further allow customisation of the build process + +* support nocolor-option for /etc/grml/fai/grml/grml_cleanup_chroot + Bugs ---- @@ -245,3 +256,6 @@ Authors ------- Michael Prokop . +///////////////////////////////////// +// vim:ai tw=80 ft=asciidoc expandtab +/////////////////////////////////////