Okay, let me start by saying that I really do love Home Assistant. I believe that it is a fantastic piece of software, with very dedicated developers that are far more talented than I. Although, that being said, I strongly disagree with a number of their design choices.

My most recent problem has been trying to put Home Assistant behind a reverse proxy with a subpath. The Home Assistant developers flat out refuse any contribution that adds support for this. Supposedly, the frontend has hard-coded paths for some views, to me this doesn’t sound like a good practice to begin with – that being said, I mostly program in Go these days (so I’m unsure if this is something that is pretty common in some frameworks or languages). The official solution is to use a subdomain, which I can’t do – I’m trying to route all services through a Tailscale Funnel (which only provides a single domain; I doubt that Tailscale Funnels where ever designed for this purpose, but I’m trying to completely remove Cloudflare Tunnels for my selfhosted services).

The other major problem I’ve ran into, is that HAOS assumes that you would have no need to run any other Docker services other than those that are add-ons or Home Assistant itself. Which, I’m sorry (not really), Home Assistant add-ons are an absolute pain to deal with! Sure, when they work, they’re supper simple, but having to write an add-on for whenever I just want to spin up a single Docker container is not going to work for me.

Now, some smaller issues I’ve had:

  • There’s no way to change the default authentication providers. I host for my (non-techie) family, they’re not going to know what the difference between local authentication and command-line authentication is, just that one works and the other doesn’t.
  • Everything that is “advanced” requires a workaround. Like mounting external hard drives and sharing it with containers in HAOS requires you to setup the Samba add-on, add the network drive, and then you can use it within containers.

Again, I still really love Home Assistant, it’s just getting to a point where things are starting to feel hacky or not thought out all the way. I’ve considered other self-hosted automation software, but there really isn’t any other good alternative (unless you want to be using HomeKit). Also, I’m a programmer first, and far away from being a self-hosting pro (so let me know if I’ve missed any crucial details that completely flip my perspective on it’s head).

If you got to the end of this thanks for reading my rant, you’re awesome.

  • grue@lemmy.world
    link
    fedilink
    English
    arrow-up
    23
    ·
    edit-2
    9 months ago

    The other major problem I’ve ran into, is that HAOS assumes that you would have no need to run any other Docker services other than those that are add-ons or Home Assistant itself.

    With the caveat that I can tell just from your post that I certainly know way less about this stuff than you do, HAOS’ assumption seems pretty reasonable to me. Isn’t the point of using HAOS (as opposed to installing HA some other way) that you’d be either (a) using it by itself on bare-metal hardware, or (b) using it in a VM? I’m running HAOS and Docker in two different VMs on Proxmox, and it’s working fine for me so far.

    (The first complaint you mentioned, about reverse proxies and subpaths, sounds a lot more legitimate. In fact, that’s something I’d like to learn more about because I haven’t yet figured out how to make my HA install – or anything, for that matter – accessible outside my LAN and “Tailscale Funnel” sounds intriguing.)

    • Daniel@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      9 months ago

      I’m running HAOS and Docker in two different VMs on Proxmox, and it’s working fine for me so far.

      So, I think I’ve mentioned this in another reply, but, I have a very minimal setup. It’s a RPi4 as the main device, Starlink as the ISP (CGNAT; no port-forwarding), and now Tailscale as the only way to access outside of my LAN. I agree that HAOS meets it’s primary job of running Home Assistant. Although, I don’t have the option to run Proxmox (at least I’ve never seen anyone run Proxmox on an RPi) and also have a massive music library (and soon a large movie and TV show collection, once I rip all of those DVDs) so I really only need to run a few things:

      • A dashboard to make accessing the services easier for the family.
      • A reverse proxy to handle subpaths (this used to be Cloudflare Tunnels with subdomains and NPM with subpaths, now it’s just Nginx).
      • Tailscale (to expose services and run a VPN to get past the CGNAT).
      • Jellyfin (for TV shows and movies).
      • A forked version of Goinc (I have a fork with LDAP support, there’s an open pull request for it, but it needs a little extra work; this wasn’t ran on HA).
      • Something to run LDAP authentication.
      • Some Home Automation software (was Home Assistant, I migth switch to something else).

      Edit: I also run Vaultwarden.

      I’ve really scaled things back since previous self-hosting journeys, and when I first started with HAOS there was even less going on, and really I need things to just work. I’m learning now that my mistake was assuming that HAOS add-ons are supposed to behave just like a Docker container, they’re not. I’ve learned the hard way, but, I still don’t love HA’s attitude towards something that are deemed “complex,” such as sub-paths and alternative authentication providers.

      I’m on RPi OS now.