@@ -3349,6 +3349,7 @@ ipsw_prepare_keys() {
33493349 fw_key=" $device_fw_key_base "
33503350 fi
33513351 local name=$( echo $fw_key | $jq -j ' .keys[] | select(.image == "' $getcomp ' ") | .filename' )
3352+ [[ $name == * " .dmg" ]] && name=" ${name%% .dmg* } .dmg"
33523353 local iv=$( echo $fw_key | $jq -j ' .keys[] | select(.image == "' $getcomp ' ") | .iv' )
33533354 local key=$( echo $fw_key | $jq -j ' .keys[] | select(.image == "' $getcomp ' ") | .key' )
33543355 if [[ -z $name && $device_proc != 1 ]]; then
@@ -3360,7 +3361,10 @@ ipsw_prepare_keys() {
33603361 if [[ -z $name ]]; then
33613362 name=" $getcomp .${device_model} ap.RELEASE.dfu"
33623363 fi
3363- echo " <key>$comp </key><dict><key>File</key><string>Firmware/dfu/$name </string><key>IV</key><string>$iv </string><key>Key</key><string>$key </string>" >> $NewPlist
3364+ echo " <key>$comp </key><dict><key>File</key><string>Firmware/dfu/$name </string>" >> $NewPlist
3365+ if [[ -n $iv && -n $key ]]; then
3366+ echo " <key>IV</key><string>$iv </string><key>Key</key><string>$key </string>" >> $NewPlist
3367+ fi
33643368 if [[ $ipsw_prepare_usepowder == 1 ]]; then
33653369 echo " <key>Patch</key><true/>" >> $NewPlist
33663370 elif [[ -s $FirmwareBundle /$comp .${device_model} ap.RELEASE.patch ]]; then
@@ -3583,6 +3587,7 @@ ipsw_prepare_bundle() {
35833587 file_extract_from_archive " $ipsw_p .ipsw" $all_flash /manifest
35843588 mv manifest $FirmwareBundle /
35853589 local ramdisk_name=$( echo " $key " | $jq -j ' .keys[] | select(.image == "RestoreRamdisk") | .filename' )
3590+ ramdisk_name=" ${ramdisk_name%% .dmg* } .dmg"
35863591 local RamdiskIV=$( echo " $key " | $jq -j ' .keys[] | select(.image == "RestoreRamdisk") | .iv' )
35873592 local RamdiskKey=$( echo " $key " | $jq -j ' .keys[] | select(.image == "RestoreRamdisk") | .key' )
35883593 if [[ -z $ramdisk_name ]]; then
@@ -3616,6 +3621,7 @@ ipsw_prepare_bundle() {
36163621 fi
36173622 RootSize=$(( RootSize+ 30 ))
36183623 local rootfs_name=" $( echo " $key " | $jq -j ' .keys[] | select(.image == "RootFS") | .filename' ) "
3624+ rootfs_name=" ${rootfs_name%% .dmg* } .dmg"
36193625 local rootfs_key=" $( echo " $key " | $jq -j ' .keys[] | select(.image == "RootFS") | .key' ) "
36203626 if [[ -z $rootfs_name ]]; then
36213627 error " Issue with firmware keys: Failed getting RootFS. Check The Apple Wiki or your wikiproxy"
@@ -9389,14 +9395,18 @@ menu_ipsw_browse() {
93899395 local picker
93909396
93919397 ipsw_latest_set
9392- local menu_items=($( ls ../$device_type * Restore.ipsw 2> /dev/null) )
9398+ local menu_items=($( ls ../$( echo " $device_type " | tr ' [:upper:]' ' [:lower:]' ) * restore.ipsw 2> /dev/null) )
9399+ menu_items+=($( ls ../$device_type * Restore.ipsw 2> /dev/null) )
93939400 [[ $ipsw_prefix != " $device_type " ]] && menu_items+=($( ls ../${ipsw_prefix} _1* Restore.ipsw 2> /dev/null) )
93949401 if [[ $1 == " base" ]]; then
93959402 text=" Base"
93969403 menu_items=()
93979404 case $device_proc in
93989405 4 ) menu_items=($( ls ../${device_type} _${device_base_vers} _${device_base_build} _Restore.ipsw 2> /dev/null) );;
9399- 6 ) menu_items=($( ls ../${device_type} _7.* Restore.ipsw 2> /dev/null) );;
9406+ 6 )
9407+ menu_items=($( ls ../$( echo " $device_type " | tr ' [:upper:]' ' [:lower:]' ) _7.* restore.ipsw 2> /dev/null) )
9408+ menu_items+=($( ls ../${device_type} _7.* Restore.ipsw 2> /dev/null) )
9409+ ;;
94009410 * ) menu_items=($( ls ../${device_type} _7.1* Restore.ipsw 2> /dev/null) );;
94019411 esac
94029412 elif [[ $1 == " special" ]]; then
0 commit comments