Skip to content

Instantly share code, notes, and snippets.

@talkingmoose
Last active November 10, 2025 14:37
Show Gist options
  • Select an option

  • Save talkingmoose/3340d122ffd6b4fccb5f1319b7067f73 to your computer and use it in GitHub Desktop.

Select an option

Save talkingmoose/3340d122ffd6b4fccb5f1319b7067f73 to your computer and use it in GitHub Desktop.

Revisions

  1. talkingmoose revised this gist Nov 10, 2025. 1 changed file with 4 additions and 4 deletions.
    8 changes: 4 additions & 4 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -1,16 +1,16 @@
    https://support.apple.com/en-us/122867
    Published Date: September 15, 2025
    Updated: September 24, 2025
    Updated: November 10, 2025

    Verification: https://regex101.com/r/YXAchM/5
    Verification: https://regex101.com/r/YXAchM/6

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    ^Mac((BookPro1(6,[1-4]|[78],\d)|(1[3-6]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$
    ^Mac((BookPro1(6,[124]|[78],\d)|(1[3-6]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$

    2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).

    ^Mac((BookPro1(6,[1-4]|[7-9],\d)|(1[3-9]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$
    ^Mac((BookPro1(6,[124]|[7-9],\d)|(1[3-9]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$

    Current or higher regexes aren't available for some models where Apple has used the same model identifier schema for multiple models.

  2. talkingmoose revised this gist Sep 25, 2025. 1 changed file with 4 additions and 4 deletions.
    8 changes: 4 additions & 4 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,8 @@
    https://support.apple.com/en-us/122867
    Published Date: September 15, 2025
    Updated: September 23, 2025
    Updated: September 24, 2025

    Verification: https://regex101.com/r/YXAchM/4
    Verification: https://regex101.com/r/YXAchM/5

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    @@ -19,7 +19,7 @@ Either regex will match any of the supported following model identifiers:
    MacBook Pro
    https://support.apple.com/en-us/108052

    Exact regex: ^Mac((BookPro1(6,[1-4]|[7-9],\d))|1(4,([5679]|10)|5,([36-9]|1[01])|6,[15-8]))$
    Exact regex: ^Mac((BookPro1(6,[124]|[7-9],\d))|1(4,([5679]|10)|5,([36-9]|1[01])|6,[15-8]))$
    Current or higher regex: Not available

    Supported:
    @@ -46,11 +46,11 @@ MacBookPro18,2
    MacBookPro18,1
    MacBookPro17,1
    MacBookPro16,4
    MacBookPro16,3
    MacBookPro16,2
    MacBookPro16,1

    Unsupported:
    MacBookPro16,3
    MacBookPro15,4
    MacBookPro15,3
    MacBookPro15,2
  3. talkingmoose revised this gist Sep 23, 2025. 1 changed file with 13 additions and 14 deletions.
    27 changes: 13 additions & 14 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -1,25 +1,25 @@
    https://www.apple.com/os/macos/
    Published Date: June 9, 2025
    Updated: June 24, 2025
    https://support.apple.com/en-us/122867
    Published Date: September 15, 2025
    Updated: September 23, 2025

    Verification: https://regex101.com/r/YXAchM/3
    Verification: https://regex101.com/r/YXAchM/4

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    ^Mac((BookPro1(6,[124]|[78],\d)|(1[3-6]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$
    ^Mac((BookPro1(6,[1-4]|[78],\d)|(1[3-6]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$

    2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).

    ^Mac((BookPro1(6,[124]|[7-9],\d)|(1[3-9]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$
    ^Mac((BookPro1(6,[1-4]|[7-9],\d)|(1[3-9]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$

    Current or higher regexes aren't available for some models where Apple has used the same model identifier schema for multiple models.

    Either regex will match any of the supported following model identifiers:

    MacBook Pro
    https://support.apple.com/en-us/HT201300
    https://support.apple.com/en-us/108052

    Exact regex: ^Mac((BookPro1(6,[124]|[7-9],\d))|1(4,([5679]|10)|5,([36-9]|1[01])|6,[15-8]))$
    Exact regex: ^Mac((BookPro1(6,[1-4]|[7-9],\d))|1(4,([5679]|10)|5,([36-9]|1[01])|6,[15-8]))$
    Current or higher regex: Not available

    Supported:
    @@ -92,7 +92,7 @@ MacBookPro1,1
    ---------------------------------------------------

    MacBook Air
    https://support.apple.com/en-us/HT201862
    https://support.apple.com/en-us/102869

    Exact regex: ^Mac(1([56],1[23]|4,(2|15))|BookAir10,1)$
    Current or higher regex: Not available
    @@ -159,7 +159,7 @@ iMacPro1,1
    ---------------------------------------------------

    iMac
    https://support.apple.com/en-us/HT201634
    https://support.apple.com/en-us/108054

    Exact regex: ^Mac1((6,[23]|5,[45]))|iMac(2[01]),[12]$
    Current or higher regex: Not available
    @@ -209,13 +209,12 @@ iMac,1
    ---------------------------------------------------

    Mac mini
    https://support.apple.com/en-us/HT201894
    https://support.apple.com/en-us/102852

    Exact regex: ^Mac(1((6,1[015])|(4,(3|12)))|mini9,1)$
    Current or higher regex: Not available

    Supported:
    Mac16,15
    Mac16,11
    Mac16,10
    Mac14,3
    @@ -238,7 +237,7 @@ Macmini1,1
    ---------------------------------------------------

    Mac Studio
    https://support.apple.com/en-us/HT213073
    https://support.apple.com/en-us/102231

    Exact regex: ^Mac1((3,[12])|(4,1(3|4))|5,14|6,9)$
    Current or higher regex: Not available
    @@ -254,7 +253,7 @@ Mac13,1
    ---------------------------------------------------

    Mac Pro
    https://support.apple.com/en-us/HT202888
    https://support.apple.com/en-us/102887

    Exact regex: ^Mac(Pro7,\d|14,8)$
    Current or higher regex: Not available
  4. talkingmoose revised this gist Jun 24, 2025. 1 changed file with 5 additions and 4 deletions.
    9 changes: 5 additions & 4 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -1,15 +1,16 @@
    https://www.apple.com/os/macos/
    Published Date: June 9, 2025
    Updated: June 24, 2025

    Verification: https://regex101.com/r/ouFDlr/4
    Verification: https://regex101.com/r/YXAchM/3

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    ^(Mac(1[3-6]|BookPro1[6-8]|BookAir10|mini9|Pro7)|iMac2[01]),\d+$
    ^Mac((BookPro1(6,[124]|[78],\d)|(1[3-6]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$

    2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).

    ^(Mac(1[3-9]|BookPro1[6-8]|BookAir10|mini9|Pro7)|iMac2[01]),\d+$
    ^Mac((BookPro1(6,[124]|[7-9],\d)|(1[3-9]|BookAir10|mini9|Pro7),\d+))|iMac2[01],\d+$

    Current or higher regexes aren't available for some models where Apple has used the same model identifier schema for multiple models.

    @@ -18,7 +19,7 @@ Either regex will match any of the supported following model identifiers:
    MacBook Pro
    https://support.apple.com/en-us/HT201300

    Exact regex: ^Mac((16,[156-8]$|15,([36-9]|1[01])|14,([5679]|10))|BookPro1[6-8],\d)$
    Exact regex: ^Mac((BookPro1(6,[124]|[7-9],\d))|1(4,([5679]|10)|5,([36-9]|1[01])|6,[15-8]))$
    Current or higher regex: Not available

    Supported:
  5. talkingmoose revised this gist Jun 9, 2025. 1 changed file with 5 additions and 5 deletions.
    10 changes: 5 additions & 5 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -1,15 +1,15 @@
    https://www.apple.com/os/macos/
    Published Date: June 9, 2025

    Verification: https://regex101.com/r/ouFDlr/3
    Verification: https://regex101.com/r/ouFDlr/4

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    ^(Mac(1[3-6]|BookPro1[6-8]|mini9|Pro7)|iMac2[01]),\d+$
    ^(Mac(1[3-6]|BookPro1[6-8]|BookAir10|mini9|Pro7)|iMac2[01]),\d+$

    2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).

    ^(Mac(1[3-9]|BookPro1[6-8]|mini9|Pro7)|iMac2[01]),\d+$
    ^(Mac(1[3-9]|BookPro1[6-8]|BookAir10|mini9|Pro7)|iMac2[01]),\d+$

    Current or higher regexes aren't available for some models where Apple has used the same model identifier schema for multiple models.

    @@ -93,7 +93,7 @@ MacBookPro1,1
    MacBook Air
    https://support.apple.com/en-us/HT201862

    Exact regex: ^Mac1([56],1[23]|4,(2|15))
    Exact regex: ^Mac(1([56],1[23]|4,(2|15))|BookAir10,1)$
    Current or higher regex: Not available

    Supported:
    @@ -103,9 +103,9 @@ Mac15,13
    Mac15,12
    Mac14,15
    Mac14,2
    MacBookAir10,1

    Unsupported:
    MacBookAir10,1
    MacBookAir9,1
    MacBookAir8,2
    MacBookAir8,1
  6. talkingmoose revised this gist Jun 9, 2025. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -1,11 +1,11 @@
    https://www.apple.com/os/macos/
    Published Date: June 9, 2025

    Verification: https://regex101.com/r/ouFDlr/2
    Verification: https://regex101.com/r/ouFDlr/3

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    ^(Mac(1[3-6]|BookPro1[6-8]|Pro7|mini9)|iMac2[01]),\d+$
    ^(Mac(1[3-6]|BookPro1[6-8]|mini9|Pro7)|iMac2[01]),\d+$

    2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).

  7. talkingmoose created this gist Jun 9, 2025.
    271 changes: 271 additions & 0 deletions Tahoe-compatible Macs (regex)
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,271 @@
    https://www.apple.com/os/macos/
    Published Date: June 9, 2025

    Verification: https://regex101.com/r/ouFDlr/2

    1) Exact regex — Matches major model identifier numbers based on Apple's knowledge base article (more accurate):

    ^(Mac(1[3-6]|BookPro1[6-8]|Pro7|mini9)|iMac2[01]),\d+$

    2) Current or higher regex — Matches model identifiers based on Apple's knowledge base article and may match higher versions before this regex is updated (more future-proof).

    ^(Mac(1[3-9]|BookPro1[6-8]|mini9|Pro7)|iMac2[01]),\d+$

    Current or higher regexes aren't available for some models where Apple has used the same model identifier schema for multiple models.

    Either regex will match any of the supported following model identifiers:

    MacBook Pro
    https://support.apple.com/en-us/HT201300

    Exact regex: ^Mac((16,[156-8]$|15,([36-9]|1[01])|14,([5679]|10))|BookPro1[6-8],\d)$
    Current or higher regex: Not available

    Supported:
    Mac16,8
    Mac16,7
    Mac16,6
    Mac16,5
    Mac16,1
    Mac15,11
    Mac15,10
    Mac15,9
    Mac15,8
    Mac15,7
    Mac15,6
    Mac15,3
    Mac14,10
    Mac14,9
    Mac14,7
    Mac14,6
    Mac14,5
    MacBookPro18,4
    MacBookPro18,3
    MacBookPro18,2
    MacBookPro18,1
    MacBookPro17,1
    MacBookPro16,4
    MacBookPro16,3
    MacBookPro16,2
    MacBookPro16,1

    Unsupported:
    MacBookPro15,4
    MacBookPro15,3
    MacBookPro15,2
    MacBookPro15,1
    MacBookPro14,3
    MacBookPro14,2
    MacBookPro14,1
    MacBookPro13,3
    MacBookPro13,2
    MacBookPro13,1
    MacBookPro12,1
    MacBookPro11,5
    MacBookPro11,4
    MacBookPro11,3
    MacBookPro11,2
    MacBookPro11,1
    MacBookPro10,2
    MacBookPro10,1
    MacBookPro9,2
    MacBookPro9,1
    MacBookPro8,3
    MacBookPro8,2
    MacBookPro8,1
    MacBookPro7,1
    MacBookPro6,2
    MacBookPro6,1
    MacBookPro5,5
    MacBookPro5,4
    MacBookPro5,3
    MacBookPro5,2
    MacBookPro5,1
    MacBookPro4,1
    MacBookPro3,1
    MacBookPro2,2
    MacBookPro2,1
    MacBookPro1,2
    MacBookPro1,1

    ---------------------------------------------------

    MacBook Air
    https://support.apple.com/en-us/HT201862

    Exact regex: ^Mac1([56],1[23]|4,(2|15))
    Current or higher regex: Not available

    Supported:
    Mac16,13
    Mac16,12
    Mac15,13
    Mac15,12
    Mac14,15
    Mac14,2

    Unsupported:
    MacBookAir10,1
    MacBookAir9,1
    MacBookAir8,2
    MacBookAir8,1
    MacBookAir7,2
    MacBookAir7,2
    MacBookAir7,1
    MacBookAir6,2
    MacBookAir6,1
    MacBookAir5,2
    MacBookAir5,1
    MacBookAir4,2
    MacBookAir4,1
    MacBookAir3,2
    MacBookAir3,1
    MacBookAir2,1
    MacBookAir1,1

    ---------------------------------------------------

    MacBook
    https://support.apple.com/en-us/103257

    Supported:
    None.

    Unsupported:
    MacBook10,1
    MacBook9,1
    MacBook8,1
    MacBook7,1
    MacBook6,1
    MacBook5,2
    MacBook5,1
    MacBook4,1
    MacBook3,1
    MacBook2,1
    MacBook1,1

    ---------------------------------------------------

    iMac Pro
    https://support.apple.com/en-us/HT210222

    Supported
    None.

    Unsupported::
    iMacPro1,1

    ---------------------------------------------------

    iMac
    https://support.apple.com/en-us/HT201634

    Exact regex: ^Mac1((6,[23]|5,[45]))|iMac(2[01]),[12]$
    Current or higher regex: Not available

    Supported:
    Mac16,3
    Mac16,2
    Mac15,5
    Mac15,4
    iMac21,2
    iMac21,1
    iMac20,2
    iMac20,1

    Unsupported:
    iMac19,2
    iMac19,1
    iMac18,3
    iMac18,2
    iMac18,1
    iMac17,1
    iMac16,2
    iMac16,1
    iMac15,1
    iMac14,4
    iMac14,3
    iMac14,2
    iMac14,1
    iMac13,2
    iMac13,1
    iMac12,2
    iMac12,1
    iMac11,3
    iMac11,2
    iMac11,1
    iMac10,1
    iMac9,1
    iMac8,1
    iMac7,1
    iMac6,1
    iMac5,2
    iMac5,1
    iMac4,2
    iMac4,1
    iMac,1

    ---------------------------------------------------

    Mac mini
    https://support.apple.com/en-us/HT201894

    Exact regex: ^Mac(1((6,1[015])|(4,(3|12)))|mini9,1)$
    Current or higher regex: Not available

    Supported:
    Mac16,15
    Mac16,11
    Mac16,10
    Mac14,3
    Mac14,12
    Macmini9,1

    Unsupported:
    Macmini8,1
    Macmini7,1
    Macmini6,2
    Macmini6,1
    Macmini5,3
    Macmini5,2
    Macmini5,1
    Macmini4,1
    Macmini3,1
    Macmini2,1
    Macmini1,1

    ---------------------------------------------------

    Mac Studio
    https://support.apple.com/en-us/HT213073

    Exact regex: ^Mac1((3,[12])|(4,1(3|4))|5,14|6,9)$
    Current or higher regex: Not available

    Supported:
    Mac16,9
    Mac15,14
    Mac14,14
    Mac14,13
    Mac13,2
    Mac13,1

    ---------------------------------------------------

    Mac Pro
    https://support.apple.com/en-us/HT202888

    Exact regex: ^Mac(Pro7,\d|14,8)$
    Current or higher regex: Not available

    Supported:
    Mac14,8
    MacPro7,1

    Unsupported:
    MacPro6,1
    MacPro5,1
    MacPro4,1
    MacPro3,1
    MacPro2,1
    MacPro1,1