#!/bin/bash function checkbinaries { for i in wget curl qemu-system-x86_64 qemu-img kvm; do type -P $i 1>/dev/null; val="$?" [ "$val" != 0 ] && echo "$i not found, exiting" && exit 1 done } function downloadiso { version=$(curl -s http://distro.ibiblio.org/tinycorelinux/ | grep 'The latest version' | cut -d ">" -f3) #example -> 8.2 version="${version% 8 echo -e "Downloading file: CorePure64-current.iso\n" wget -q --show-progress http://distro.ibiblio.org/tinycorelinux/"$mainversion".x/x86_64/release/CorePure64-current.iso name="CorePure64-$version.iso.md5.txt" echo -e "\nCurrent version of 'CorePure64-current.iso': $version" md5good="$(curl -s http://distro.ibiblio.org/tinycorelinux/"$mainversion".x/x86_64/release/"$name" | cut -d " " -f1)" echo "Good md5 hash of file 'CorePure64-current.iso': $md5good" md5check="$(md5sum CorePure64-current.iso | cut -d " " -f1)" echo -e "Computed md5 hash of file 'CorePure64-current.iso': $md5check\n" if [ "$md5good" == "$md5check" ]; then echo "'CorePure64-current.iso' downloaded successfully" else echo "'CorePure64-current.iso' isn't downloaded successfully, exiting" && exit 1 fi } function createimage { imagename=CorePure64-"$version".vmdk qemu-img create -f vmdk "$imagename" 1G 1>/dev/null; var_img="$?" if [ "$var_img" == 0 ]; then echo "'$imagename' created successfully" else echo "Can't create '$imagename', exiting" && exit 1 fi qemu-system-x86_64 -boot c -cdrom CorePure64-current.iso -hda "$imagename" -m 1G -enable-kvm 1>/dev/null } clear checkbinaries downloadiso createimage "$version" exit 0