-
Notifications
You must be signed in to change notification settings - Fork 24
Defining Packages Scripts and Installomator Labels
BigMac Admin edited this page Jun 19, 2024
·
5 revisions
Baseline performs actions based on a configuration profile delivered via MDM or manually installed. The top level keys in the profile are arrays with dictionaries defined beneath them.
InitialScripts
Installomator
Packages
Scripts
By default, Baseline runs Installomator labels with the following arguments in order to ensure users are not prompted to quit applications:
BLOCKING_PROCESS_ACTION=kill
NOTIFY=silent
See the Defining Additional Features page if you do not want these Installomator options to be used.
Required arguments for an Installomator label:
-
<DisplayName>
: The human facing name of this item. -
<Label>
: The Installomator label
Optional arguments for an Installomator label:
-
<Arguments>
: Additional options/arguments passed to Installomator for this label. These can be simple, or a completevaluesfromarguments
custom label. -
<Icon>
: Define an icon which will appear on this row of the SwiftDialog list view. See SwiftDialog documentation for more details. -
<Subtitle>
: Define a sub-title to be added to the row under the DisplayName of the SwiftDialog List View. SwiftDialog documentation
Example Installomator configurations:
<key>Installomator</key>
<array>
<dict>
<key>DisplayName</key>
<string>Google Chrome</string>
<key>Label</key>
<string>googlechromepkg</string>
</dict>
<dict>
<key>DisplayName</key>
<string>Desktoppr</string>
<key>Label</key>
<string>valuesfromarguments</string>
<key>Arguments</key>
<string>"name=desktoppr" "type=pkg" "downloadURL=https://github.com/scriptingosx/desktoppr/releases/download/v0.3/desktoppr-0.3.pkg" "expectedTeamID=JME5BW3F3R"</string>
<key>Icon</key>
<string>SF=desktopcomputer</string>
<key>Subtitle</key>
<string>A utility for setting the desktop wallpaper.</string>
</dict>
</array>
Required arguments for Packages:
-
<DisplayName>
: The human facing name of this item -
<PackagePath>
: The path to the package to be installed. The path can be defined in three ways- The filename of a package you have placed in the
/usr/local/Baseline/Packages
directory. This is useful if you package Baseline yourself and include additional packages. - A local file path. Example:
/Library/Application Support/ManagementDirectory/CompanyLogos.pkg
- A remote URL hosting a package to be installed:
https://github.com/SecondSonConsulting/Renew/releases/download/v1.0.1/Renew_v1.0.1.pkg
- The filename of a package you have placed in the
Optional arguments for Packages:
-
<TeamID>
: Use this to define the expected TeamID of a signed package in order to verify the authenticity. -
<MD5>
: Use this to define the expected md5 hash to ensure the integrity of your package. -
<Arguments>
: In the rare cases a .pkg has additional arguments you wish to pass through theinstaller
command, you can do so using this key. -
<Icon>
: Define an icon which will appear on this row of the SwiftDialog list view. See SwiftDialog documentation for more details. -
<Subtitle>
: Define a sub-title to be added to the row under the DisplayName of the SwiftDialog List View. SwiftDialog documentation
Required arguments for Scripts:
-
<DisplayName>
: The human facing name of this item -
<ScriptPath>
: The path to the script to be installed. The path can be defined in three ways- The filename of a script you have placed in the
/usr/local/Baseline/Scripts
directory. This is useful if you package Baseline yourself and include additional scripts. - A local file path. Example:
/Library/Application Support/ManagementDirectory/UserSetup.sh
- A remote URL hosting a script to be run:
https://github.com/SecondSonConsulting/macOS-Scripts/blob/main/sophosInstall.sh
- The filename of a script you have placed in the
Optional arguments for Scripts:
-
<MD5>
: Use this to define the expected md5 hash to ensure the integrity of your script. -
<Arguments>
: Use this to define additional arguments you wish to pass to your script. -
<Icon>
: Define an icon which will appear on this row of the SwiftDialog list view. See SwiftDialog documentation for more details. -
<Subtitle>
: Define a sub-title to be added to the row under the DisplayName of the SwiftDialog List View. SwiftDialog documentation
<key>Scripts</key>
<array>
<dict>
<key>DisplayName</key>
<string>Example Script</string>
<key>ScriptPath</key>
<string>https://github.com/SecondSonExampleScript.sh</string>
<key>Arguments</key>
<string>--group "Standard Workstations"</string>
<key>MD5</key>
<string>e567252z26d6032dd232df75fd3ba500</string>
</dict>
</array>
- InitialScripts are processed by the same function as
Scripts
and thus have the same requirements and features. - InitialScripts are run immediately upon a confirmed end user login, and prior to the main Dialog list.
- There is no SwiftDialog window open while Initial Scripts are being processed. This means admins are welcome to create their own custom SwiftDialog experience with branding and messaging as you see fit.
- It is recommended that Initial Scripts call a dialog window with the
--blurscreen
and--ontop
options to match the defaults used in the main Baseline script.
- Mosyle
- JumpCloud
- Addigy
- SimpleMDM
- FileWave
- Workspace ONE
- Jamf Pro
- Microsoft Intune
- Kandji (Need contributions!)
- Hexnode (Need contributions!)
- Jamf School (Need contributions!)