From a8a3a594bfb04c5ef3a21fa9d2420082a9336629 Mon Sep 17 00:00:00 2001 From: kprkpr Date: Sat, 4 Jun 2016 17:55:57 +0200 Subject: [PATCH] changes --- archinstall/archinstall.sh | 168 +++++++++++++++++++++---------------- 1 file changed, 96 insertions(+), 72 deletions(-) diff --git a/archinstall/archinstall.sh b/archinstall/archinstall.sh index 84f2155..6247fcd 100755 --- a/archinstall/archinstall.sh +++ b/archinstall/archinstall.sh @@ -23,6 +23,8 @@ mostrardialog "Error fatal" "Ha occurrido un error fatal, la instalacion se va a exit } +mostrardialog "CUIDADO" "Se esta probando un metodo de particionado nuevo, no nos hacemos responsables de problemas" + function particiones { clear mostrardialog "Preguntas acerca de las unidades donde instalar el sistema" "Esta parte es la mas importante, antes de seguir se mostrarán los discos duros. Si esta vacío o es nuevo, recomendamos formatear en DOS/MBR. Si sabe lo que hace, o ya usaba GPT/UEFI, tendrá que seleccionar la partición EFI, recuerdelo \n (Si lo instala junto a windows 8.1/10 de 64 bits con UEFI activado, entonces usa EFI y tendrás que seleccionar la unidad EFI que utiliza luego) \n(UEFI NECESITA QUE EL ARRANQUE HAYA SIDO POR UEFI)" @@ -31,7 +33,7 @@ if [[ ! $(lsblk --output KNAME | cut -c1-3 | sort | uniq | sed '1d' | grep 'sd\| mostrardialog "ERROR" "ERROR: No tienes discos duros, no se puede continuar. Por favor enchufe/inserte un disco duro y reinicie. \n Al pulsar aceptar se reiniciara el sistema" reboot fi -optpa=`dialog --stdout --nocancel --menu "¿Quieres editar las particiones?¿De modo gráfico, o por la terminal?" 0 0 5 1 "Grafico con Gparted (Recomendado)" 2 "Terminal (Pequeño asistente o por tu cuenta)" 3 "Borrar todo un disco duro e instalar JKArch en el" 4 "No editar nada"` +optpa=`dialog --stdout --nocancel --menu "¿Quieres editar las particiones?¿De modo gráfico, o por la terminal?" 0 0 5 1 "Grafico con Gparted (Recomendado)" 2 "Terminal (Pequeño asistente o por tu cuenta)" 3 "Borrar todo un disco duro e instalar JKArch en el (Rapido, usar con mucho cuidado!)" 4 "No editar nada"` case $optpa in 1) #Abrir gparted grafico @@ -55,44 +57,10 @@ case $optpa in done ;; 3) - mostrardialog "Espera majo" "Esta opcion aun esta en construccion";; -esac -clear -tput setaf 6 ; echo "$(T "Your partition scheme")" ; tput setaf 9 -lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL -tput setaf 6 ; echo "Elige la particion a usar como sistema raíz ('/')" ; tput setaf 9 -options=($(lsblk --output KNAME | sed '1d' | grep 'sd\|hd' | grep '[1-9]$')) -select opt in "${options[@]}" -do - case $opt in - *) - if [[ -z $opt ]];then - echo "No valido" - else - particionraiz=$opt - break - fi;; - esac -done -optfr=`dialog --stdout --nocancel --menu "Formato para la particion raiz(/)" 0 0 4 1 "EXT4 (Recomendado)" 2 "BTRFS" 3 "No formatear (Si ya esta formateada)"` -case $optfr in - 1) - formatoraiz="mkfs.ext4 -F";; - 2) - formatoraiz="mkfs.btrfs -f";; - 3) - formatohome="echo No formatear ";; -esac - -clear - -opthpart=`dialog --stdout --nocancel --menu "¿Quieres separar la particion /home de /?" 0 0 4 1 "No (Por defecto)" 2 "Si (Tendras que elegir la particion)"` -case $opthpart in - 2) - #Selección de home + tput setaf 6 ; echo "$(T "Your partition scheme")" ; tput setaf 9 lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL - tput setaf 6 ; echo "Elige la particion a usar como home ('/home')" ; tput setaf 9 - options=($(lsblk --output KNAME | sed '1d' | grep 'sd\|hd' | grep '[1-9]$')) + tput setaf 6 ; echo "Elige el disco duro a borrar y cambiar por una particion Linux simple" ; tput setaf 9 + options=($(lsblk --output KNAME | cut -c1-3 | sort | uniq | sed '1d' | grep 'sd\|hd') "Salir") select opt in "${options[@]}" do case $opt in @@ -100,50 +68,106 @@ case $opthpart in if [[ -z $opt ]];then echo "No valido" else - particionhome=$opt + echo -e "o\nn\np\n1\n\n\nw\n" | fdisk /dev/$opt + particionraiz=${opt}1 + formatoraiz="mkfs.ext4 -F" break fi;; esac done + ;; +esac +clear +# Solo pedir datos si no esta en modo automatico, evidentemente. +if [[ ! $optpa -eq 3 ]];then - optfh=`dialog --stdout --nocancel --menu "Formato para la particion home (/home)" 0 0 4 1 "EXT4 (Recomendado)" 2 "BTRFS" 3 "XFS" 4 "No formatear (Si ya esta formateada)"` - case $optfh in - 1) - formatohome="mkfs.ext4 -F";; - 2) - formatohome="mkfs.btrfs -f";; - 3) - formatohome="mkfs.xfs -f";; - 4) - formatohome="echo No formatear ";; + tput setaf 6 ; echo "$(T "Your partition scheme")" ; tput setaf 9 + lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL + tput setaf 6 ; echo "Elige la particion a usar como sistema raíz ('/')" ; tput setaf 9 + options=($(lsblk --output KNAME | sed '1d' | grep 'sd\|hd' | grep '[1-9]$')) + select opt in "${options[@]}" + do + case $opt in + *) + if [[ -z $opt ]];then + echo "No valido" + else + particionraiz=$opt + break + fi;; esac - ;; -esac + done + optfr=`dialog --stdout --nocancel --menu "Formato para la particion raiz(/)" 0 0 4 1 "EXT4 (Recomendado)" 2 "BTRFS" 3 "No formatear (Si ya esta formateada)"` + case $optfr in + 1) + formatoraiz="mkfs.ext4 -F";; + 2) + formatoraiz="mkfs.btrfs -f";; + 3) + formatohome="echo No formatear ";; + esac -clear + clear -opt=`dialog --stdout --nocancel --menu "¿Usaste EFI/UEFI/GPT o es MBR/BIOS? (Recuerda, UEFI GRUB no se instalara si no arrancaste en modo UEFI)" 0 0 5 1 "MBR/BIOS" 2 "EFI/UEFI/GPT"` -case $opt in - 2) - clear - lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL - tput setaf 6 ; echo "Elige la particion EFI del sistema (Si usa windows, suele ser una particion de 300-400Mb en FAT32 llamada EFI, y suele estar en /dev/sda2)" ; tput setaf 9 - options=($(lsblk --output KNAME | sed '1d'| grep 'sd\|hd')) - select opt in "${options[@]}" - do - case $opt in - *) - if [[ -z $opt ]];then - echo "No valido" - else - partefi=$opt - break - fi;; + opthpart=`dialog --stdout --nocancel --menu "¿Quieres separar la particion /home de /?" 0 0 4 1 "No (Por defecto)" 2 "Si (Tendras que elegir la particion)"` + case $opthpart in + 2) + #Selección de home + lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL + tput setaf 6 ; echo "Elige la particion a usar como home ('/home')" ; tput setaf 9 + options=($(lsblk --output KNAME | sed '1d' | grep 'sd\|hd' | grep '[1-9]$')) + select opt in "${options[@]}" + do + case $opt in + *) + if [[ -z $opt ]];then + echo "No valido" + else + particionhome=$opt + break + fi;; + esac + done + + optfh=`dialog --stdout --nocancel --menu "Formato para la particion home (/home)" 0 0 4 1 "EXT4 (Recomendado)" 2 "BTRFS" 3 "XFS" 4 "No formatear (Si ya esta formateada)"` + case $optfh in + 1) + formatohome="mkfs.ext4 -F";; + 2) + formatohome="mkfs.btrfs -f";; + 3) + formatohome="mkfs.xfs -f";; + 4) + formatohome="echo No formatear ";; esac - done - ;; -esac + ;; + esac + clear + + opt=`dialog --stdout --nocancel --menu "¿Usaste EFI/UEFI/GPT o es MBR/BIOS? (Recuerda, UEFI GRUB no se instalara si no arrancaste en modo UEFI)" 0 0 5 1 "MBR/BIOS" 2 "EFI/UEFI/GPT"` + case $opt in + 2) + clear + lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL + tput setaf 6 ; echo "Elige la particion EFI del sistema (Si usa windows, suele ser una particion de 300-400Mb en FAT32 llamada EFI, y suele estar en /dev/sda2)" ; tput setaf 9 + options=($(lsblk --output KNAME | sed '1d'| grep 'sd\|hd')) + select opt in "${options[@]}" + do + case $opt in + *) + if [[ -z $opt ]];then + echo "No valido" + else + partefi=$opt + break + fi;; + esac + done + ;; + esac + +fi } function install {