Skip to content

Getting Started ​

Simple Organized Feed for Apple Software Updates

Sofa logo

Hello 👋,

SOFA supports MacAdmins by efficiently tracking and surfacing information on updates for macOS and iOS. It consists of a machine-readable feed and user-friendly web interface, providing continuously up-to-date information on XProtect data, OS updates, and the details bundled in those releases.

Web UI Overview ​

OS Version Section ​

  • Latest OS Version: View details for the latest macOS and iOS releases, including version numbers, build identifiers, and release dates
  • Download Links: Direct access to download latest installers like IPSW files (coming soon!) or Universal Mac Assistant (UMA) packages
  • Security and Documentation Links: Quick access to relevant Apple documentation and security advisories

XProtect Data Section (macOS Only) ​

  • Latest Versions Information: Track the most current versions of XProtect
  • Verification Baseline: Use as a baseline info for use in custom tools to ensure XProtect is up-to-date across your macOS fleet. This could be running compliance scripts or extension attributes. See some starter examples in Tools
  • Update Frequency Details: See when XProtect was updated and the days since the latest release

Security Updates Listing ​

  • Release Timelines: Overview of the release dates and intervals between the latest security updates.
  • Vulnerability Details: For each CVE, links are provided to view detailed records at CISA.gov or CVE.org. Use 'Command-click' to open a CVE record on the NVD website, highlighting detailed info on actively exploited vulnerabilities and related security advisories
  • Search and Highlight: Search for specific CVEs to identify which OS updates address the vulnerabilities

Self-hosting ​

For production use, we highly recommend self-hosting the feed to improve reliability and security. This can be easily done by forking this repository and setting up a GitHub Action to deploy the feed on your own webhost.

For detailed instructions, check out our Quick Start Guide to Self-Hosted SOFA.

JSON Feed Data ​

Access the JSON feed directly for integration with automated tools or scripts. The current JSON feed URLs for macOS and iOS respectively are as follows:

For guidance on how to utilize and implement the feed in scripts, explore examples in the Tools section, and read this blog post.

RSS Overview ​

Subsribe to the RSS feed here: https://sofa.macadmins.io/v1/rss_feed.xml

The RSS feed is generated using feedgen by leveraging the same data generated for the data feed. It extracts SecurityReleases and injects them into individual entries, providing a streamlined and organized feed of the latest updates. The process involves:

  1. Loading Cache Data: RSS data is loaded from cached JSON files from the cache/ directory to ensure all previously fetched updates are considered.
  2. Writing to Cache: New or updated data is written back to the cache, sorted by ReleaseDate.
  3. Diffing Data: New feed results are compared against existing cached data to identify and handle new entries.
  4. Generate New Cache: Updating the current cache files with new entries if new entries exist.
  5. Creating RSS Entries: SecurityReleases from the data feed are used to create RSS entries, including handling specific data like XProtect configurations and payloads.
  6. Writing RSS Feed: The sorted and updated entries are written to an RSS feed file (v1/rss_feed.xml) using feedgen.

Released under the Apache 2.0 License.