I have different opinion on Home Assistant. It's surprisingly heavy compared to alternatives, the YAML configs are insanely overcomplicated, they move too fast with Python versions (phasing out 3.9 when it was still the default on the then stable Debian, etc).
My 2 cents go for Zigbee2MQTT, Mosquitton, and Domoticz. Domoticz has it's problems, but it's been a faithful workhorse for me for the past 6 or more years.
Limited; as in you might have to find a way to configure some things in a different way than you are used to.
HAOS in a principle is a lightweight immutable distro for running containers; the HA itself is the same container that you would be running if you went the Docker path.
In my case, I have my IoT toys in a separate VLAN; HAOS needed to have access to both, main LAN (for the frontend) and IoT LAN (to talk to the devices). Configuring that meant installing container with SSH, making sure I can connect to the host via that (the featured "Terminal & SSH" addon won't allow that, you need the other, "Advanced SSH & Web Terminal"), and then using nmcli to configure the network.
If you want yaml based configs and running on a non HomeAssistant provided OS you are already making it hard for yourself.
This is not the most popular route and therefore also less supported my advice:
- use a raspberry-pi with Home Assistant OS or buy one of their self made raspberry-pi alternatives Home Assistant Yellow etc.
You can run docker but it's still not straightforward because then you need to passthrough like USB Devices etc, I would recommend against it.
And from there use the yamls to define a very basic config like language, location etc (I'm not sure that you even need to do that). But only use the GUI from there on.
Everything can be done with the GUI, I haven't touched my yaml files in years.
And I regularly upgrade versions too, haven't had any upgrade issues either.
> Everything can be done with the GUI, I haven't touched my yaml files in years.
Command line sensors, REST sensors, some types of virtual sensors, groups (I think), there's a lot of stuff you still can't do in the GUI, and even if you don't mind writing their stupid YAML-based config, the documentation isn't very friendly and in places outdated and contradicting itself.
My 2 cents go for Zigbee2MQTT, Mosquitton, and Domoticz. Domoticz has it's problems, but it's been a faithful workhorse for me for the past 6 or more years.