X-Git-Url: https://git.grml.org/?p=grml-autoconfig.git;a=blobdiff_plain;f=autoconfig.functions;h=28b785449f7f01146c21b595e6f4f18012b83ed8;hp=008416182883abda98ee30f6b74a0d5b59afc08e;hb=37eee4a042ff38046cb7594420a03af5067efa8d;hpb=820380832f6d21a9f7c227455df60e07410d3c23 diff --git a/autoconfig.functions b/autoconfig.functions index 0084161..28b7854 100755 --- a/autoconfig.functions +++ b/autoconfig.functions @@ -204,12 +204,16 @@ config_language(){ # set default to 'en' in live-cd mode if $LANGUAGE is not yet set: if [ -z "$INSTALLED" ] ; then - [ -n "$LANGUAGE" ] || LANGUAGE='en-utf8' + [ -n "$LANGUAGE" ] || LANGUAGE='us' fi # if bootoption lang is used update /etc/default/locale, otherwise *not*! - if [ -n "$BOOT_LANGUAGE" ] ; then - [ -x /usr/sbin/grml-setlang ] && /usr/sbin/grml-setlang "$LANGUAGE" + if [ -n "$BOOT_LANGUAGE" -a -x /usr/sbin/grml-setlang ] ; then + if checkgrmlsmall ; then + /usr/sbin/grml-setlang "POSIX" + else + /usr/sbin/grml-setlang "$LANGUAGE" + fi fi # set console font @@ -2315,6 +2319,47 @@ fi } # }}} +# {{{ tohd= bootoption +config_tohd() +{ + if checkbootparam "tohd" ; then + local TARGET="$(getbootparam 'tohd' 2>>$DEBUG)" + if [ -z "$TARGET" ] ; then + eerror "Error: tohd specified without any partition, can not continue." ; eend 1 + eerror "Please use something like tohd=/dev/sda9." ; eend 1 + return 1 + fi + + if ! [ -b "$TARGET" ] ; then + eerror "Error: $TARGET is not a valid block device, sorry." ; eend 1 + return 1 + fi + + if grep -q $TARGET /proc/mounts ; then + eerror "$TARGET already mounted, skipping execution of tohd therefore." + eend 1 + return 1 + fi + + local MOUNTDIR=$(mktemp -d) + + if mount -o rw "$TARGET" "$MOUNTDIR" ; then + einfo "Copyring live system to $TARGET - this might take a while" + rsync -a --progress /live/image/live $MOUNTDIR + sync + umount "$MOUNTDIR" + eend $? + einfo "Booting with \"grml bootfrom=$TARGET\" should work now." ; eend 0 + else + eerror "Error when trying to mount $TARGET, sorry."; eend 1 + return 1 + fi + + rmdir "$MOUNTDIR" + fi +} +# }}} + # {{{ grml2hd: automatic installation config_grml2hd(){