Skip to content

Latest commit

 

History

History
23 lines (13 loc) · 2.54 KB

File metadata and controls

23 lines (13 loc) · 2.54 KB

appcast

The value of the appcast stanza is a string, holding the URL for an appcast which provides information on future updates.

Required Appcast Parameters

key value
checkpoint: a string holding a custom checksum of the most recent appcast which matches the current Cask versioning. Use brew cask _appcast_checkpoint --calculate "{{appcast_url}}" to calculate it.

Example: atom.rb

There are a few different ways the appcast can be determined:

  • If the app is distributed via GitHub releases, the appcast will be of the form https://github.com/{{user}}/{{project_name}}/releases.atom. (Example: electron.rb)

  • The popular update framework Sparkle generally uses the SUFeedURL property in Contents/Info.plist inside .app bundles. You can use the script find_sparkle_appcast by running the command "$(brew --repository)/Library/Taps/caskroom/homebrew-cask/developer/bin/find_sparkle_appcast" '/full/path/to/software.app' to find the appcast and checkpoint automatically. (Example: glyphs.rb)

  • Sourceforge projects follow the form https://sourceforge.net/projects/{{project_name}}/rss. A more specific page can be used as needed, pointing to a specific directory structure: https://sourceforge.net/projects/{{project_name}}/rss?path=/{{path_here}}. (Example: seashore.rb)

  • HockeyApp URLs are of the form https://rink.hockeyapp.net/api/2/apps/HEXADECIMAL_STRING<SOMETHING_ELSE>. For the appcast, remove <SOMETHING_ELSE> (ending up with https://rink.hockeyapp.net/api/2/apps/HEXADECIMAL_STRING. (Example: iconjar.rb)

  • An appcast can be any URL hosted by the app’s developer that changes every time a new release is out (e.g. a changelog HTML page). (Example: shortcat.rb)