If your installer file is hosted in the cloud (e.g., Amazon S3, a vendor URL, or any HTTP/HTTPS link), you can deploy it through Smart Software by downloading it as part of your installation script — no need to upload the file directly to Addigy.
Example Installation Script
Use the script below as a starting point. Replace the URL and file name with your own, and update the installer command if your file isn't a .pkg.
# Set the URL and local download destination
FILE_TO_DOWNLOAD="https://s3.amazonaws.com/files.addigy.com/file.pkg"
DOWNLOAD_LOCAL_PATH="/tmp/file.pkg"
# Download the file using Addigy's lan-cache
/Library/Addigy/lan-cache download "${FILE_TO_DOWNLOAD}" "${DOWNLOAD_LOCAL_PATH}"
# Install the package
/usr/sbin/installer -pkg "${DOWNLOAD_LOCAL_PATH}" -target /Important Considerations
Use lan-cache for large files
Addigy's lan-cache tool (pre-installed on all managed devices) is the recommended way to download files in your installation script. Instead of every device pulling the file independently from the internet, lan-cache creates a local peer network — only one device downloads the file externally, and the rest pull it from that peer. Files are also cached locally so they don't need to be re-downloaded on subsequent runs.
Note: Deploying large files to many devices simultaneously without lan-cache can saturate your network. Always use
/Library/Addigy/lan-cachewhen downloading files over HTTP/HTTPS.
Frequently Asked Questions
Does the file URL need to be publicly accessible?
Yes. The device itself makes the download request, so the URL must be reachable from the device without authentication. If your file is behind a private URL, you'll need to use a pre-signed URL or another method that allows unauthenticated access.
Can I use this for file types other than .pkg?
Yes. You can download any file type — just update the installer command in your script to match. For example, use cp or unzip for other file types, or reference the appropriate installer tool for your software.