Support macOS Big Sur

This commit is contained in:
Bat.bat 2020-07-06 14:04:45 +08:00
parent 1ddda098e7
commit 9f01ee0d73

View file

@ -92,7 +92,8 @@ else
exit 0 exit 0
fi fi
if [[ "${systemVersion}" -ge "15" ]]; then # Starting from macOS Big Sur (16), this method no longer works
if [[ "${systemVersion}" == "15" ]]; then
sudo mount -uw / && killall Finder sudo mount -uw / && killall Finder
fi fi
@ -184,26 +185,41 @@ EEF
get_edid get_edid
thisDir=$(dirname $0) thisDir=$(dirname $0)
thatDir="/System/Library/Displays/Contents/Resources/Overrides" libDisplaysDir="/Library/Displays"
Overrides="\/System\/Library\/Displays\/Contents\/Resources\/Overrides" thatDir="${libDisplaysDir}/Contents/Resources/Overrides"
thatSysDir="/System${thatDir}"
Overrides="\/Library\/Displays\/Contents\/Resources\/Overrides"
sysOverrides="\/System${Overrides}"
if [[ "${systemVersion}" -le "15" ]]; then
thatDir=${thatSysDir}
Overrides=${sysOverrides}
fi
DICON="com\.apple\.cinema-display" DICON="com\.apple\.cinema-display"
imacicon=${Overrides}"\/DisplayVendorID\-610\/DisplayProductID\-a032\.tiff" imacicon=${sysOverrides}"\/DisplayVendorID\-610\/DisplayProductID\-a032\.tiff"
mbpicon=${Overrides}"\/DisplayVendorID\-610\/DisplayProductID\-a030\-e1e1df\.tiff" mbpicon=${sysOverrides}"\/DisplayVendorID\-610\/DisplayProductID\-a030\-e1e1df\.tiff"
mbicon=${Overrides}"\/DisplayVendorID\-610\/DisplayProductID\-a028\-9d9da0\.tiff" mbicon=${sysOverrides}"\/DisplayVendorID\-610\/DisplayProductID\-a028\-9d9da0\.tiff"
lgicon=${Overrides}"\/DisplayVendorID\-1e6d\/DisplayProductID\-5b11\.tiff" lgicon=${sysOverrides}"\/DisplayVendorID\-1e6d\/DisplayProductID\-5b11\.tiff"
proxdricon=${Overrides}"\/DisplayVendorID\-610\/DisplayProductID\-ae2f\_Landscape\.tiff" proxdricon=${Overrides}"\/DisplayVendorID\-610\/DisplayProductID\-ae2f\_Landscape\.tiff"
if [[ ! -d ${thatDir} && "${systemVersion}" -ge "16" ]]; then
sudo mkdir -p ${thatDir}
fi
# In Big Sur+ files are created in a seperate dir, not necessary to backup
if [[ "${systemVersion}" -le "15" ]]; then
if [[ ! -d ${thatDir}/HIDPI/backup ]]; then if [[ ! -d ${thatDir}/HIDPI/backup ]]; then
echo "${langBackingUp}" echo "${langBackingUp}"
sudo mkdir -p ${thatDir}/HIDPI/backup sudo mkdir -p ${thatDir}/HIDPI/backup
sudo cp ${thatDir}/Icons.plist ${thatDir}/HIDPI/backup/ sudo cp ${thatSysDir}/Icons.plist ${thatDir}/HIDPI/backup/
if [[ -d ${thatDir}/DisplayVendorID-${Vid} ]]; then
sudo cp -r ${thatDir}/DisplayVendorID-${Vid} ${thatDir}/HIDPI/backup/ if [[ -d ${thatSysDir}/DisplayVendorID-${Vid} ]]; then
sudo cp -r ${thatSysDir}/DisplayVendorID-${Vid} ${thatDir}/HIDPI/backup/
fi fi
fi fi
generate_restore_cmd generate_restore_cmd
fi
} }
# #
@ -312,7 +328,7 @@ case ${logo} in
;; ;;
4) Picon=${lgicon} 4) Picon=${lgicon}
RP=("11" "47" "202" "114") RP=("11" "47" "202" "114")
cp ${thatDir}/DisplayVendorID-1e6d/DisplayProductID-5b11.icns ${thisDir}/tmp/DisplayVendorID-${Vid}/DisplayProductID-${Pid}.icns cp ${thatSysDir}/DisplayVendorID-1e6d/DisplayProductID-5b11.icns ${thisDir}/tmp/DisplayVendorID-${Vid}/DisplayProductID-${Pid}.icns
;; ;;
5) Picon=${proxdricon} 5) Picon=${proxdricon}
RP=("5" "45" "216" "121") RP=("5" "45" "216" "121")
@ -549,6 +565,9 @@ function enable_hidpi_with_patch()
# disable # disable
function disable() function disable()
{ {
if [[ -d ${thatDir} && "${systemVersion}" -ge "16" ]]; then
sudo rm -rf ${libDisplaysDir}
else
if [[ -d ${thatDir}/DisplayVendorID-${Vid} ]]; then if [[ -d ${thatDir}/DisplayVendorID-${Vid} ]]; then
sudo rm -rf ${thatDir}/DisplayVendorID-${Vid} sudo rm -rf ${thatDir}/DisplayVendorID-${Vid}
fi fi
@ -556,6 +575,8 @@ function disable()
sudo rm -rf ${thatDir}/Icons.plist sudo rm -rf ${thatDir}/Icons.plist
sudo cp -r ${thatDir}/HIDPI/backup/* ${thatDir}/ sudo cp -r ${thatDir}/HIDPI/backup/* ${thatDir}/
sudo rm -rf ${thatDir}/HIDPI/disable sudo rm -rf ${thatDir}/HIDPI/disable
fi
echo "${langDisabled}" echo "${langDisabled}"
} }