On regular basis, I check for OS and App updates using terminal and softwareupdate
command
Recently, there was update of Slack
app but command output didn't show the same. I was able to view update on AppStore.
Below was the output of the command.
$ softwareupdate -all Software Update Tool Finding available software Software Update found the following new or updated software: * Command Line Tools (macOS High Sierra version 10.13) for Xcode-10.0 Command Line Tools (macOS High Sierra version 10.13) for Xcode (10.0), 190520K [recommended] * Safari12.0HighSierraAuto-12.0 Safari (12.0), 78915K [recommended]
Any reason why Slack
update was not listed? Am I missing any parameter?
Best Answer
softwareupdate
only handles updates to the OS and bundled software, not purchased (/free) apps. The distinction isn't always obvious; the clearest way I have to describe it is that if an app is tied to (/owned by) a particular Apple ID, thensoftwareupdate
won't handle it. Safari and iTunes are examples of apps that just come with the OS, therefore aren't owned by any specific Apple ID, and therefore are handled bysoftwareupdate
. On the other hand, Slack is an app you "purchase" (it's free, but it's still technically a purchase) under your Apple ID in the App Store, thereforesoftwareupdate
does not handle it.Andrew Naylor has written a CLI interface to deal with App Store purchases (including updates), available from https://github.com/mas-cli/mas.
Update: in macOS Mojave, the distinction is clear in the GUI as well as at the command line. In Mojave, the App Store interface only handles updates to "purchased" apps, while OS and bundled software updates are handled by the Software Update pane in System Preferences. So "Software Update" preferences ==
softwareupdate
command, and "App Store" application == Andrew Naylor'smas
command.