summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xclient/engine/Boot.lib92
-rw-r--r--client/shared/etc/lang.ca_ES.conf4
-rw-r--r--client/shared/etc/lang.en_GB.conf4
-rw-r--r--client/shared/etc/lang.es_ES.conf4
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."