Commit Graph
7 Commits
Author SHA1 Message Date
Ricardo MonlaandClaude Sonnet 4.6 de2a86fe78 feat(v2.3.2): ETA en tiempo real en la barra de progreso de descarga
Calcula el tiempo estimado restante usando velocidad promedio desde el
inicio de la descarga (más estable que velocidad instantánea para ETA).
Formato mm:ss para descargas < 1 hora, h:mm:ss para descargas largas.

Muestra "--:--" mientras no hay datos suficientes para estimar.
ETA solo aparece cuando el servidor informa Content-Length.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:58:28 -03:00
Ricardo MonlaandClaude Sonnet 4.6 055d099363 feat(v2.3.1): velocidad de descarga en MB/s en tiempo real
Calcula delta de bytes entre cada tick del loop (0.3 s) y lo convierte
a MB/s con un decimal via awk. Se muestra en la misma línea de progreso:

  →  [########------------]   42%  (1823 de 4340 MB)  23.5 MB/s

Sin Content-Length: "1247 MB  23.5 MB/s"
Al completar: muestra tamaño final sin velocidad (limpia la línea).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:56:40 -03:00
Ricardo MonlaandClaude Sonnet 4.6 b0e56f127f feat(v2.3.0): progreso de descarga unificado con barra y porcentaje
- Nueva función get_remote_size: obtiene Content-Length via HEAD request
- Nueva función download_with_progress: descarga en background y muestra
  barra [####----] + porcentaje + MB actuales / MB totales en tiempo real
- gdrive_download simplificada: delega en download_with_progress
- download_from_catalog usa un único punto de descarga para Drive y URLs directas
- Fallback a "X MB descargados..." cuando el servidor no informa Content-Length

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:54:59 -03:00
Ricardo MonlaandClaude Sonnet 4.6 6c6564dc96 feat(v2.2.0): soporte Google Drive y ChromeOS Flex en catálogo
- Nuevas funciones: is_gdrive_url, gdrive_file_id, gdrive_real_filename,
  gdrive_download — detectan y descargan desde URLs de Google Drive
  usando drive.usercontent.google.com con confirm=t (sin redirección)
- El nombre del archivo se obtiene del header Content-Disposition;
  si falla, se genera desde el nombre del catálogo
- Agrega ChromeOS Flex (stable) al catálogo con nota de que es imagen
  de disco para flashear, no ISO booteable por GRUB loopback

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:50:49 -03:00
Ricardo MonlaandClaude Sonnet 4.6 8185c86895 feat(v2.1.0): leer isos.conf desde GitHub en cada ejecución
El catálogo se obtiene en tiempo de ejecución desde:
  raw.githubusercontent.com/ricardomonla/rm-MULTIBOOT/main/isos.conf

Flujo: intenta GitHub primero → fallback al archivo local si no hay red.
El archivo temporal se limpia automáticamente tras leer las entradas.
Actualizar el catálogo ahora solo requiere editar isos.conf en GitHub.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:20:56 -03:00
Ricardo MonlaandClaude Sonnet 4.6 9f2c0f4580 fix: corregir datos del autor (Lic. Ricardo MONLA, rmonla@gmail.com)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:15:29 -03:00
Ricardo MonlaandClaude Sonnet 4.6 08a5bbdbf8 feat(v2.0.0): renombrar script, agregar catálogo isos.conf y descarga directa
- Script renombrado a rm-multiboot.sh con header de autor y versión
- Nuevo archivo isos.conf: catálogo NOMBRE|URL con 30+ distros populares
- Nuevo flujo "Agregar ISO": elegir entre descargar del catálogo o ruta local
- Descarga con wget (con fallback a curl) y retoma descargas incompletas (-c)
- El nombre del catálogo se usa como etiqueta GRUB cuando la detección es genérica

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 17:13:45 -03:00