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.fileset.zip
    • "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.
    • Additionally the script below was added to set the notification icon to be a FileWave icon. You'll see in our example Fileset that it has this as an Activation Script.

      #!/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
      
  3. Dowload Profile - swiftDialog - Enable Notifications.fileset.zip if you want to ensure swiftDialog notifications will be seen.
  4. Assign both swiftDialog and the swiftDialog Enable Notifications Filesets to your target macOS devices.

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.