Skip to main content

swiftDialog Deployment (macOS PKG)

Description

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. 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.

Ingredients

Directions

 

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 a Preflight Script. When the icon is in place before the PKG it allows the custom icon to be used.

      #!/bin/zsh
      
      if [ -f "/usr/local/sbin/FileWave.app/Contents/Resources/fwGUI.app/Contents/Resources/kiosk.icns" ]
      then
          mkdir -p "/Library/Application Support/Dialog/"
          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.