#!/bin/sh

DIRECTORIO=~/OpenBSD
ARQUITECTURA=i386
#ARQUITECTURA=amd64
MAYORVERSION=4
MINORVERSION=0
VERSION=$MAYORVERSION.$MINORVERSION
VERSIONCORTA=$MAYORVERSION$MINORVERSION
MIRROR=ftp://ftp.rediris.es/pub/OpenBSD
#MIRROR=ftp://ftp.openbsd.org/pub/OpenBSD
#MIRROR=ftp://spargel.kd85.com/pub/OpenBSD
#MIRROR=ftp://ftp.irisa.fr/pub/OpenBSD
#Mas mirrors en http://www.openbsd.org/ftp.html
ULTIMAVERSION=""
PAQUETESADICIONALES=""

while [ "$ULTIMAVERSION" != "S" -a "$ULTIMAVERSION" != "s" -a "$ULTIMAVERSION" != "N" -a "$ULTIMAVERSION" != "n" ];do
  read -n 1 -p "¿Estas descargando la version mas reciente de OpenBSD [S/N]?" ULTIMAVERSION
  echo ""
done

while [ "$PAQUETESADICIONALES" != "S" -a "$PAQUETESADICIONALES" != "s" -a "$PAQUETESADICIONALES" != "N" -a "$PAQUETESADICIONALES" != "n" ];do
  read -n 1 -p "¿Quieres descargar los paquetes adicionales [S/N]?" PAQUETESADICIONALES
  echo ""
done

echo "Creando arbol de directorios en" $DIRECTORIO...
mkdir $DIRECTORIO
mkdir $DIRECTORIO/$VERSION
mkdir $DIRECTORIO/$VERSION/doc

echo "Descargando archivos de instalacion basicos..."
cd $DIRECTORIO
wget -c -m -nH -np -l1 --cut-dirs=3 $MIRROR/$VERSION/

cd $DIRECTORIO$VERSION
wget -c -m -nH -np --cut-dirs=2 $MIRROR/$VERSION/$ARQUITECTURA
wget -m -nH -np --cut-dirs=2 $MIRROR/$VERSION/tools

if [ "$ULTIMAVERSION" = "S" -o "$ULTIMAVERSION" = "s" ];then
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq.txt
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq.txt

  mv $DIRECTORIO/$VERSION/doc/obsd-faq.pdf $DIRECTORIO/$VERSION/doc/obsd-faq$VERSIONCORTA.pdf
  mv $DIRECTORIO/$VERSION/doc/obsd-faq.txt $DIRECTORIO/$VERSION/doc/obsd-faq$VERSIONCORTA.txt
  mv $DIRECTORIO/$VERSION/doc/pf-faq.pdf $DIRECTORIO/$VERSION/doc/pf-faq$VERSIONCORTA.pdf
  mv $DIRECTORIO/$VERSION/doc/pf-faq.txt $DIRECTORIO/$VERSION/doc/pf-faq$VERSIONCORTA.txt
else
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq$VERSIONCORTA.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/obsd-faq$VERSIONCORTA.txt
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq$VERSIONCORTA.pdf
  wget -c -N -P $DIRECTORIO/$VERSION/doc $MIRROR/doc/pf-faq$VERSIONCORTA.txt
fi

wget -c -N -P $DIRECTORIO $MIRROR/songs/song$VERSIONCORTA.mp3
wget -c -N -P $DIRECTORIO $MIRROR/songs/song$VERSIONCORTA.ogg
wget -c -N -P $DIRECTORIO http://www.openbsd.org/images/puffy$VERSIONCORTA.gif
# Comprobamos el ERRORLEVEL por si la imagen en formato GIF no exite en el servidor
if [ "$?" != "0" ];then
  wget -c -N -P $DIRECTORIO http://www.openbsd.org/images/puffy$VERSIONCORTA.jpg
fi

if [ "$PAQUETESADICIONALES" = "S" -o "$PAQUETESADICIONALES" = "s" ];then
  echo Descargando paquetes adicionales...
  wget -c -m -nH -np --cut-dirs=2 $MIRROR/$VERSION/packages/$ARQUITECTURA
fi

echo "Creando imagen ISO... (este proceso tardara unos minutos)"
mkisofs -q -l -J -r -o ~/OpenBSD$VERSIONCORTA.iso -c boot.catalog -b $VERSION/$ARQUITECTURA/cdrom$VERSIONCORTA.fs -V "OpenBSD $VERSION" $DIRECTORIO

cd ~

