# swiftDialog  Deployment (macOS PKG)

## Description

This article provides instructions on how to deploy [swiftDialog](https://github.com/bartreardon/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

- FW Admin
- swiftDialog PKG - [Releases · bartreardon/swiftDialog (github.com)](https://github.com/bartreardon/swiftDialog/releases)
- Example PKG Fileset - [PKG - swiftDialog.fileset.zip](https://kb.filewave.com/attachments/201)
- Profile Fileset to enable notifications for swiftDialog - [Profile - swiftDialog - Enable Notifications.fileset.zip](https://kb.filewave.com/attachments/211)

## Directions

<div aria-label="Page Section Options" class="pointer-container" id="bkmrk-%C2%A0" refs="pointer@pointer" tabindex="-1"><div class="pointer flex-container-row items-center justify-space-between p-s anim is-page-editable"><div class="flex-container-row items-center gap-s" refs="pointer@mode-section"><button class="text-button icon px-xs" title="Permalink mode, Press to show include tag"><svg class="svg-icon" data-icon="link" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></button><div class="input-group"> <button class="button outline icon" title="Copy Link" type="button"><svg class="svg-icon" data-icon="copy" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></button></div></div><svg class="svg-icon" data-icon="edit" role="presentation" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"></svg></div></div>### Deploying swiftDialog to your Macs using FileWave

1. Download the swiftDialog PKG from: [Releases · bartreardon/swiftDialog (github.com)](https://github.com/bartreardon/swiftDialog/releases)
2. Create a new PKG fileset in FileWave and import the swiftDialog PKG. See the example: [PKG - swiftDialog.fileset.zip](https://kb.filewave.com/attachments/201)
    - "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.  
          
        ```shell
        #!/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](https://kb.filewave.com/attachments/211) 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.

## Related Links

- [swiftDialog GitHub](https://github.com/bartreardon/swiftDialog) - swiftDialog official GitHub page
- [acodega/dialog-scripts: Scripts to use with the awesome Dialog app https://github.com/bartreardon/Dialog](https://github.com/acodega/dialog-scripts)
- [SecondSonConsulting/swiftDialogExamples (github.com)](https://github.com/SecondSonConsulting/swiftDialogExamples)
- [Installomator - The one installer script to rule them all (macOS Script)](https://kb.filewave.com/books/software-deployment-recipes-macos/page/installomator-the-one-installer-script-to-rule-them-all-macos-pkg "Installomator - The one installer script to rule them all (macOS Script)")