Skip to main content
Software Deployment

Deploy Software to Devices

Add a software deployment to a config package so octoja automatically installs or updates software on managed devices.

Add a software deployment to a config package so that octoja installs or updates the software on the assigned devices automatically. For how package managers, fields and schedules fit together, see How software deployment works.

Prerequisites

  • The Monitoring Check Management permission (under Administration → Groups). It covers config packages and the software deployments inside them.
  • A config package whose assignment rules match the target devices — or create a new one.

Steps

  1. Go to Configuration → Config Packages and open the config package you want to add software to (or create a new one).

  2. On the Software tab, click Add Software.

  3. Leave the mode on Specific package. To upgrade all outdated packages instead, follow the Update all outdated packages section further down.

  4. Choose the package-manager tab for your target platform: Chocolatey or winget for Windows, Homebrew for macOS, APT for Debian and Ubuntu, or Custom for software you packaged yourself under Configuration → Custom Packages.

  5. Search for the software by name — type at least two characters, for example "Firefox" or "7-Zip" — and select it from the results.

    APT packages (Debian / Ubuntu): There is no search catalogue for APT. Type the exact package name as it appears in your distribution's repositories (e.g. nginx). If you are not sure of the name, run apt search <keyword> on a Linux device. Enter an exact Version, or leave it empty for the latest.

  6. Check Display Name and Version and choose the Install Behavior. Normally leave Install Arguments blank; you cannot change them after adding the deployment. For what each field does, see How software deployment works.

  7. Click Add to Package.

  8. Set the Deployment schedule. It appears above the deployment list and covers every software deployment in the package. Leave it at No schedule set and octoja keeps the software up to date continuously. For fixed times, click Set a schedule and pick a mode with a time or a Template; Next runs previews when the schedule will fire. Prefer times outside working hours, such as overnight or at reboot.

  9. Save the config package.

The following walkthrough shows the opening steps — opening the package, switching to the Software tab, clicking Add Software, and searching the Chocolatey catalogue for Firefox:

Animated walkthrough — opening the Windows Workstation Basics config package, switching to its Software tab, clicking Add Software, and searching the Chocolatey catalogue for firefox. The results list shows Mozilla Firefox, Mozilla Firefox ESR, Adblock Plus for Firefox, Bitdefender TrafficLight for Firefox, and Progressive Web Apps for Firefox.

If the software should be installed only when users ask for it, not automatically, turn on Show in Software Kiosk on the deployment and enable the kiosk for the devices — see Enable the Software Kiosk.

Update all outdated packages

  1. In the Add Software dialog, first choose the Update all outdated mode — it changes the rest of the form.
  2. Choose the package manager. You need no package name, and you can leave Display Name empty.
  3. For winget and Chocolatey, choose who to install for under Install for.
  4. Add exclusions and a minimum age if needed (see below), click Add to Package, and save the config package.

Hold back selected software updates

Enter exact package IDs under Never update these packages and press Enter after each one — for example Mozilla.Firefox for winget, firefox for Chocolatey, or a name from apt list --upgradable for APT. To change an existing deployment, open it on the Software tab, adjust the list and save the config package. Exclusions apply only to this deployment, so check whether other update deployments are assigned to the same devices.

For winget and Chocolatey, set Minimum update age (days) if newly available versions should wait; 0 disables the delay. For winget, age starts when octoja first sees that version in its catalogue, not the vendor's release date; versions present at the first catalogue population are treated as old enough. Chocolatey uses the community feed's publication date. If the date cannot be determined or the lookup fails, the update can still install; explicit exclusions still apply.

The same options are available when adding an automation's software-install action.

Check the result

The package reaches its devices as soon as you save it, or on the schedule you set. Then check:

  • the device activity log — software deployment results appear there with source Deployment. A successful Update all outdated run is logged even when nothing was updated, so check the result, not just the success status.
  • the Installed Software list on the device's Software tab, to see the installed version.

FAQ

Search for the application under Inventory → Software and expand the entry to see the reported devices and versions. This shows the recorded software inventory, not the outcome of every deployment run. Missing software in the inventory alone does not prove that a run failed. See Browse the inventory for details.

For a run's outcome, open the affected device and go to Activities → Logs. Select source Deployment and the appropriate time range; use the content search to narrow the results to the software. Select severity Error if needed and read the entry's content. Clear the severity filter again to see successful runs and warnings too.

For permanent removal, first inspect all applicable config packages and remove or narrow their software assignments so the app is not installed again. Removing an assignment does not uninstall the app. Then open the online device, switch to the Software tab and, in the Installed Software list, click the trash icon Uninstall for the program. octoja uninstalls the program silently. Alternatively, remove packages that winget or Chocolatey know through Install Software. Install or uninstall software on a single device describes both ways.

Select the appropriate language variant in the catalogue and test the deployment on one device first. Update Only checks whether the application is installed; it does not guarantee that its language stays unchanged.

For a new German Firefox installation, search the winget catalogue for Firefox (de) and select Mozilla Firefox (de) (Mozilla.Firefox.de). Leave Install Arguments empty and avoid assigning a second Firefox language variant to the same devices.

If the wrong language variant is already installed, changing the package ID alone is not a repair: the application can still be considered up to date when the version number matches. Plan a vendor-supported language change or repair separately and back up application data first. Do not blanket-uninstall the application across the fleet.

Chocolatey checks the packages it manages, not every application in Windows' installed-software list. Software installed manually or through another manager is not automatically a Chocolatey package. winget can match installed applications against its own catalogue, but it also cannot update every application. Check which manager recognizes the affected package, then review the deployment result and installed version; a successful run is not proof that every vulnerability is fixed.