Difference between HA Supervisor and HACS?

Hi all. I’m a few weeks into working with Home Assistant and love it so far. One thing that confuses me though is the difference between Supervisor with its various add-on repositories and HACS. They seem to be solving the same problem in slightly different ways. Are they competing? Is one a replacement for the other? I noticed some add-ons like Pyscript are only available in HACS, but I don’t know if there’s a technical reason for that or just a choice that the developer made. Any context would be helpful. Thanks!

HACS doesn’t have add-ons, it has custom integrations (unofficial integrations). Add-ons are additional pieces of software. Integrations are things that communicate with pieces of software or physical devices.

OK, maybe a better question then would have been what’s the difference between HACS and the Configuration -> Integrations page in HA? Same mechanism, but one set is officially supported and the other is community-based?

Yep, the integrations you see at configuration > integrations (and at https://www.home-assistant.io/integrations/) are official integrations.

The term “Add-On” has special meaning in Home Assistant. Pyscript is not an Add-On, it’s a custom integration (a.k.a. custom component). Add-Ons and custom components are not the same.

Thanks. All this makes sense. The terminology was confusing me because Pyscript is distributed through HACS (making it an integration), but AppDaemon is a Supervisor add-on. They both enable similar kinds of features, though (i.e. Python scripting in HA). Maybe these are edge cases.

1 Like

No, it’s a Home Assistant Add-On.

No, HACS offers more than just integrations.

Similarity in function doesn’t dictate if it’s an integration or an Add-On. For example, python_script also provides ‘Python scripting’ and its neither an Add-On or a custom integration, it’s an official integration.

Integrations are either official or custom.

  • If they are official, you install them via Configuration > Integrations or, in some cases, by defining them in configuration.yaml.
  • If they are custom, you install them from the author’s GitHub repository or via HACS which is a convenient ‘store-front’ for custom integrations, custom Lovelace cards, etc.

Add-Ons are services distributed as customized docker containers. Examples include Node-Red, Mosquitto MQTT Broker, OpenZwave, MariaDB, Grafana, zigbee2mqtt, etc. There are official Add-Ons as well Community Add-Ons (developed by, obviously, Home Assistant users).

1 Like