IMPORTANT NOTICE: Desktop Sync will no longer be supported after December 31st, 2019.
Mass deployment tools allow organizations to install, update, and uninstall software for multiple users at once. This article will provide step-by-step instructions on how to set up a mass deployment of the Desktop Sync Application for Mac (version 8.1+) using Munki. These instructions can be adapted to satisfy internal IT standards within an organization.
Requirements
- You must have a working Munki server and properly configured clients
- This will only work for deployments of version 8.1 or higher of our Desktop Sync app
Note: If you have never used Munki before, we recommend testing various types of .app and .pkg installations to familiarize yourself with the general deployment process. You can learn more on the project’s website: https://github.com/munki/munki/
Deployment Steps
1. Download Desktop Sync for Mac
Download the PKG installer.
2. Import the Installer Package into Munki
You must have the Munki Tools package installed on your machine to complete the steps in this section. The default settings gathered by the munkiimport utility will work without modification for Desktop Sync versions 8.1+.
You may customize the default settings at your discretion; however, we recommend using a consistent name when importing packages so Munki can properly identify updates to our client. If you are new to Munki, we recommend using the ‘testing’ catalog so you can test the deployment in a lab before pushing it out to all clients. For simplicity, examples in this guide will use the testing catalog.
To import the Desktop Sync Installer, run:
/path/to/munkitools/munkiimport /path/to/Egnyte_Desktop_Sync_Installer.pkg
3. Customize Desktop Sync Installation
You'll need to edit the XML configuration information for the Desktop Sync package if you want to customize default settings and properly handle installation / removal of the package. On the Munki server, look in the pkgsinfo folder and open the configuration file for the Desktop Sync package (it is a .plist file if you used the default settings when importing the installer).
4. Installation Settings — Customizing Defaults
Upon first launch, the Desktop Sync application looks for an egnyteconfig.ini file located in /Library/Preferences or /Users/username/Library/Preferences to initialize custom defaults. The following parameters can be optionally configured in the configuration file. If you do not use a parameter, the application will use the default setting from the regular installation.
Parameter | Description | Sample Value |
local_root |
Set the local path where you want the files to sync. |
~/Documents/Egnyte Company A |
domain |
Path to store Desktop Sync configuration. Default is '%localappdata%\EgnyteDesktopSync' |
C:\Users\%USERNAME%\AppData\Local\Egnyte Desktop Sync |
use_sso |
If the domain parameter is set and use_sso is set to 1, users are automatically prompted to log in with SSO to the domain. | 1 |
remote_folders |
Set the default set of folders to sync. | /Shared or /Shared/Documents/aaa_gen |
sync_type |
Set sync schedule for client. The default is realtime. |
realtime |
poll_time |
Number of seconds between polling synchronizations. Note: We recommend using the intervals shown in the GUI on http://127.0.0.1:8806/do_sync_preferences under Sync every. While other sync intervals should work without a problem, they will not display properly in the UI drop-down. |
900 |
sync_all_local_folders | Boolean value. Default is false if this field is omitted. | true or false |
sync_special_char_filename | Boolean value. Default is false if this field is omitted. | true or false |
Here's an example of the contents of the egnyteconfig.ini file to be placed at /Library/Preferences/egnyteconfig.ini or /Users/username/Library/Preferences/egnyteconfig.ini prior to Desktop Sync for Mac running for the first time:
[config.db]
local_root=~/Documents/Egnyte
domain=acmeinc
user_sso=1
remote_folders=/Shared,/Private
sync_type=realtime
sync_all_local_folders=true
sync_special_char_filename=true
Here's an example of a shell script to use as part of the Munki configuration to generate the egnyteconfig.ini file (notice the shell script that writes to the egnyteconfig.ini file):
<key>preinstall_script</key>
<string>#!/bin/sh
echo "[config.db]" > /Library/Preferences/egnyteconfig.ini
echo "local_root=~/Documents/Egnyte " >> /Library/Preferences/egnyteconfig.ini
echo "domain=acmeinc" >> /Library/Preferences/egnyteconfig.ini
echo "remote_folders=/Shared,/Private" >> /Library/Preferences/egnyteconfig.ini
echo "sync_type=realtime" >> /Library/Preferences/egnyteconfig.ini
echo "sync_all_local_folders=true" >> /Library/Preferences/egnyteconfig.ini
echo "sync_special_char_filename=true" >> /Library/Preferences/egnyteconfig.ini
</string>
Remember, if you want to test this now, make sure to save your changes and rebuild your catalogs using the makecatalogs utility.
Upgrade to a New Version
As usual with Munki, you should import the new version of the Desktop Sync installer. The import utility should recognize the package and use the old installer as a template. If this is not working, make sure you are using the same name for the package as used before and ensure that the version numbers from the previous and updated installers are correct.
<key>uninstall_method</key>
<string>uninstall_script</string>
<key>uninstall_script</key>
<string>#!/bin/sh
rm /Library/Preferences/egnyteconfig.ini
cp /Applications/Egnyte\ Desktop\ Sync.app/Contents/Resources/uninstall_elc.sh ~
chmod +x ~/uninstall_elc.sh<
sh ~/uninstall_elc.sh
rm ~/uninstall_elc.sh
</string>
Set up Unattended Installation, Upgrades, and Uninstallation
Make sure your pkgsinfo file for Desktop Sync include the following keys and settings.
<key>unattended_install</key>
<true/>
<key>unattended_uninstall</key>
<true/>
<key>uninstallable</key>
<true/>
Additional Tips
Disable Upgrade Notification
Administrators may choose to disable update notifications so users won’t be notified when newer versions of the Desktop Sync software have been provided.
- Click on the Menu icon (3 lines) and select Settings.
- From the Configuration tab, click on Applications.
- In the Desktop section, change the slider to Disabled for Notify users of Desktop Sync software updates.
- Click Save.
End-User Configuration
Once installed, the end-user will need to launch the Egnyte Desktop Sync App from the Applications folder to run it for the first time. They will be prompted to enter their username and password at this step.