Install on Ubuntu 20.04 without any container tech?

I am trying to figure out if it is possible to run on Ubuntu 20.04 without any containers (docker or otherwise).

After a bit of a research I found that there is no Ubuntu 20.04 repository for Home Assistant, and only Home Assistant Core is supported (installed via pip, if I am correct).

I am very new to Home Assistant, and the reason I want to use Home Assistant is so I can tie whole bunch of microcontroller devices and various other monitoring into one web ui control panel type of thing.

I do not want to run things in dockers (I call them vserver 2.0).

I am confused about Home Assistant Core, does it have a web ui?

Once Home Assistant is installed via any method, the feature set is largely the same. The only difference is with the Supervised installs, where you gain access to the Supervisor and Addon/Ingress support. Otherwise, you won’t be able to tell the difference from the UI. There’s nothing about Docker to be afraid of really, so I think you’re tossing out the Container option unnecessarily. In any case, you can still build a Python venv and install it there manually.

2 Likes

Thank you!

That is good to know.

I will try plain pip install route.

Docker rant:
I am not affraid of the dockers, I just had enough with the devs pulling docker images from interwebs and running them as root :wink: (just my professional experience).

2 Likes

Do you have some python skills and now how to handle venvs?

Yep, I have python/linux skills enough to cobble my own version of homeassistant, I would rather not if there is already an opensource project out there.

Just to elaborate: I was going to build a REST API end point using Flask, and then make some minimalistic web ui, then I thought why not look into homeassistant.

It’s fine then to use a venv. I’d still suggest a Supervised install. It makes things so much easier, especially for new users, gives you access to a lot of useful addons, you get automatic backups etc.

Excuse my ignorance, but without add-ons in the core, is it possible to re-implement some of the functionality via API?
I assume add-ons are just software that talks to home assistant via API?

For the context: I don’t use commercial ‘IoT’ devices, and the devices I want to monitor/control have 100% of my own code on them (generally they communicate via REST).
I also would rather have “external” software (be that nginx or icinga) configured by myself.

Just browsing the add-on forum page and some of the add-ons seems more of interface than software…

The question is why Core does not support addons?

Addons are just a convenient way to install pre-configured software that you can otherwise install manually. You get some nice features with addons like being able to update via point-and-click and the ability to tunnel through HA to an addon web interface (Ingress), but that may or may not be of interest to you. Addons typically communicate through HA integrations, and those integrations can communicate with your own installed software as easily (an MQTT addon vs. a separate native or container install, for instance).

A Supervised install manages an ecosystem of containers, one of which is Core. Supervisor and addons are additions to Core and will never be part of it.

The need to maintain your own venv and to re-create it when moving to a new Python release is the main reason that most gravitate to containers or supervised installs, but you have options.

1 Like

Thank you! Your reply has been very insightful.

Now I have a clear idea what is involved.