Which is the best linux distro for HA Core?

So far I have been running HA on Raspbian (Raspberry OS) but it has become more and more difficult over the past years. Part of the problems come from constant version chasing of some dependencies and not having them in the native package repo.

I am planning on moving to a different hardware so I wonder which is the linux distro the devs are chasing with the package versions?

I have been running HAOS under virtualbox on ubuntu for about 8 years now. It works well. Virtualbox and new ubuntu versions can sometime be a pain as virtualbox does not get upgraded in the kernel. Backing up a 200gb file is a slow painful process even on gigabit ethernet.

I’ve been running Home Assistant in Docker containers pretty much since I started using it. If you’re familiar with Docker and Docker Compose, I have a GitHub Gist on how I set up the compose files.

I’ve used the same setup on a 4G Raspberry Pi 4 running Pi OS and now an 8G Intel NUC Celeron running Alpine Linux. That’s the nice thing about containers, the underlying operating system doesn’t matter so much. But, you do have a learning curve with getting up to speed on Docker and Docker Compose. It’s a trade-off.

The advantage for me with Docker is I can run more than just Home Assistant on the machine. I’ve got Nextcloud, Samba, Jellyfin, PiHole DNS, and some other stuff. It’s all in Docker containers, so it’s all coexisting nicely.

1 Like

I moved from Core on Raspian to vanilla Debian without issue.

Ditto. Debian and a Python venv. It’s been my setup since the start, 5 years ago.

Debian is the required OS for a supported install, so Debian is obviously the best one.
With Debian you should have no issues with dependencies.

Only for Supervised, that cursed method.

Otherwise, any Linux + Docker is the way (though personally I prefer Debian for servers). Whatever you go with will have dependency problems in the future if you use a venv.

2 Likes

No, also for a core install.
You only read the first part of the sentence and if you read the last part you would see that I talked about a core install and not a supervised install.

That is exactly why I suggested Debian, because it will minimize if not even eliminate the dependency problems.

Thanks guys for the replies. I guess I might explain a bit the background to support my further questions :slight_smile: .

I have been running HA Core since 2017 (or 18), I do not think it was Core yet back then on RPi3B and Raspbian. It was fine even if felt a bit cramped. When RPi4B got released I tested it but did not want it. It was good on paper, but the new USB3 basically killed all my radio (I am using integrated BT and have ZWave and Zigbee dongles directly attached to the Pi), so I sticked to RPi3B and later to RPi3B+.

It went relatively well until lately when HA upgrades started to became more and more frustrating (I already wrote a rant about it here, so I will not spoil this thread). The RPi3B was clearly reaching its EOL.

To alleviate this I decided to move to a new hardware. RPi was out, Orange Pi 5 seemed like a good contender, but eventually I decided for a passive cooled N100 box with Type 1 hypervisor and linux distro with HA Core.

I just wanted to continue doing things how I have been doing them while benefiting from the virtualization for backups, botched installs etc. The other reason while I stick to Core is I am already old enough (do not get misled by my nickname) and need to keep things “same”. And last but not least, with HA I also run zigbee2mqtt and zwavejs2mqtt (+ mosquitto) and same other petty stuff I wrote myself, which also interacts with HA and I want to maintain all those parts together as the “whole HA package”, which I hope the VM will exactly do.

@Tinkerer For what concerns the Docker, I am not at all familiar with tech, but somehow understood that getting the same setup I described above would be difficult (as the Docker image is basically baked in snapshot), but I may be wrong.

@DavesCodeMusings I believe we are on the similar paths. I just prefer to go full VM. Not because I have anything against Docker, but because I feel more comfortable about running VM and have fully capable distro in it with HA Core, as I already know, how to do it :slight_smile:.

@callifo @parautenbach @WallyR
On RPi I was on Raspbian bullseye, but I have checked and bookworm is also only on Python 3.11 (officially).

So do you guys run an experimental version of Debian, or do you use some 3rd party package repos?

This has been becoming a serious problem on RPi because of its armv71 arch, I had to build most of the packages locally (including Python 3.12), but maybe for more ubiquitous x86-64 it is not a problem?

Run a true Debian and not a variation.
Raspbian is generally behind in versions compared to the Debian used by HA.

1 Like

So just to clarify the Python situation. It is not a problem to install Python 3.12 on Debian (bookworm), which is the latest Debian stable?

I cant remember how I installed Python 3.12 on my Debian, but it must have been pretty hassle-free, since I can’t even remember installing it.

1 Like

I used to run HA on a W10 machine with VMWare.

Then I changed to a Debian machine, and set it up as supervised.
But I found out supervised came with a lot of restrictions, which wasn’t workable for me, as I want to use the host for more then just running HA.

I could have went for Venv or Docker, but still I wanted to run supervised (as I am too lazy to maintain it manually), so I ended up running VMware on Debian. So basically nothing changed, except that the host is now Debian instead of W10 :stuck_out_tongue:

One of the advantages of running a virtual machine is the fact you can take snapshots, which makes it very easy to try something out (and restore the snapshot within a few seconds in case it went wrong :smiley: )

PS: In my experience VMWare is way more stable then VirtualBox, it gave me nothing but headaches. It’s a bit harder to set up, but worth it.

apt-get install python3 python3-dev

https://wiki.python.org/moin/BeginnersGuide/Download

I prefer VMware and Proxmox over VirtualBox too.
Virtualbox seems like a cheap consumer product to me.
In generally I would not recommend running HA on a Windows based supervisor, not even Hyper-V, because HA setups often use USB devices and hypervisors often come in conflict with the Windows kernel over USB pass throughs.

I guess I know how to install packages on Debian :wink: . I just thought that running this exact command will install Python 3.11 (which I understood is the “canonical” version for this Debian version). But I have no Debian at hand to actually check it, so I might just misread things.

I plan to use Proxmox to be exact on the new N100 box.

I started with Hyper-V, which indeed has an issue with USB.
For a while I ran Ziggbee2MQTT on the host (overcoming that issue), but since VMWare did support USB, I switched to the Z2M addon (again out of lazyness, as the supervisor now takes care of updating it :stuck_out_tongue: )

There should be many guides on the forum for supervised installations, since that is a requirement for that install type.
I think I added a repository to debain first and then it was just the apt commands.

https://github.com/home-assistant/architecture/blob/63f1d0c7ad23bfd99da90528ba83750e3c27f2f3/adr/0016-home-assistant-core.md

Supported Operating Systems and versions

  • All major Linux distributions, latest stable and major versions.
  • Windows; only using WSL.
  • macOS; Python via Homebrew.

Absolutely nothing there about Debian

No, it won’t eliminate them. There’s plenty of times when HA moves to a new version of Python before Debian. There’s also been challenges around other libraries (eg ffmpeg).

1 Like