Notice: the grml team is migrating from Mercurial to Git.
Please visit git.grml.org instead!
| author | Michael Prokop |
| Thu Sep 20 00:03:55 2007 +0200 (14 months ago) | |
| changeset 96 | 465fcb072e4f |
| manifest | 465fcb072e4f |
| parent 95 | 748ff5a59ed2 |
| child 97 | 898e38ad5f5b |
--- a/docs/grml-live.txt Wed Sep 19 23:42:06 2007 +0200+++ b/docs/grml-live.txt Thu Sep 20 00:03:55 2007 +0200@@ -10,7 +10,8 @@ SynopsisSynopsis---------grml-live [-c <classe[s]>] [-t <target_directory>] [-s <suite>] [-Fvh]+grml-live [-c <classe[s]>] [-i <iso_name> ] [-r <release_name>]+[-s <suite>] [-t <target_directory>] [-v <version_number>] [-Fvh]*******************************************************************************Important! This document is growing as requested. If you have questions which@@ -57,6 +58,24 @@ the classes GRMLBASE and I386 are assumethe classes GRMLBASE and I386 are assumed, resulting in a small base system(being about ~150MB total ISO size) for x86 (32bit).+ -F::++Force execution and do not prompt for acknowledgment of configuration.++ -h::++Display short usage information and exit.++ -i **ISO_NAME**::++Specify name of ISO which will be available inside $TARGET_DIRECTORY/grml_isos+by default.++ -r **RELEASENAME**::++Specify name of the release. (Notice: the output of the release name is limited+to 30 characters.)+-s **SUITE**::Specify the Debian suite you want to use for your live-system. Defaults to@@ -70,20 +89,18 @@ ISO are located, including the compresseISO are located, including the compressed squashfs file), grml_chroot (thechroot system) and grml_isos (where the resulting ISO is stored).- -F::--Force execution and do not prompt for acknowledgment of configuration.-- -h::--Display short usage information and exit.-- -v::+ -v **VERSION_NUMBER**::++Specify version number of the release. (Notice: the output of the version number+is limited to 5 characters. So "1.0-1" is fine, but "1.0.0.1" will be stripped+to "1.0.0" then.)++ -V::Increase verbosity in the build process.-How to get your own Live-CD - the easy, fast and simple way------------------------------------------------------------+Usage examples+--------------To get a small, Debian-stable and grml-based Live-CD using /grml/grml-liveas build and output directory just run:@@ -94,6 +111,12 @@ To get a small Debian-unstable and grml-/home/mika/grml-live as build and output directory just use:# grml-live -c GRMLBASE,GRML_SMALL,I386 -t /home/mika/grml-live++To get a smal, 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+/tmp/grml_isos) just invoke:++ # grml-live -t /tmp -c GRMLBASE,I386 -s sid -v -i grml_0.0-3.iso[NOTE]@@ -397,9 +420,6 @@ grml and grml-small (done), each for x8* support signed apt repositories (currently it's deactivated via FAI'sFAI_ALLOW_UNSIGNED=1 for some packages in the toolchain)-* support setting stuff like ISO name, version,... on-the-fly (especially for-stuff inside boot/isolinux/*)-* support "final builds" (including stuff like generating md5sums, gpg,... -create a grml_release-directory including all the details about the buildprocess like dpkg selection, logs,...)
--- a/etc/grml/grml-live.conf Wed Sep 19 23:42:06 2007 +0200+++ b/etc/grml/grml-live.conf Thu Sep 20 00:03:55 2007 +0200@@ -57,11 +57,11 @@ CLASSES="GRMLBASE,I386"# ... and the sources.list entry for the directory:# MIRROR_SOURCES="deb file:///mnt/mirror/debian sid main contrib non-free"-# Version number of ISO (limited to 5 chars):+# Version number of ISO (limited to 5 chars!):VERSION="0.0-1"-# Codename of the release (limited to 30 chars):-CODENAME="grml-live just rocks!"+# Name of the release (limited to 30 chars!):+RELEASENAME="grml-live just rocks!"# Specify hostname of the live-system:HOSTNAME=grml
--- a/grml-live Wed Sep 19 23:42:06 2007 +0200+++ b/grml-live Thu Sep 20 00:03:55 2007 +0200@@ -4,7 +4,7 @@# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org># Bug-Reports: see http://grml.org/bugs/# License: This file is licensed under the GPL v2 or any later version.-# Latest change: Wed Sep 19 23:41:52 CEST 2007 [mika]+# Latest change: Wed Sep 19 23:59:48 CEST 2007 [mika]################################################################################# read configuration files, set some misc variables {{{@@ -28,10 +28,10 @@ if [ -r /etc/grml/lsb-functions ] ; thenif [ -r /etc/grml/lsb-functions ] ; then. /etc/grml/lsb-functionselse- einfo() { echo " [*] $*" ;}+ einfo() { echo " [*] $*" ;}eerror() { echo " [!] $*">&2 ;}- ewarn() { echo " [x] $*" ;}- eend() { return 0 ; }+ ewarn() { echo " [x] $*" ;}+ eend() { return 0 ;}fi# source main configuration file:@@ -39,12 +39,10 @@ LIVE_CONF=/etc/grml/grml-live.conf. $LIVE_CONFPN=$(basename $0)-# TMPFILE=$(mktemp)# }}}# clean exit {{{bailout() {- # rm -f "$TMPFILE"[ -n "$MIRROR_DIRECTORY" ] && umount "${CHROOT_TARGET}/${MIRROR_DIRECTORY}"[ -n "$1" ] && EXIT="$1" || EXIT="1"[ -n "$2" ] && eerror "$2">&2@@ -60,8 +58,8 @@ trap bailout 1 2 3 15[ -n "$CLASSES" ] || CLASSES="GRML,I386"[ -n "$TARGET" ] || bailout 1 "${PN}: \$TARGET not specified. Please adjust $LIVE_CONF. Exiting."-[ -n "$VERSION" ] || VERSION="0.1"-[ -n "$CODENAME" ] || CODENAME="grml-live rocks"+[ -n "$VERSION" ] || VERSION="0.0.1"+[ -n "$RELEASENAME" ] || RELEASENAME="grml-live rocks"[ -n "$LOGDIR" ] || LOGDIR="/var/log/fai/dirinstall/$HOSTNAME"[ -d "$LOGDIR" ] || mkdir $LOGDIR@@ -123,7 +121,8 @@ usage()echo "$PN - build process script for generating a (grml based) Linux Live-ISO-Usage: $PN [-c <classe[s]>] [-t <target_directory>] [-s <suite> [-Fvh]+Usage: $PN [-c <classe[s]>] [-i <iso_name> ] [-r <release_name>] \\+ [-s <suite>] [-t <target_directory>] [-v <version_number>] [-Fvh]Usage examples:@@ -131,7 +130,8 @@ Usage examples:$PN -c GRMLBASE,GRML_X,I386 -t /grml/$PN -c GRMLBASE,I386 -t /dev/shm/grml$PN -c GRMLBASE,GRML_SMALL,I386- $PN -s sid -c GRMLBASE,I386+ $PN -c GRMLBASE,I386 -v -i grml_0.0-1.iso+ $PN -c GRMLBASE,I386 -s sidMore details: man grml-live/usr/share/doc/grml-live/grml-live.html@@ -144,19 +144,21 @@ http://grml.org/bugs/# command line parsing {{{-while getopts "c:i:s:t:Fhv" opt; do+while getopts "c:i:r:s:t:v:FhV" opt; docase "$opt" inc) CLASSES="$OPTARG" ;;- F) FORCE=1 ;;- h) usage ; bailout 0 ;;i) ISO_NAME="$OPTARG" ;;+ r) RELEASENAME="$OPTARG" ;;s) SUITE="$OPTARG" ;;t) TARGET="$OPTARG"CHROOT_TARGET="$TARGET/grml_chroot"BUILD_TARGET="$TARGET/grml_cd"ISO_TARGET="$TARGET/grml_isos";;- v) VERBOSE="-v" ;;+ v) VERSION="$OPTARG" ;;+ F) FORCE=1 ;;+ h) usage ; bailout 0 ;;+ V) VERBOSE="-v" ;;?) echo "invalid option -$OPTARG" >&2; bailout 1 ;;esacdone@@ -303,14 +305,14 @@ if [ "$ARCH" = i386 ] ; then# adjust boot splash information:ISO_DATE="$(date +%Y-%m-%d)"VERSION="$(cut_string 5 "$VERSION")" ; VERSION="$(extend_string_end 5 "$VERSION")"- CODENAME="$(cut_string 30 "$CODENAME")" ; CODENAME="$(extend_string_end 30 "$CODENAME")"+ RELEASENAME="$(cut_string 30 "$RELEASENAME")" ; RELEASENAME="$(extend_string_end 30 "$RELEASENAME")"sed -i "s/%VERSION%/$VERSION/" "$BUILD_TARGET"/boot/isolinux/boot.msg- sed -i "s/%CODENAME%/$CODENAME/" "$BUILD_TARGET"/boot/isolinux/boot.msg+ sed -i "s/%RELEASENAME%/$RELEASENAME/" "$BUILD_TARGET"/boot/isolinux/boot.msgsed -i "s/%DATE%/$ISO_DATE/" "$BUILD_TARGET"/boot/isolinux/boot.msgsed -i "s/%VERSION%/$VERSION/" "$BUILD_TARGET"/boot/isolinux/boot-beep.msg- sed -i "s/%CODENAME%/$CODENAME/" "$BUILD_TARGET"/boot/isolinux/boot-beep.msg+ sed -i "s/%RELEASENAME%/$RELEASENAME/" "$BUILD_TARGET"/boot/isolinux/boot-beep.msgsed -i "s/%DATE%/$ISO_DATE/" "$BUILD_TARGET"/boot/isolinux/boot-beep.msg# autostart for Windows:@@ -359,17 +361,18 @@ fi# ISO_TARGET - mkisofs {{{[ -n "$ISO_TARGET" ] || ISO_TARGET="$TARGET/grml_isos"-if [ -d "$ISO_TARGET" ] ; then+[ -n "$ISO_NAME" ] || ISO_NAME="grml_${VERSION}.iso"++if [ -f "${ISO_TARGET}/${ISO_NAME}" ] ; thenewarn "$ISO_TARGET exists already, skipping stage 'iso build'" ; eend 0log "$ISO_TARGET exists already, skipping stage 'iso build'"elsemkdir -p "$ISO_TARGET" || bailout 6 "Problem with creating $ISO_TARGET for stage 'iso build'"- [ -n "$ISO_NAME" ] || ISO_NAME="grml_0.0-1.iso"( cd "$BUILD_TARGET" &&- mkisofs -V "Debian/etch grml" -publisher 'grml-live | grml.org' \+ mkisofs -V "grml $VERSION" -publisher 'grml-live | grml.org' \-l -r -J -no-emul-boot -boot-load-size 4 -boot-info-table \-c boot/isolinux/boot.cat -b boot/isolinux/isolinux.bin \- -o "${ISO_TARGET}"/"${ISO_NAME}" .+ -o "${ISO_TARGET}/${ISO_NAME}" .)einfo "Finished execution of stage 'iso build'" ; eend 0log "Finished execution of stage 'iso build' [$(date)]"
--- a/i386_files/boot/isolinux/boot-beep.msg Wed Sep 19 23:42:06 2007 +0200+++ b/i386_files/boot/isolinux/boot-beep.msg Thu Sep 20 00:03:55 2007 +0200@@ -1,5 +1,5 @@17logo.16Some information and boot options available via keys F2 - F10. http://grml.org/-grml %VERSION% - Release Codename %CODENAME% %DATE%+grml %VERSION% - Release Codename %RELEASENAME% %DATE%
--- a/i386_files/boot/isolinux/boot.msg Wed Sep 19 23:42:06 2007 +0200+++ b/i386_files/boot/isolinux/boot.msg Thu Sep 20 00:03:55 2007 +0200@@ -1,4 +1,4 @@17logo.16Some information and boot options available via keys F2 - F10. http://grml.org/-grml %VERSION% - Release Codename %CODENAME% %DATE%+grml %VERSION% - Release Codename %RELEASENAME% %DATE%