Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update efi-macos.sh #2

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion efi-linux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,16 @@ printf "\nPatching 64-bit ROM...\n"
cp -v /usr/lib/vmware/roms/EFI64.ROM .
./linux/UEFIPatch EFI64.ROM patches.txt -o EFI64-MACOS.ROM
rm -fv EFI64.ROM

# Check version is 17+
if [[ ${product[0]} -ge 17 ]]; then
printf "Patching 32-bit TPM 2.0 ROM...\n"
cp -v /usr/lib/vmware/roms/EFI20-32.ROM .
./linux/UEFIPatch EFI20-32.ROM patches.txt -o EFI20-32-MACOS.ROM
rm -fv EFI20-32.ROM

printf "\nPatching 64-bit TPM 2.0 ROM...\n"
cp -v /usr/lib/vmware/roms/EFI20-64.ROM .
./linux/UEFIPatch EFI20-64.ROM patches.txt -o EFI20-64-MACOS.ROM
rm -fv EFI20-64.ROM
fi
printf "\nFinished!\n"
19 changes: 15 additions & 4 deletions efi-macos.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -e

printf "\nEFI Unlocker 1.0.0 for VMware Fusion\n"
printf "\nEFI Unlocker 1.1.0 for VMware Fusion\n"
printf "======================================\n"
printf "(c) Dave Parsons 2018\n\n"

Expand All @@ -25,13 +25,24 @@ if [[ ${product[0]} -lt 10 ]]; then
fi

printf "Patching 32-bit ROM...\n"
cp -v /Applications/VMware\ Fusion.app/Contents/Library/roms/EFI32.ROM .
cp -v /Applications/VMware\ Fusion.app/Contents/Library/roms/x86_x64/EFI32.ROM .
./macos/UEFIPatch EFI32.ROM patches.txt -o EFI32-MACOS.ROM
rm -fv EFI32.ROM

printf "\nPatching 64-bit ROM...\n"
cp -v /Applications/VMware\ Fusion.app/Contents/Library/roms//EFI64.ROM .
cp -v /Applications/VMware\ Fusion.app/Contents/Library/roms/x86_x64/EFI64.ROM .
./macos/UEFIPatch EFI64.ROM patches.txt -o EFI64-MACOS.ROM
rm -fv EFI64.ROM

# Check version is 13+
if [[ ${product[0]} -ge 13 ]]; then
printf "Patching 32-bit TPM 2.0 ROM...\n"
cp -v /Applications/VMware\ Fusion.app/Contents/Library/roms/x86_x64/EFI20-32.ROM .
./macos/UEFIPatch EFI20-32.ROM patches.txt -o EFI20-32-MACOS.ROM
rm -fv EFI20-32.ROM

printf "\nPatching 64-bit TPM 2.0 ROM...\n"
cp -v /Applications/VMware\ Fusion.app/Contents/Library/roms/x86_x64/EFI20-64.ROM .
./macos/UEFIPatch EFI20-64.ROM patches.txt -o EFI20-64-MACOS.ROM
rm -fv EFI20-64.ROM
fi
printf "\nFinished!\n"
17 changes: 15 additions & 2 deletions efi-windows.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,20 @@ echo Patching 64-bit ROM...
xcopy /F /Y "%InstallPath%x64\EFI64.ROM" .
.\windows\UEFIPatch.exe EFI64.ROM patches.txt -o EFI64-MACOS.ROM
del /f EFI64.ROM

:: Check version is 17+
if %Major% geq 17 (
echo.
echo Patching 32-bit TPM 2.0 ROM...
xcopy /F /Y "%InstallPath%x64\EFI20-32.ROM" .
.\windows\UEFIPatch.exe EFI20-32.ROM patches.txt -o EFI20-32-MACOS.ROM
del /f EFI20-32.ROM

echo.
echo Patching 64-bit TPM 2.0 ROM...
xcopy /F /Y "%InstallPath%x64\EFI20-64.ROM" .
.\windows\UEFIPatch.exe EFI20-64.ROM patches.txt -o EFI20-64-MACOS.ROM
del /f EFI20-64.ROM
)
popd
echo.
echo Finished
echo Finished
18 changes: 11 additions & 7 deletions readme.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
macOS EFI Unlocker V1.0 for VMware
macOS EFI Unlocker V1.1 for VMware
==================================

1. Introduction
Expand All @@ -14,8 +14,8 @@ do not need the modified firmware due to Apple removing the restrictions imposed

EFI Unlocker 1 is designed for the following products:

* VMware Workstation and Player versions 14/15
* VMware Fusion versions 10/11
* VMware Workstation and Player versions 14-17
* VMware Fusion versions 10-13

The checks for the server versions are done in VMware's virtual EFI firmware and looks for a file called
ServerVersion.plist in the installation media and the installed OS. The patch modifies the firmware to check
Expand All @@ -35,7 +35,9 @@ macOS open a terminal session and run: efi-macos.sh
The patched firmware files will be found in the same folder as the tool and are called:

EFI32-MACOS.ROM - 32-bit firmware
EFI20-32-MACOS.ROM - 32-bit firmware with TPM 2.0 support
EFI64-MACOS.ROM - 64-bit firmware
EFI20-64-MACOS.ROM - 64-bit firmware with TPM 2.0 support

3. Using the firmware
------------------------
Expand All @@ -44,10 +46,12 @@ There are 3 preferred ways to use the firmware, by VM, by user or by host system
entries dependign on whether you are installing a 32 or 64-bit version of 10.5 or 10.6 as a guest.

32-bit:
efi32.filename = "filename"
efi32.filename = "EFI32-MACOS.ROM"
efi20-32.filename = "EFI20-32-MACOS.ROM"

64-bit:
efi64.filename = "filename"
efi64.filename = "EFI64-MACOS.ROM"
efi20-64.filename = "EFI20-64-MACOS.ROM"

You can add both and the correct one will be used based on the the guestos setting. You will need to put the full
filename for the patched files into the double quotes.
Expand All @@ -58,7 +62,7 @@ Per VM:
Open the vmx file for the guest and add the relevant lines from above.

Per User:
Add the 2 lines to the user defaults file which can be found in the following paths.
Add the 4 lines to the user defaults file which can be found in the following paths.
Windows: %APPDATA%\VMware\config.ini
Linux: ~/.vmware/config
macOS: ~/Library/Preferences/VMware Fusion/config
Expand All @@ -78,5 +82,5 @@ https://github.com/LongSoft/UEFITool
History
-------
22/10/18 1.0.0 - First release

24/06/09 1.1.0 - Workstation 17/Fusion 13 support
(c) 2018 Dave Parsons