#!/bin/sh
#] 
#] *********************
#] $ sudo bash  "/media/bill/SWAPPER/bin/iso_install.sh"  - install scripts Linux Mint Debian Edition iso
# www.BillHowell.ca  06Oct2019 initial
# adapted from /media/bill/HOWELL_BASE/Software installations & maintenance/LMDE 


# ****************************
# How to install Linux Mint via USB : http://blog.linuxmint.com/?p=2703
# From Scott Hawkin' book "Linux Desktop Reference" : df  example
# $ df -h
# Filesystem   Size   Used   Avail  Use%   Mounted on
# /dev/sr1     4.4M   4.4M   0      100%   /media/bill/U3 System
# /dev/sdd1    3.9G   196K   3.9G     1%   /media/bill/E872-54CA  ->  THIS IS AN EXAMPLE ONLY!

# from /media/bill/SWAPPER/bin/becho and beval.txt
# used for [eval, output, log]


#**********************************
# initial setup (header)

 d_bin="/media/bill/SWAPPER/bin/"

# loose collection of handy routines [dates,becho,beval,...]
# This includes functions [becho, beval] to track [progress, errors, variables]

source  "$d_bin""header standard.sh"

#*************


#] iso_verify()  - 

	iso_verify()
{
p_log="$d_iso""log verify $f_iso.txt"
becho "************************************"
becho "$date_ymdhm iso-verify"
becho ""
becho "Verification : "
beval	'gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-key "'"$keye_ID"'"  >>"'"$p_log"'" '
becho	"Paste screen output below : "
becho ""
becho "Authentication : "
beval	'keye_sha=$( sha256sum -b '"'$p_iso'"' )'
becho	"keye_sig=$keye_sig"
becho	"keye_sha=$keye_sha"
becho ""
beval	'code_sig=$( echo "'"$keye_sig"'"  |  sed "s/\([a-z,0-9]*\) .*/\1/" )'
beval	'code_sha=$( echo "'"$keye_sha"'"  |  sed "s/\([a-z,0-9]*\) .*/\1/" )'
becho	"code_sig=$code_sig"
becho	"code_sha=$code_sha"
becho ""
if [ "$code_sig" == "$code_sha" ]; then
	becho "Authentication confirmed : the source file is from the right publisher"
else
	becho "Authentication FAILED!!! : the source file is NOT from the right publisher"
fi
becho ""

beval	'chown bill:bill  "'"$p_log"'" '
}


# '/media/bill/HOWELL_BASE/Software installations & maintenance/Debian install/SHA512SUMS Debian 64bit KDE.txt"

#] iso_burn()  - 

	iso_burn()
{ 
p_log="$d_iso""log verify $f_iso.txt"
becho "************************************"
becho "$date_ymdhm iso-burn"
becho ""
becho ""
beval	'sudo dd   if='"'$p_iso'"'  of='"'$dev'"'  oflag=direct  bs=1048576  >>'"'$p_log'"' '
becho ""

beval	'chown bill:bill  "'"$p_log"'" '

#$ sudo dd  if="/media/bill/HOWELL_BASE/Software installations & maintenance/Debian install/debian-10.1.0-amd64-DVD-1.iso"  of="/dev/sdc"  oflag=direct  bs=1048576
#3720+1 records in
#3720+1 records out
#3901456384 bytes (3.9 GB, 3.6 GiB) copied, 420.274 s, 9.3 MB/s

}


# ****************************
# LMDE install 17Nov2014 
# Get Debian version : http://www.linuxmint.com/download_lmde.php
# see also "/media/bill/HOWELL_BASE/Software installations & maintenance/LMDE install/190916 LMDE3 Cindy install notes.txt"

# +-----+
# Md5 sum:
# md5sum  >"/home/bill/System_maintenance/LinuxMintDeb/md5sum_hash_result_141117.txt"      /home/bill/System_maintenance/LinuxMintDeb/linuxmint-201403-cinnamon-dvd-32bit.iso

#   Result :  ba865cdb8defc2114713037f43429bf6  linuxmint-201403-cinnamon-dvd-32bit.iso  (also result for Toshiba laptop install)
#             ba865cdb8defc2114713037f43429bf6
#   Standard: ba865cdb8defc2114713037f43429bf6 from http://www.linuxmint.com/edition.php?id=101 

# OK - download is clean!

# +-----+
# sha256 sum verification 16Sep2019 
# see "/media/bill/HOWELL_BASE/Software installations & maintenance/LMDE install/190916 LMDE3 Cindy install notes.txt"

# edited this section 23Nov2014, including change-over to DVD install

# 17Nov2014 results : 
# 1292+0 records in 
# 1292+0 records out
# 1354760192 bytes (1.4 Gb) copied, 191.882 s, 7.1 MB/s

# I don't think that I used this script at the time?  
# created function below in 2019 but didn't install for feqar of instability (rebooting LMDE all of the time!)

# uses beval	'sha256sum -b '"'$p_iso'"' >>'"'$p_log'"' '


#] LMDE_verify()  - 

	LMDE_verify()
{
d_iso="/media/bill/HOWELL_BASE/Software installations & maintenance/LMDE install/" 
# from download 
f_iso="linuxmint-201403-cinnamon-dvd-32bit.iso"
p_iso="$d_iso$f_iso"
# get this from : https://linuxmint.com/verify.php
keye_ID="27DE B156 44C6 B3CF 3BD7  D291 300F 846B A25B AE09"
# WARNING - LMDE keye_ID above was for sha256sum
keye_sig="90c15a08829366f7cc47b92a9520edca99a3b02979d008685a54e6db4d29cff3 *lmde-3-201808-cinnamon-64bit.iso"

iso_verify

# Check the log file for anomalies!!!
}


#] LMDE_iso()  - 

	LMDE_iso()
{  
d_iso="/media/bill/HOWELL_BASE/Software installations & maintenance/LMDE install/" 
# from download 
f_iso="linuxmint-201403-cinnamon-dvd-32bit.iso"
p_iso="$d_iso$f_iso"
# CAREFUL!!! from $ sudo fdisk -l
dev="/dev/sdd"

sudo iso_burn 
}


# ****************************
# Debian-KDE install 06Oct2019 
# see also "/media/bill/HOWELL_BASE/Software installations & maintenance/Debian install/190916 Debian install notes.txt"

# Debian_ISO device name : 
# $ sudo fdisk -l
# uses  beval	'sha512sum -b '"'$p_iso'"' >>'"'$p_log'"' '


#] Debian_verify()  - 

	Debian_verify()
{
d_iso="/media/bill/HOWELL_BASE/Software installations & maintenance/Debian install/"
# from download 
f_iso="debian-10.1.0-amd64-DVD-1.iso"
p_iso="$d_iso$f_iso"
# get this from : https://www.debian.org/CD/verify
keye_ID="F41D 3034 2F35 4669 5F65  C669 4246 8F40 09EA 8AC3"
keye_sig="a2cd517c6ffbebe04dda2aa98c1a749a34efef4a1cc950dae6696a5f47294c7f27bacf52040655637a519a420cff6f25395edac412051299e3237cd954ef427f  debian-10.1.0-amd64-DVD-1.iso"

iso_verify

# Check the log file for anomalies!!!
}


#] Debian_iso()  - 

	Debian_iso()
{  
d_iso="/media/bill/HOWELL_BASE/Software installations & maintenance/Debian install/"
# from download 
f_iso="debian-10.1.0-amd64-DVD-1.iso"
p_iso="$d_iso$f_iso"
# CAREFUL!!! from $ sudo fdisk -l
dev="/dev/sdc"

sudo iso_burn
}


# ****************************
# Suse-KDE install 08Oct2019 
# see also "/media/bill/HOWELL_BASE/Software installations & maintenance/Suse install/Suse install notes.txt"

# Suse_ISO device name : 
# $ sudo fdisk -l
# uses beval	'sha256sum -b '"'$p_iso'"' >>'"'$p_log'"' '


#] Suse_verify()  - 

	Suse_verify()
{
d_iso="/media/bill/HOWELL_BASE/Software installations & maintenance/Suse install/"
# from download 
f_iso="openSUSE-Leap-15.1-DVD-x86_64.iso"
p_iso="$d_iso$f_iso"
# get this from : https://software.opensuse.org/distributions/leap/15_1
keye_ID="22C0 7BA5 3417 8CD0 2EFE 22AA B88B 2FD4 3DBD C284"
keye_sig="c6d3ed19fe5cc25c4667bf0b46cc86aebcfbca3b0073aed0a288834600cb8b97  openSUSE-Leap-15.1-DVD-x86_64.iso"

iso_verify

# Check the log file for anomalies!!!
}


#] Suse_iso()  - 

	Suse_iso()
{  
d_iso="/media/bill/HOWELL_BASE/Software installations & maintenance/Suse install/"
# from download 
f_iso="openSUSE-Leap-15.1-DVD-x86_64.iso"
p_iso="$d_iso$f_iso"
# CAREFUL!!! from $ sudo fdisk -l
dev="/dev/sdc"

iso_burn
}



#*****************************
# Runs
# add function name to bash command 

eval "$1" 


# $ sudo bash  "/media/bill/SWAPPER/bin/iso_install.sh" Debian_verify
# $ sudo bash  "/media/bill/SWAPPER/bin/iso_install.sh" Debian_iso

# $ sudo bash  "/media/bill/SWAPPER/bin/iso_install.sh" Suse_verify
# $ sudo bash  "/media/bill/SWAPPER/bin/iso_install.sh" Suse_iso



#enddoc
