Deployment guides, scripts, and reference for distributing offline software installers across enterprise environments — Windows (SCCM, Intune, GPO, MDT), macOS (Jamf, Mosyle, Kandji), and Linux (Ansible, Salt, Puppet).
Maintained by OfflineInstallerSetup.com — a verified offline installer reference for IT teams.
Enterprise IT teams need predictable, repeatable installs. Web-stub installers create problems:
- ❌ Online dependency means failed installs on slow / restricted networks
- ❌ Stub downloaders pull whatever the vendor serves today — version drift
- ❌ No way to scan / approve before deployment
- ❌ Can't push to air-gapped or DMZ-restricted machines
Standalone offline installers solve this. Pin one verified version. Deploy across the fleet. Roll back cleanly when needed.
For a curated catalog of software with offline installers, see offlineinstallersetup.com.
For each application package:
- Download the offline installer from a verified source (reference)
- Place in source share —
\\sccmshare\sources\AppName\Version\ - Create application in SCCM console
- Set deployment type with detection method (registry key or file version)
- Use silent install command (cheat sheet)
REM Example install command
msiexec /i "GoogleChromeStandaloneEnterprise64.msi" /qn /norestartREM Wrap with IntuneWinAppUtil.exe first
IntuneWinAppUtil.exe -c .\source -s installer.msi -o .\output
REM In Intune portal, configure:
REM Install command: msiexec /i installer.msi /qn /norestart
REM Uninstall command: msiexec /x {GUID} /qn
REM Detection rule: MSI product code or file versionFor MSI deployments via Active Directory:
- Place MSI on a UNC share readable by Domain Computers
Group Policy Management→ Computer Configuration → Software Installation- Choose Assigned (auto-install at boot) or Published (user opt-in)
<!-- Add as Application in MDT -->
<Application>
<Name>Google Chrome Enterprise</Name>
<CommandLine>msiexec /i GoogleChromeStandaloneEnterprise64.msi /qn /norestart</CommandLine>
<WorkingDirectory>.\Applications\GoogleChrome</WorkingDirectory>
</Application>Configuration InstallApps {
Node localhost {
Package InstallChrome {
Name = 'Google Chrome'
Path = 'C:\offline-installers\GoogleChromeStandaloneEnterprise64.msi'
ProductId = '{12345678-1234-1234-1234-1234567890AB}'
Arguments = '/qn /norestart'
Ensure = 'Present'
}
}
}- Upload the PKG to Jamf Admin
- Create a Policy with the package as payload
- Scope to Smart Group / Static Group
- Trigger: Recurring Check-in / Custom event
Same flow — upload PKG, create blueprint, scope to device group. For DMG-distributed apps, use a custom script:
#!/bin/bash
hdiutil attach "/path/to/installer.dmg" -nobrowse -quiet
cp -R "/Volumes/AppName/AppName.app" /Applications/
hdiutil detach "/Volumes/AppName" -quiet
xattr -dr com.apple.quarantine /Applications/AppName.apppkgutil --check-signature /path/to/installer.pkg
codesign -dv --verbose=4 /Applications/AppName.appReference: Verify installer safety
- name: Install offline DEB packages
hosts: ubuntu_fleet
become: yes
tasks:
- name: Copy installer
copy:
src: ./offline-installers/code_x.x.x_amd64.deb
dest: /tmp/code.deb
- name: Install offline DEB
apt:
deb: /tmp/code.deb
state: presentinstall_chrome:
pkg.installed:
- sources:
- google-chrome-stable: salt://offline/google-chrome-stable_amd64.debFor air-gapped Linux fleets:
# Debian / Ubuntu - apt-mirror
apt install apt-mirror
# edit /etc/apt/mirror.list
apt-mirror
# Fedora / RHEL - reposync
dnf install dnf-utils
reposync --download-metadata --downloadcomps -p /var/spool/repos/Reference: Offline installer availability
| Practice | Why |
|---|---|
| Mirror to internal share | Reduce internet dependency, audit trail |
| Verify SHA256 / signatures | Detect tampering before deployment |
| Pin specific versions | Reproducible installs |
| Test in dev pool first | Catch breakage before production |
| Document silent install switches | Future-proof your runbooks |
| Schedule retention cleanup | Don't keep stale installers forever |
- 📦 Verified offline installer catalog
- 🛡️ How to verify installer safety
- ⚙️ Silent install reference
- 📘 Offline installer availability
Have a deployment script or tip that should be here? Open a PR or contact via offlineinstallersetup.com/contact.
🌐 Maintained by OfflineInstallerSetup.com