Home Assistant deprecates the "core" and "supervised" installation modes
These are advanced installation methods, with only a small percentage of the community opting to use them. If you are using these methods, you can continue to do so (you can even continue to update your system), but in six months time, you will no longer be supported, which I'll explain the impacts of in the next section. References to these installation methods will be removed from our documentation after our next release (2025.6).
Support for 32-bit Arm and x86 architectures has also been deprecated.
Posted May 22, 2025 22:04 UTC (Thu)
by gerdesj (subscriber, #5446)
[Link] (6 responses)
Do I start the Openhome Assistant project? Hmmm.
Posted May 23, 2025 5:17 UTC (Fri)
by pbonzini (subscriber, #60935)
[Link] (5 responses)
Posted May 23, 2025 6:12 UTC (Fri)
by WolfWings (subscriber, #56790)
[Link] (4 responses)
Posted May 23, 2025 6:14 UTC (Fri)
by smurf (subscriber, #17840)
[Link] (2 responses)
Posted May 26, 2025 1:58 UTC (Mon)
by gerdesj (subscriber, #5446)
[Link] (1 responses)
That's spot on but misses the point of why I generally prefer Supervised in the first place!
An "elderly" laptop has a battery (built in UPS), a few USB interfaces and is generally capable of being optimised for a bit of power sippin'. You don't have to fire up the GPU unless you want to. With a SSD, you've got a pretty decent platform that can be powerful if needed but also quite modest, powerwise too.
OK that is still valid for HAOS. However HAOS is a cut down distro with no frills so you can't run anything else that is not already covered with a blessed HA container: "addon".
I run quite a few out of band things such as SMS daemons which are so uncool but so useful to my customers and me too.
It's all very well trying to reduce the support load but I don't need any guarantees. I'd just like some understanding. The last deprecation effort shoved a middle finger to Debian derivatives (Ubuntu) OK, I got it and rolled with it. Fairly major re-installations efforts done.
Now you are telling me I have to do all that again. Well, thank you very much. Is this the last one? It won't even be classed as a breaking change for the project but it will fuck over quite a few implementations.
I will roll with it all again because I have to but it isn't a good look and I don't see why it is necessary this time.
Posted May 26, 2025 2:27 UTC (Mon)
by smurf (subscriber, #17840)
[Link]
Me too, to be honest.
> I will roll with it all again because I have to but it isn't a good look and I don't see why it is necessary this time.
I won't. I'll keep on running it in Supervised mode no matter what. They said it'll continue to work, just not be end-user documented+supported, and I'm taking them at their word.
Posted May 23, 2025 6:27 UTC (Fri)
by pbonzini (subscriber, #60935)
[Link]
That said, Supervised has the advantage of managing add-ons but it's indeed tricky to debug. Containers are much easier to manage if you don't need add-ons.
Posted May 23, 2025 6:12 UTC (Fri)
by smurf (subscriber, #17840)
[Link] (9 responses)
On the other hand, I hate blowing additional resources on my HA setup. A separate Raspberry Pi costs money and eats power (this matters if you need to deal with power outages), and a Docker or some-other-VM installation isn't feature complete. Also, it wastes memory and CPU.
Seems like "unsupported but continues to work" is the best we can hope for.
Posted May 23, 2025 6:25 UTC (Fri)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Posted May 23, 2025 7:23 UTC (Fri)
by merge (subscriber, #65339)
[Link]
Posted May 23, 2025 18:20 UTC (Fri)
by aphedges (subscriber, #171718)
[Link] (6 responses)
How does Docker waste memory and CPU? From my understanding, the overhead is quite low because it's just namespaces. I've never actually seen benchmarks to empirically test that, though.
Or maybe I misunderstood and you were talking about a VM wasting memory and CPU?
Posted May 24, 2025 15:46 UTC (Sat)
by smurf (subscriber, #17840)
[Link] (5 responses)
Posted May 26, 2025 1:35 UTC (Mon)
by aphedges (subscriber, #171718)
[Link] (4 responses)
I don't run applications on tiny systems (I always have least have 2 GBs of RAM), but I don't think the duplicated libc and CPython matters much when everything else is taken into account. Looking on Docker Hub, This matches my experience that most of the size of a Python-based OCI image is taken up by Python libraries, not any of the core runtime or system utilities.
Posted May 26, 2025 8:27 UTC (Mon)
by geert (subscriber, #98403)
[Link] (3 responses)
Do you need 2 GiB of RAM to monitor the house?
Posted May 26, 2025 8:48 UTC (Mon)
by zdzichu (subscriber, #17118)
[Link] (1 responses)
Posted May 26, 2025 22:31 UTC (Mon)
by aphedges (subscriber, #171718)
[Link]
The only exception I've seen to having these larger amounts of RAM is more special-purpose hardware like routers, but the OpenWRT One sells for a price comparable to standard consumer routers (at least in the US) and still has 1 GB of RAM.
Posted May 26, 2025 22:25 UTC (Mon)
by aphedges (subscriber, #171718)
[Link]
When I built my machine, I ended up deciding on 16 GB of RAM because the cost is only marginally higher than if I used a smaller amount of RAM. Plus, I wanted to run other applications on it and not worry about it upgrading hardware for years. I expect that you won't find much in the way of general-purpose compute hardware with less than 2 GB of RAM. I was curious about how much is available on the Raspberry Pi 5, and the smallest version they sell has 2 GB.
Posted May 24, 2025 16:23 UTC (Sat)
by donbarry (guest, #10485)
[Link] (23 responses)
One can certainly speculate that the trimming reflects the economic interests of the company behind it and the desire to keep the client population focused behind its offerings, rather than, say, an "apt-get install homeassistant" world.
Too many corporately-trained agile developers today have forgotten old mantras like "be liberal in what you consume and conservative in what you offer" and its related library restatement to not rely on recent library innovations when you can avoid it but do the innovation in your own product until the outside interfaces are stable and widely deployed in the libraries.
A considerate community development methodology would use conservative and stable APIs to external interfaces and be able to run on at least the current stable Debian (to use an example). But the direction from the top is pretty hostile to such suggestions. Several years ago answering their objections to providing a version of their Android remote client not dependent on Google's proprietary play services led to my being blocked from their Facebook page. (They later added this alternative after enough other protest!)
Still, it's the best alternative in this domain and I'll continue to use it, and to use it without their OS and hated containers.
Posted May 24, 2025 17:49 UTC (Sat)
by smurf (subscriber, #17840)
[Link] (14 responses)
It'd be even nicer if that could work without a venv, but there are far too many supported integrations for that to happen, given that each one needs its own Python package (with wildly varying actual version specificity) *and* basically no automated PyPI import to Debian.
Posted May 25, 2025 13:25 UTC (Sun)
by philh (subscriber, #14797)
[Link] (12 responses)
See: https://wiki.debian.org/Python/HomeAssistant
That page states that there were 675 missing python packages required when they started the recent push to package Home Assistant. The aim there was to finish packaging it this year, and they seem to have already done well over 400, so I guess strictly speaking it looks like it will not in fact be "too much" effort in the end ;-)
Hopefully that will then give people a place to gather in order to be able to maintain an installable version.
Regarding the out-of date aspect of packaging such a thing, one could maintain a fresh version in `fasttrack.debian.net`, but personally I'd trade something that had proven reliable over a couple of years for whatever this week's latest feature is when it comes to controlling my home when I'm not in the building.
Posted May 27, 2025 17:48 UTC (Tue)
by Sesse (subscriber, #53779)
[Link] (1 responses)
Posted May 27, 2025 18:09 UTC (Tue)
by smurf (subscriber, #17840)
[Link]
The reason you want more than enough RAM isn't that you can't set up a usable system with less, one of my test systems runs perfectly well in a 400MB VM. The reason is that if there's even a hint of memory pressure, the system might need to swap something in when you hit a light switch. Few things in a home automation setup are more annoying to the users, esp. the not-computer-savvy ones, than random delays.
Posted May 27, 2025 20:36 UTC (Tue)
by jdulaney (subscriber, #83672)
[Link] (5 responses)
Posted May 27, 2025 20:53 UTC (Tue)
by Cyberax (✭ supporter ✭, #52523)
[Link]
The HA has a rule that integrations should not have any device interaction logic inside them, they should farm it out to a library. That's where most of 600 dependencies come from.
This makes it easier to develop device integrations, and forces a clean separation between device handlers and HA core logic.
Posted May 28, 2025 8:00 UTC (Wed)
by taladar (subscriber, #68407)
[Link]
Posted May 28, 2025 8:17 UTC (Wed)
by smurf (subscriber, #17840)
[Link] (2 responses)
Those 600 deps mean that HA uses existing and hopefully-tested-on-actual-hardware Python libraries to talk to $THING, which can be stubbed out for unit testing rather easily, instead of re-inventing 200 wheels that can't be tested without the actual hardware.
Posted May 28, 2025 9:54 UTC (Wed)
by mathstuf (subscriber, #69389)
[Link] (1 responses)
And with hardware, you can test it directly instead of needing an HA installation to drive it.
Posted May 28, 2025 19:13 UTC (Wed)
by smurf (subscriber, #17840)
[Link]
You get to guess how many CI runners, or users for that matter, have 100 different kinds of home automation hardware attached to them.
Posted May 29, 2025 10:43 UTC (Thu)
by Rigrig (subscriber, #105346)
[Link]
Unfortunately "this week's latest feature" is often "talking to devices with this week's firmware update". Even if the manufacturer is decent enough to give you the choice, that still means choosing between "works with x-year old Home Assistant" and "latest (security) fixes".
Posted May 29, 2025 20:06 UTC (Thu)
by zigo (subscriber, #96142)
[Link] (2 responses)
I'm one of the 2 crazy guys that started this effort. Packaging all of these libraries, I found out that some are very well maintained, contain unit and functional tests, and some are really bad, with only a few lines of Python. So quality varies a lot.
What is pushing me to do this packaging work, is mostly because I kind of hate the way HomeAssistant is delivered by upstream. I also hate that it's updating every odd days: I don't need that, I want my home automation to be STABLE. In the sense: I don't want it to be a constantly moving target. I don't need new features more often than Debian Stable (ie: once every 2 years is really enough). I also hate having 100s of containers, and having a very poor access to it. I prefer all of these python things to be installed flat out, on my system, together with other things. I also don't want a specialized VM (which is what I'm currently using because ... no other viable choice), and I would like to be able to install other things in my home server than just HomeAssistant. I don't want also HomeAssistant to use the root of my home web server, or to use a specialized port, I would like it to just share port 443, like every other app in Debian, and just use /homeassistant (or /ha ?), and leave the rest of the namespace for *ME* to decide what to host in my web server/haproxy/whatever. Simple things like having SSL support in HA is just horrible. :(
So far, it takes us (me and the other DD) about 15 to 20 minutes to package a Python library, thanks to highly automated tooling.
I have to admit that I did a lot from July to October, and then did other stuff. I intend to restart the effort this summer, hopefully a bit during Debconf in July. However, help would be highly appreciated. If we get 20 people doing 10 package each, we're done! Having to finish the 200+ packages with only 2 persons WILL take a lot of time. Then once we're done, the fun part begins: we'll start playing the the core stuff, it's going to be fun.
Hopefully, we can have something that works well enough for Debian 14 (aka: Forky). Also hopefully: it's going to be practical in Debian Testing before then.
Posted May 29, 2025 22:08 UTC (Thu)
by Cyberax (✭ supporter ✭, #52523)
[Link]
You can do that just fine with HA and containers. Have the HA run on a port like 8080, and set up your frontend webserver/proxy to redirect everything for the '/ha/*' path to that port.
HA itself works fine with URLs that are not rooted, I believe you just need to set the `external_url` property in the YAML config for that.
Posted May 30, 2025 6:43 UTC (Fri)
by smurf (subscriber, #17840)
[Link]
Amen, brother.
> I also don't want a specialized VM (which is what I'm currently using because ... no other viable choice),
I'm using a simple venv, and a startup script that activates it and then starts the HA that's been pip-install'd into it. Works perfectly fine. So I wonder what do you need the VM for?
Posted Aug 9, 2025 22:51 UTC (Sat)
by Rudd-O (guest, #61155)
[Link]
Posted May 24, 2025 18:17 UTC (Sat)
by DemiMarie (subscriber, #164188)
[Link] (7 responses)
Posted May 24, 2025 21:02 UTC (Sat)
by ballombe (subscriber, #9523)
[Link] (6 responses)
Posted May 24, 2025 23:25 UTC (Sat)
by jkingweb (subscriber, #113039)
[Link] (5 responses)
Posted May 25, 2025 8:18 UTC (Sun)
by smurf (subscriber, #17840)
[Link] (4 responses)
It's not at all easy to replace that module there. In a "real" installation you can just update the requirements file with the version# with the bugfix and restart HomeAssistant.
That being said, this is for end users. A user won't muck about with Docker images, but then they wouldn't know how to edit their Supervised installation either (not without messing it up anyway). The user files the bug, somebody else notifies upstream with a fix, and you get that in the next regular update.
Actually *running* HA in Supervised mode will continue to work because they (and we) need that mode for development and testing. It'll just not be end-user-supported by them. After all, you can't rebuild a Docker image or re-provide+-boot your appliance every time you fix a typo, that'd take much too long.
Posted May 25, 2025 9:49 UTC (Sun)
by ballombe (subscriber, #9523)
[Link]
Posted May 25, 2025 11:36 UTC (Sun)
by pizza (subscriber, #46)
[Link] (1 responses)
On the contrary, it's increasingly common these days that the only build artifact produced is a docker image.
Posted May 25, 2025 18:52 UTC (Sun)
by smurf (subscriber, #17840)
[Link]
Posted May 25, 2025 18:56 UTC (Sun)
by Cyberax (✭ supporter ✭, #52523)
[Link]
The way the HA environment is set up, you can create "patches" in the `config/custom_components` folder, the Python file loader looks there first. So you can replicate the directory structure of the affected package and patch individual files. Once you're done, you can do a full-blown build.
And even for the core development, you don't need the full Supervised mode. Just clone the repo and install dependencies for the core and the parts that you want to change.
Posted May 27, 2025 20:38 UTC (Tue)
by jdulaney (subscriber, #83672)
[Link] (2 responses)
Posted May 28, 2025 8:20 UTC (Wed)
by smurf (subscriber, #17840)
[Link] (1 responses)
Posted May 29, 2025 11:17 UTC (Thu)
by kpfleming (subscriber, #23250)
[Link]
Posted May 27, 2025 22:00 UTC (Tue)
by linuxrocks123 (subscriber, #34648)
[Link] (2 responses)
Pretty simple problem. If I were writing such a program, I'd string together about three executables with shell script and cron and be finished pretty quickly.
That's not the approach MythTV took. MythTV is a bloated catastrophe. Everything is integrated with everything else. Nothing is supported when used by itself. They didn't use any standard tooling, and there's NIH all over the place. They even created their own file sharing API for no reason.
MythTV is absolutely terrible. Oracle couldn't have done worse.
With HomeAssistant, I want to control lights and doohickeys in my house. Pretty simple problem. I'll need some commands to query and toggle the states of the lights. Maybe some cron jobs to switch them on/off at certain times. Maybe a watchdog program that hangs until one of the sensors detects something so I can run that in a loop taking whatever actions are needed.
That's pretty much what I did when setting up my old house with X-10, and it's what I'll do again whenever I finally have time to set up stuff at my current house. It's pretty simple, and I was done pretty quickly.
Now I read an article about HomeAssistant, which solves this problem with a Python monstrosity with so many tentacles that it can't even run without taking over the entire operating system. That's even worse than MythTV, and the problem HomeAssistant is solving is even simpler. That's horrifying.
Posted May 28, 2025 8:39 UTC (Wed)
by smurf (subscriber, #17840)
[Link] (1 responses)
Yes it can run without taking over a whole box, quite easily actually. The point is that they'll stop supporting end users that use Supervised mode, simply because there's all sorts of ways you can get that wrong in not-quite-obvious ways. The point is not, and they say so quite clearly, that Supervised mode will stop working.
Point in case: I'm the maintainer of knxd, a reasonably ancient C++ daemon that's routing KNX datagrams. I took it over and rewrote the internals ten years ago. Until two years ago, the nonsense from botched outdated installation scripts that somebody found on some blog somewhere outnumbered *real* bugs+questions. And that's with a README, with build instructions and everything right alongside the source code, for a limited-domain daemon that does *one* job.
Posted May 28, 2025 17:57 UTC (Wed)
by Cyberax (✭ supporter ✭, #52523)
[Link]
Thank you for that! I've been experimenting with KNX and I love it!
Posted Aug 9, 2025 22:48 UTC (Sat)
by Rudd-O (guest, #61155)
[Link]
Bugger
Bugger
Bugger
Bugger
Bugger
Bugger
Bugger
Well …
Well …
Well …
Well …
Well …
It's not quite as bad as a VM which also has its own kernel, but on systems that don't have swap space I want to keep resource usage to a minimum.
Well …
homeassistant/home-assistant:2025.5
for linux/amd64
has a "compressed size" of 626.41 MB, but a separate copy of the same distro and same Python version, python:3.13.3-alpine3.21
, has a "compressed size" of only 15.89 MB.Well …
Well …
Well …
Well …
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
An ongoing theme with the developers
Difference in perspective
Difference in perspective
Difference in perspective
Difference in perspective
Difference in perspective
"nonreproducible".
Difference in perspective
Difference in perspective
Difference in perspective
Shouldn't have wasted my time
Shouldn't have wasted my time
Shouldn't have wasted my time
MythTV
MythTV
MythTV
Core REPRESENT