Skip to main content

swiftDialog Deployment (macOS PKG)

What

This article provides instructions on how to deploy swiftDialog using FileWave. swiftDialog is a simple utility for macOS that allows shell scripts to display GUI dialogs.

When/Why

swiftDialog is beneficial when you want to provide interactive user feedback or collect user input during a shell script's execution. By deploying swiftDialog via FileWave, administrators can efficiently distribute this utility across all managed macOS devices.

How

Deploying swiftDialog to your Macs using FileWave

  1. Download the swiftDialog PKG from: Releases ยท bartreardon/swiftDialog (github.com)
  2. Create a new PKG fileset in FileWave and import the swiftDialog PKG. See the example: PKG - swiftDialog-2.2.1-4591.fileset.zip but all that was done was "New Desktop Fileset" was picked and then PKG and then the PKG select. On Properties for the Fileset I made it work on macOS 11.x and higher.  Newer versions of swiftDialog may require macOS 12.x or higher so consider that. 
  3. Assign this fileset to your target macOS devices.

The above steps provide a basic overview of the process. The specifics may vary depending on your network setup and configuration, FileWave version, and the specific needs of your organization.

You'll see in our example Fileset that it has an Activation Script. The purpose of this script is to give a FileWave logo to swiftDialog for notifications.

#!/bin/zsh

if [ -f "/usr/local/sbin/FileWave.app/Contents/Resources/fwGUI.app/Contents/Resources/kiosk.icns" ]
then
    sips -s format png /usr/local/sbin/FileWave.app/Contents/Resources/fwGUI.app/Contents/Resources/kiosk.icns --out /Library/Application\ Support/Dialog/Dialog.png
else
    echo "File not found: /usr/local/sbin/FileWave.app/Contents/Resources/fwGUI.app/Contents/Resources/kiosk.icns"
fi

exit 0

Digging Deeper

swiftDialog brings the power of GUI to your shell scripts, making them more user-friendly. However, its use requires understanding of shell scripting and macOS system administration.