As part of preparing for macOS Ventura, it may be useful to have a way to easily distinguish between the Macs in your fleet which can run macOS Ventura and those which can’t. Apple has published the following list of Macs which are compatible with Ventura, which will help with both identitying the compatible Mac models as well as the incompatible Mac models.
- iMac: 2017 and later models
- iMac Pro: All models
- MacBook: 2017 and later models
- MacBook Pro: 2017 and later models
- MacBook Air: 2018 and later models
- Mac Mini: 2018 or later models
- Mac Pro: 2019 or later models
- Mac Studio: All models
From there, here’s the list of Mac models which are compatible with macOS Ventura:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Mac13,1 | |
Mac13,2 | |
Mac14,2 | |
Mac14,7 | |
MacBook10,1 | |
MacBookAir10,1 | |
MacBookAir8,1 | |
MacBookAir8,2 | |
MacBookAir9,1 | |
MacBookPro14,1 | |
MacBookPro14,2 | |
MacBookPro14,3 | |
MacBookPro15,1 | |
MacBookPro15,2 | |
MacBookPro15,3 | |
MacBookPro15,4 | |
MacBookPro16,1 | |
MacBookPro16,2 | |
MacBookPro16,3 | |
MacBookPro16,4 | |
MacBookPro17,1 | |
MacBookPro18,1 | |
MacBookPro18,2 | |
MacBookPro18,3 | |
MacBookPro18,4 | |
MacPro7,1 | |
Macmini8,1 | |
Macmini9,1 | |
VirtualMac2,1 | |
iMac18,1 | |
iMac18,2 | |
iMac18,3 | |
iMac19,1 | |
iMac19,2 | |
iMac20,1 | |
iMac20,2 | |
iMac21,1 | |
iMac21,2 | |
iMacPro1,1 | |
iSim1,1 |
We can use this information to build smart groups which can help identify which Macs are compatible with Ventura and which are not. For more details, see below the jump:
Using the information mentioned above, I was able to build two smart groups, one which displays compatible Macs and the other which displays incompatible Macs.
The compatible Macs’ smart group checks for if the Mac in question’s model identifier is any of the model identifiers which are compatible with Ventura:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<computer_group> | |
<name>Macs compatible with macOS Ventura</name> | |
<is_smart>true</is_smart> | |
<criteria> | |
<size>40</size> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>0</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>Mac13,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>1</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>Mac13,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>2</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>Mac14,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>3</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>Mac14,7</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>4</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBook10,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>5</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookAir10,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>6</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookAir8,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>7</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookAir8,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>8</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookAir9,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>9</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro14,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>10</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro14,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>11</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro14,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>12</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro15,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>13</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro15,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>14</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro15,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>15</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro15,4</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>16</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro16,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>17</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro16,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>18</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro16,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>19</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro16,4</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>20</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro17,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>21</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro18,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>22</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro18,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>23</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro18,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>24</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacBookPro18,4</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>25</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>MacPro7,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>26</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>Macmini8,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>27</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>Macmini9,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>28</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>VirtualMac2,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>29</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac18,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>30</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac18,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>31</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac18,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>32</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac19,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>33</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac19,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>34</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac20,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>35</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac20,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>36</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac21,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>37</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMac21,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>38</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iMacPro1,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>39</priority> | |
<and_or>or</and_or> | |
<search_type>is</search_type> | |
<value>iSim1,1</value> | |
</criterion> | |
</criteria> | |
<computers/> | |
</computer_group> |
The incompatible Macs’ smart group checks for if the Mac in question’s model identifier is not any of the model identifiers which are compatible with Ventura:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<computer_group> | |
<name>Macs incompatible with macOS Ventura</name> | |
<is_smart>true</is_smart> | |
<criteria> | |
<size>40</size> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>0</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>Mac13,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>1</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>Mac13,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>2</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>Mac14,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>3</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>Mac14,7</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>4</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBook10,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>5</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookAir10,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>6</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookAir8,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>7</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookAir8,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>8</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookAir9,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>9</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro14,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>10</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro14,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>11</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro14,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>12</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro15,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>13</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro15,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>14</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro15,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>15</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro15,4</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>16</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro16,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>17</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro16,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>18</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro16,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>19</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro16,4</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>20</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro17,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>21</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro18,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>22</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro18,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>23</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro18,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>24</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacBookPro18,4</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>25</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>MacPro7,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>26</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>Macmini8,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>27</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>Macmini9,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>28</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>VirtualMac2,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>29</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac18,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>30</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac18,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>31</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac18,3</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>32</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac19,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>33</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac19,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>34</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac20,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>35</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac20,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>36</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac21,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>37</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMac21,2</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>38</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iMacPro1,1</value> | |
</criterion> | |
<criterion> | |
<name>Model Identifier</name> | |
<priority>39</priority> | |
<and_or>and</and_or> | |
<search_type>is not</search_type> | |
<value>iSim1,1</value> | |
</criterion> | |
</criteria> | |
<computers/> | |
</computer_group> |
To upload these smart group XML files to a Jamf Pro server server using the API, download the XML file to a convenient location, then run the commands shown below (substituting your Jamf Pro server and Jamf Pro user account information as appropriate):
Note: You will first need to get an API bearer token for authentication. Use the commands below (depending on which OS you’re using) to obtain a bearer token from your JAMF Pro server:
Get API bearer token on macOS Monterey and later:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
curl -X POST -u username:password -s https://server.name.here/api/v1/auth/token | plutil -extract token raw – |
Get API bearer token on macOS Big Sur and earlier:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
curl -X POST -u username:password -s https://server.name.here/api/v1/auth/token | python -c 'import sys, json; print json.load(sys.stdin)["token"]' |
The bearer token should look something like this:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
eyJhbGciOiJIUzI1NiJ9.eyJhdXRoZW50aWNhdGVkLWFwcCI6IkdFTkVSSUMiLCJhdXRoZW50aWNhdGlvbi10eXBlIjoiSlNTIiwiZ3JvdXBzIjpbXSwic3ViamVjdC10eXBlIjoiSlNTX1VTRVJfSUQiLCJ0b2tlbi11dWlkIjoiODQwNzBjZjctOGYwNS00N2NhLTliNWItZjU3YzYwYTY2ZGIwIiwibGRhcC1zZXJ2ZXItaWQiOi0xLCJzdWIiOiIxMSIsImV4cCI6MTY2NTYwMTUzMX0.R8grAtlzG1raZw95HJqiLyxZavf03SwFqbgfb3eVSgg |
Once you have the bearer token, use the token to authenticate the API command as shown below:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
curl -sf https://jamfpro.server.here/JSSResource/computergroups/id/0 -T /path/to/filename.xml -X POST -H "Authorization: Bearer API_Bearer_Token_Goes_Here"; |
If the API bearer token is the one shown above, the API command should look something like this:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
curl -sf https://jamfpro.server.here/JSSResource/computergroups/id/0 -T /path/to/filename.xml -X POST -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdXRoZW50aWNhdGVkLWFwcCI6IkdFTkVSSUMiLCJhdXRoZW50aWNhdGlvbi10eXBlIjoiSlNTIiwiZ3JvdXBzIjpbXSwic3ViamVjdC10eXBlIjoiSlNTX1VTRVJfSUQiLCJ0b2tlbi11dWlkIjoiODQwNzBjZjctOGYwNS00N2NhLTliNWItZjU3YzYwYTY2ZGIwIiwibGRhcC1zZXJ2ZXItaWQiOi0xLCJzdWIiOiIxMSIsImV4cCI6MTY2NTYwMTUzMX0.R8grAtlzG1raZw95HJqiLyxZavf03SwFqbgfb3eVSgg"; |
If the smart group was successfully uploaded, you should next see output similar to that shown below:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?><computer_group><id>95</id></computer_group> |
The new smart group should now be present on the Jamf Pro server.