v2.8.0: submenú rm-MULTIBOOT en GRUB en lugar de entradas sueltas

El hook 41_multiboot ahora envuelve todas las ISOs dentro de un submenu
de GRUB con título 'rm-MULTIBOOT [N ISOs]'. Si no hay ISOs, no aparece
ninguna entrada en el menú. Esto da una entrada fija y ordenada en el
menú de arranque en lugar de mezclar las ISOs con las entradas del SO.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Ricardo Monla
2026-06-07 00:02:13 -03:00
co-authored by Claude Sonnet 4.6
parent 3cee4bbddf
commit fd586f22f0
+12 -3
View File
@@ -5,7 +5,7 @@
# Autor: Lic. Ricardo MONLA
# Email: rmonla@gmail.com
# GitHub: https://github.com/ricardomonla/rm-MULTIBOOT
# Versión: 2.7.0
# Versión: 2.8.0
# Licencia: MIT
#
# Uso: sudo ./rm-multiboot.sh
@@ -19,7 +19,7 @@
set -euo pipefail
# ─── Constantes ───────────────────────────────────────────────────────────────
readonly SCRIPT_VERSION="2.7.0"
readonly SCRIPT_VERSION="2.8.0"
readonly SCRIPT_AUTHOR="Lic. Ricardo MONLA"
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
readonly ISOS_CONF="$SCRIPT_DIR/isos.conf"
@@ -805,7 +805,7 @@ install_grub_hook() {
local part_uuid="$1"
cat > "$GRUB_HOOK" <<HOOK
#!/bin/sh
# rm-MULTIBOOT — entradas generadas automáticamente por rm-multiboot.sh
# rm-MULTIBOOT — generado por rm-multiboot.sh
MPOINT="$MULTIBOOT_MOUNT"
ENTRIES="$ENTRIES_DIR"
@@ -813,10 +813,19 @@ if ! mountpoint -q "\$MPOINT" 2>/dev/null; then
mount UUID="$part_uuid" "\$MPOINT" 2>/dev/null || exit 0
fi
# Contar ISOs disponibles
count=0
for cfg in "\$ENTRIES"/*.cfg; do
[ -f "\$cfg" ] && count=\$(( count + 1 ))
done
[ "\$count" -eq 0 ] && exit 0
echo "submenu 'rm-MULTIBOOT [\${count} ISO\$([ \$count -gt 1 ] && echo s)]' --class gnu-linux {"
for cfg in "\$ENTRIES"/*.cfg; do
[ -f "\$cfg" ] || continue
cat "\$cfg"
done
echo "}"
HOOK
chmod +x "$GRUB_HOOK"
ok "Hook de GRUB instalado: $GRUB_HOOK"