@ -44,35 +44,65 @@ def cli_install_distro():
log ( config . usb_disk + ' is not a valid device partition... ' )
exit ( 1 )
#elif integrity(config.image_path) is not True:
# log(config.image_path , ' failed to pass integrity check...')
# log(config.image_path + ' failed to pass integrity check...')
# exit(1)
elif size_not_enough ( config . image_path , config . usb_disk ) is True :
log ( config . usb_disk + ' does not have enough space... ' )
else :
usb_details = details ( config . usb_disk )
config . usb_mount = usb_details [ ' mount_point ' ]
print ( config . usb_mount )
print ( config . image_path )
config . usb_uuid = usb_details [ ' uuid ' ]
config . usb_label = usb_details [ ' label ' ]
prepare_mbusb_host_dir ( )
extract_cfg_file ( config . image_path )
_distro = distro ( iso_cfg_ext_dir ( ) , config . image_path )
if isinstance ( config . image_path , str ) is True :
iso_install ( config . image_path )
elif isinstance ( config . image_path , list ) is True :
# Transfer the list to other variable and loop through iso image
iso_list = config . image_path
for config . image_path in iso_list :
iso_install ( config . image_path )
def iso_install ( iso_image ) :
"""
Script for installing iso image to a disk . This can be called by other script for auto install of many distros
: param iso_image : Path to ISO image
: return :
"""
if size_not_enough ( iso_image , config . usb_disk ) is True :
log ( config . usb_disk + ' does not have enough space... ' )
else :
clean_iso_cfg_ext_dir ( os . path . join ( multibootusb_host_dir ( ) , " iso_cfg_ext_dir " ) ) # Need to be cleaned everytime
extract_cfg_file ( iso_image )
_distro = distro ( iso_cfg_ext_dir ( ) , iso_image )
if _distro is not None :
log ( ' Detected distro type is : ' + _distro )
log ( ' \n Selected ISO is : ' + quote ( iso_name ( config . image_path ) ) )
log ( ' Selected target device is : ' + quote ( config . usb_disk ) , ' \n ' )
log ( ' Please confirm the option. ' )
log ( ' Y/y/Yes/yes/YES or N/n/No/no/NO ' )
if read_input_yes ( ) is True :
log ( ' Initiating installation process for ' + iso . iso_basename ( iso_image ) )
if config . yes is not True :
log ( ' Detected distro type is : ' + _distro )
log ( ' \n Selected ISO is : ' + quote ( iso_name ( iso_image ) ) )
log ( ' Selected target device is : ' + quote ( config . usb_disk ) , ' \n ' )
log ( ' Please confirm the option. ' )
log ( ' Y/y/Yes/yes/YES or N/n/No/no/NO ' )
if read_input_yes ( ) is True :
config . distro = _distro
copy_mbusb_dir_usb ( config . usb_disk )
install_progress ( )
syslinux_distro_dir ( config . usb_disk , iso_image , _distro )
syslinux_default ( config . usb_disk )
update_distro_cfg_files ( iso_image , config . usb_disk , _distro )
log ( ' Finished installing ' + iso . iso_basename ( iso_image ) )
else :
log ( ' Not proceeding. User cancelled the operation. ' )
else :
log ( ' Skipping user confirmation for ' + iso_image )
config . distro = _distro
copy_mbusb_dir_usb ( config . usb_disk )
install_progress ( )
syslinux_distro_dir ( config . usb_disk , config . image_path , _distro )
syslinux_distro_dir ( config . usb_disk , iso_image , _distro )
syslinux_default ( config . usb_disk )
update_distro_cfg_files ( config . image_path , config . usb_disk , _distro )
update_distro_cfg_files ( iso_image , config . usb_disk , _distro )
log ( ' Finished installing ' + iso . iso_basename ( iso_image ) )
else :
log ( ' \n \n Sorry ' + iso_name ( config . image_path ) + ' is not supported at the moment. \n '
log ( ' \n \n Sorry ' + iso_name ( iso_image ) + ' is not supported at the moment. \n '
' Please report tissue at https://github.com/mbusb/multibootusb/issues \n ' )