diff options
-rwxr-xr-x | client/engine/Boot.lib | 92 | ||||
-rw-r--r-- | client/shared/etc/lang.ca_ES.conf | 4 | ||||
-rw-r--r-- | client/shared/etc/lang.en_GB.conf | 4 | ||||
-rw-r--r-- | client/shared/etc/lang.es_ES.conf | 4 |
4 files changed, 101 insertions, 3 deletions
diff --git a/client/engine/Boot.lib b/client/engine/Boot.lib index b17f0b66..85203831 100755 --- a/client/engine/Boot.lib +++ b/client/engine/Boot.lib @@ -1380,4 +1380,96 @@ grubSyntax "$KERNELPARAM" >> "$FILECFG" burg-install --force --root-directory=${SECONDSTAGE} $FIRSTSTAGE } +#/** +# ogBurgDefaultEntry int_disk_GRUBCFG int_partition_GRUBCFG +#@brief Configura la entrada por defecto de Burg +#@param int_disk_SecondStage +#@param int_part_SecondStage +#@param int_default_entry +#@return +#@exception OG_ERR_FORMAT Formato incorrecto. +#@exception OG_ERR_PARTITION Partición errónea o desconocida (ogMount). +#@exception OG_ERR_OUTOFLIMIT Param $3 no es entero. +#@exception OG_ERR_NOTFOUND Fichero de configuración no encontrado: burg.cfg. +#@version 1.1.0 - Primeras pruebas con Burg +#@author Irina Gomez, ETSII Universidad de Sevilla +#@date 2017-08-09 +#*/ ## +function ogBurgDefaultEntry { + +# Variables locales. +local PART BURGCFG + +# Si se solicita, mostrar ayuda. +if [ "$*" == "help" ]; then + ogHelp "$FUNCNAME" "$FUNCNAME int_ndiskSecondStage int_partitionSecondStage int_default_entry " \ + "$FUNCNAME 1 1 0 " + return +fi + +# Error si no se reciben 3 parametros. +[ $# -eq 3 ] || ogRaiseError $OG_ERR_FORMAT "$FUNCNAME int_ndiskSecondStage int_partitionSecondStage int_default_entry" || return $? + +# Error si no puede montar sistema de archivos. +PART=$(ogMount $1 $2) || return $? + +# Comprobamos que $3 es un número +[[ $3 =~ ^[0-9]+$ ]] || ogRaiseError $OG_ERR_OUTOFLIMIT "\'$3\' not integer" || return $? + +# Comprobamos que exista fichero burg.cfg +BURGCFG=$PART/boot/burg/burg.cfg +[ -f $BURGCFG ] || ogRaiseError $OG_ERR_NOTFOUND "$BURGCFG" || return $? + +sed -i s/"^set default.*$"/"set default=$3"/g $BURGCFG + +echo "${MSG_HELP_ogBurgDefaultEntry%%\.}: $@" +} + +#/** +# ogBurgOgliveDefaultEntry +#@brief Configura la entrada de ogLive como la entrada por defecto de Burg. +#@param int_disk_SecondStage +#@param int_part_SecondStage +#@return +#@exception OG_ERR_FORMAT Formato incorrecto. +#@exception OG_ERR_PARTITION Partición errónea o desconocida (ogMount). +#@exception OG_ERR_NOTFOUND Fichero de configuración no encontrado: burg.cfg. +#@exception OG_ERR_NOTFOUND Entrada de OgLive no encontrada en burg.cfg. +#@version 1.1.0 - Primeras pruebas con Burg +#@author Irina Gomez, ETSII Universidad de Sevilla +#@date 2017-08-09 +#*/ ## +function ogBurgOgliveDefaultEntry { + +# Variables locales. +local PART BURGCFG NUMENTRY + +# Si se solicita, mostrar ayuda. +if [ "$*" == "help" ]; then + ogHelp "$FUNCNAME" "$FUNCNAME int_ndiskSecondStage int_partitionSecondStage" \ + "$FUNCNAME 1 1" + return +fi + +# Error si no se reciben 2 parametros. +[ $# -eq 2 ] || ogRaiseError $OG_ERR_FORMAT "$FUNCNAME int_ndiskSecondStage int_partitionSecondStage" || return $? + +# Error si no puede montar sistema de archivos. +PART=$(ogMount $1 $2) || return $? + +# Comprobamos que exista fichero burg.cfg +BURGCFG=$PART/boot/burg/burg.cfg +[ -f $BURGCFG ] || ogRaiseError $OG_ERR_NOTFOUND "$BURGCFG" || return $? + +# Detectamos cual es la entrada de ogLive +NUMENTRY=$(grep ^menuentry burg.cfg| grep -n "OpenGnsys Live"|cut -d: -f1) + +# Si no existe entrada de ogLive nos salimos +[ -z "$NUMENTRY" ] && (ogRaiseError $OG_ERR_NOTFOUND "menuentry OpenGnsys Live in $BURGCFG" || return $?) + +let NUMENTRY=$NUMENTRY-1 +sed -i s/"^set default.*$"/"set default=$NUMENTRY"/g $BURGCFG + +echo "${MSG_HELP_ogBurgOgliveDefaultEntry%\.}: $@" +} diff --git a/client/shared/etc/lang.ca_ES.conf b/client/shared/etc/lang.ca_ES.conf index c93f682d..6bf4ca5e 100644 --- a/client/shared/etc/lang.ca_ES.conf +++ b/client/shared/etc/lang.ca_ES.conf @@ -91,10 +91,12 @@ MSG_HELP_ogAddCmd="Añade comandos al fichero creado por la función ogInstalMin MSG_HELP_ogAddRegistryKey="Añade una nueva clave al registro de Windows." MSG_HELP_ogAddRegistryValue="Añade un nuevo valor al registro de Windows." MSG_HELP_ogAddToLaunchDaemon="" -MSG_HELP_ogBurgInstallMbr="Instal·la el carregador d'arrencada BURG al MBR del primer disc dur" MSG_HELP_ogBoot="Arranca un sistema operativo instalado." MSG_HELP_ogBootMbrGeneric="" MSG_HELP_ogBootMbrXP="" +MSG_HELP_ogBurgDefaultEntry="Configura la entrada por defecto de Burg." +MSG_HELP_ogBurgInstallMbr="Instal·la el carregador d'arrencada BURG al MBR del primer disc dur" +MSG_HELP_ogBurgOgliveDefaultEntry="Configura la entrada de ogLive como la entrada por defecto de Burg." MSG_HELP_ogCalculateChecksum="Calcula la suma de comprobación (checksum) de un fichero." MSG_HELP_ogCalculateFullChecksum="" MSG_HELP_ogChangeRepo="Cambia el repositorio para el recurso remoto images." diff --git a/client/shared/etc/lang.en_GB.conf b/client/shared/etc/lang.en_GB.conf index 37503b9a..73c70116 100644 --- a/client/shared/etc/lang.en_GB.conf +++ b/client/shared/etc/lang.en_GB.conf @@ -91,10 +91,12 @@ MSG_HELP_ogAddCmd="Add commands to file created by ogInstalMiniSetup function." MSG_HELP_ogAddRegistryKey="Add a new Windows registry key." MSG_HELP_ogAddRegistryValue="Add a new Windows registry value." MSG_HELP_ogAddToLaunchDaemon="" -MSG_HELP_ogBurgInstallMbr="Install the BURG boot loader on the MBR of the first hard disk" MSG_HELP_ogBoot="Boot a installed operating system." MSG_HELP_ogBootMbrGeneric="" MSG_HELP_ogBootMbrXP="" +MSG_HELP_ogBurgDefaultEntry="Configura la entrada por defecto de Burg." +MSG_HELP_ogBurgInstallMbr="Install the BURG boot loader on the MBR of the first hard disk" +MSG_HELP_ogBurgOgliveDefaultEntry="Configura la entrada de ogLive como la entrada por defecto de Burg." MSG_HELP_ogCalculateChecksum="Calculate file checksum." MSG_HELP_ogCalculateFullChecksum="" MSG_HELP_ogChangeRepo="Cambia el repositorio para el recurso remoto images." diff --git a/client/shared/etc/lang.es_ES.conf b/client/shared/etc/lang.es_ES.conf index 884b6850..c38c8ed0 100644 --- a/client/shared/etc/lang.es_ES.conf +++ b/client/shared/etc/lang.es_ES.conf @@ -91,10 +91,12 @@ MSG_HELP_ogAddCmd="Añade comandos al fichero creado por la función ogInstalMin MSG_HELP_ogAddRegistryKey="Añade una nueva clave al registro de Windows." MSG_HELP_ogAddRegistryValue="Añade un nuevo valor al registro de Windows." MSG_HELP_ogAddToLaunchDaemon="" -MSG_HELP_ogBurgInstallMbr="Instala el gestor de arranque BURG en el MBR del primer disco duro" MSG_HELP_ogBoot="Arranca un sistema operativo instalado." MSG_HELP_ogBootMbrGeneric="" MSG_HELP_ogBootMbrXP="" +MSG_HELP_ogBurgDefaultEntry="Configura la entrada por defecto de Burg." +MSG_HELP_ogBurgInstallMbr="Instala el gestor de arranque BURG en el MBR del primer disco duro" +MSG_HELP_ogBurgOgliveDefaultEntry="Configura la entrada de ogLive como la entrada por defecto de Burg." MSG_HELP_ogCalculateChecksum="Calcula la suma de comprobación (checksum) de un fichero." MSG_HELP_ogCalculateFullChecksum="Calcula la suma de comprobación completa de un fichero." MSG_HELP_ogChangeRepo="Cambia el repositorio para el recurso remoto images." |