Description
Apple automatically instals the latest installer application on devices, allowing users to upgrade to the next major release of macOS. The following provides a method to prevent users from running the application, ensuring administrators have the required time to prepare the business.
Info |
---|
The provided Fileset includes an unaltered version of the Open Source Software Pashua, which is licensed under the 3-Clause BSD License. |
Information
The attached Fileset prompts users with a message, including alternate languages. There is also allowance for control over which versions of macOS Installers are blocked. The only requirement is the following recipe:
Optionally the following Custom Field may be used to monitor the quantity of times users attempt to upgrade devices:
Note |
---|
The above instals a service using launchd. Disassociation of the Fileset will unload this service as well as remove all files. |
Directions
The Fileset is currently configured to block the 'Install macOS Big Sur.app' and future versions of macOS Installer App; it would actually also stop the Beta. Version control is managed by a plist file:
Code Block |
---|
com.filewave.blockmacosinstaller_user.plist |
Contents of the file:
Code Block |
---|
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>MinimumBlockedVersion</key> <integer>16</integer> </dict> </plist> |
Version of App to Block
Edit the file as required for the following:
- Key - MinimumBlockedVersion
- Value - Integer
Set to 16, which will block macOS Big Sur. This could be lowered to block earlier (or later versions when Apple release their next major release)
Example alternatives:
- 15 - Block Catalina and above
- 14 - Block Mojave and above
Message Localisation
When the installed service blocks the App, a message is reported to the user. Examples have been provided for English and German.
The language is determined by the first two characters from the following command:
Code Block |
---|
$ defaults read -g AppleLanguages | awk -F "\"" '/\"/ {print $2; exit}' en-GB |
As such en-GB, en-US, en-AU, etc will all result in an English version.
Language template files are stored in the path:
Code Block |
---|
/usr/local/etc/block_macos_updates/ |
English and German respectively:
- warning_en.txt
- warning_de.txt
Copy and edit the files appropriately for additional languages.
Example to add French
User has French language set:
Code Block |
---|
$ defaults read -g AppleLanguages | awk -F "\"" '/\"/ {print $2; exit}' fr-FR |
Based upon this, create a copy warning file (note the suffix '_fr'):
- warning_fr.txt
Edit '*.title' and default message 'txt1.default' appropriately:
Code Block |
---|
# Set window title *.title = Installation bloquée # Introductory text txt.type = text txt.default = macOS Installer Application txt.height = 100 txt.width = 310 txt.x = 100 txt.y = 120 txt1.type = text txt1.default = Cette version de macOS n'est pas prête pour l'environnement de production. Veuillez contacter le service informatique si nécessaire. txt1.height = 100 txt1.width = 310 txt1.x = 100 txt1.y = 50 img.type = image img.x = 20 img.y = 70 img.maxwidth = 64 img.path = /usr/local/etc/FileWave_Icon.png |
Note |
---|
Text content will impact the view. Consider changing height, x and y values if the view does not appear as intended. |
Tip |
---|
Upload and replace the 'img.path' as your own company logo for customisation. |