Update for macOS Tahoe
The regex statements need to be updated for the upcoming macOS Tahoe.
This may contain some false positives for models that never existed, such as Mac14,1 - shouldn't be a problem:
"^(MacPro7,1|iMac2(0|[1-3]),[0-9]|Macmini9,1|MacBookAir1[0-9],[0-9]|MacBookPro1[6-8],[0-9]|Mac1[4-6],1[0-9]|Mac1[4-6],[1-9]|Mac13,[1-2])$"
List of supported models, as best I can tell:
MacPro7,1 Mac14,8 iMac20,1 iMac20,2 iMac21,2 iMac21,1 Mac15,4 Mac15,5 Mac16,2 Mac16,3 Macmini9,1 Mac14,3 Mac14,12 Mac16,10 Mac16,11 MacBookAir10,1 MacBookAir10,2 MacBookAir18,2 Mac14,2 Mac14,15 Mac15,12 Mac15,13 Mac16,12 MacBookPro16,2 MacBookPro16,4 MacBookPro17,1 MacBookPro18,3 MacBookPro18,4 MacBookPro18,1 MacBookPro18,2 Mac14,7 Mac14,9 Mac14,5 Mac14,10 Mac14,6 Mac15,3 Mac15,6 Mac15,10 Mac15,8 Mac15,7 Mac15,11 Mac15,9 Mac16,1 Mac16,8 Mac16,6 Mac16,7 Mac16,5 Mac13,1 Mac13,2 Mac14,13 Mac14,14 Mac15,14 Mac16,9 MacBookPro15,1 # unsupported past this, for validation Macmini8,1 MacBookAir9,1 Macmini15,1 Mac14,1 # doesn't exist, false positive