tawasuyu

tawasuyu/brahman

Rust 582TOML 222Markdown 73JSON 198629 Definiciones

fix(scripts): Fedora/RHEL usan /boot/grub2/grub.cfg, no el wrapper EFI

Desde Fedora 34 / RHEL 9, /boot/efi/EFI/<distro>/grub.cfg es un wrapper
que sourcea /boot/grub2/grub.cfg — y grub2-mkconfig se niega a
sobreescribirlo ("will overwrite the GRUB wrapper. Please run [...] on
/boot/grub2/grub.cfg instead"). Mi loop de detección lo encontraba
primero y fallaba. Apuntamos directo al canónico.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

5edd8de917377a743d4d2c485609b62dacce858b · por sergio · (hace 5 meses) · padre 89117f47c · ver el árbol en este commit

Delta semántico

Ninguna definición cambió: el cambio es de texto, documentación o datos.

2 archivos · +7 −27

diff --git a/scripts/install-arje-as-init.sh b/scripts/install-arje-as-init.sh
index 25314a0..5239d46 100755
--- a/scripts/install-arje-as-init.sh
+++ b/scripts/install-arje-as-init.sh
@@ -171,23 +171,12 @@ if command -v update-grub >/dev/null 2>&1; then
   echo "  ejecutando update-grub (Debian/Ubuntu)"
   update-grub
 elif command -v grub2-mkconfig >/dev/null 2>&1; then
-  # Fedora / RHEL: buscar el grub.cfg activo. UEFI primero — su path es
-  # el que arranca realmente; el de BIOS suele ser un symlink al UEFI.
-  GRUB_CFG=""
-  for cand in /boot/efi/EFI/fedora/grub.cfg \
-              /boot/efi/EFI/redhat/grub.cfg \
-              /boot/efi/EFI/centos/grub.cfg \
-              /boot/efi/EFI/almalinux/grub.cfg \
-              /boot/efi/EFI/rocky/grub.cfg \
-              /boot/grub2/grub.cfg; do
-    if [ -f "$cand" ] || [ -L "$cand" ]; then GRUB_CFG="$cand"; break; fi
-  done
-  if [ -z "$GRUB_CFG" ]; then
-    GRUB_CFG="/boot/grub2/grub.cfg"
-    echo "  no detecté grub.cfg existente — usando $GRUB_CFG por default"
-  fi
-  echo "  ejecutando grub2-mkconfig -o $GRUB_CFG (Fedora/RHEL)"
-  grub2-mkconfig -o "$GRUB_CFG"
+  # Fedora / RHEL desde ~2021 unificaron en /boot/grub2/grub.cfg para
+  # BIOS y UEFI; el /boot/efi/EFI/<distro>/grub.cfg pasó a ser un wrapper
+  # que sourcea aquél y NO debe regenerarse — grub2-mkconfig protesta y
+  # se niega a sobreescribirlo. Apuntamos directo al canónico.
+  echo "  ejecutando grub2-mkconfig -o /boot/grub2/grub.cfg (Fedora/RHEL)"
+  grub2-mkconfig -o /boot/grub2/grub.cfg
 elif command -v grub-mkconfig >/dev/null 2>&1; then
   echo "  ejecutando grub-mkconfig (Arch/otros)"
   grub-mkconfig -o /boot/grub/grub.cfg
diff --git a/scripts/uninstall-arje.sh b/scripts/uninstall-arje.sh
index 8722528..3e044e2 100755
--- a/scripts/uninstall-arje.sh
+++ b/scripts/uninstall-arje.sh
@@ -39,16 +39,7 @@ fi
 if command -v update-grub >/dev/null 2>&1; then
   update-grub
 elif command -v grub2-mkconfig >/dev/null 2>&1; then
-  GRUB_CFG=""
-  for cand in /boot/efi/EFI/fedora/grub.cfg \
-              /boot/efi/EFI/redhat/grub.cfg \
-              /boot/efi/EFI/centos/grub.cfg \
-              /boot/efi/EFI/almalinux/grub.cfg \
-              /boot/efi/EFI/rocky/grub.cfg \
-              /boot/grub2/grub.cfg; do
-    if [ -f "$cand" ] || [ -L "$cand" ]; then GRUB_CFG="$cand"; break; fi
-  done
-  grub2-mkconfig -o "${GRUB_CFG:-/boot/grub2/grub.cfg}"
+  grub2-mkconfig -o /boot/grub2/grub.cfg
 elif command -v grub-mkconfig >/dev/null 2>&1; then
   grub-mkconfig -o /boot/grub/grub.cfg
 fi