As of sep/2019, what still detains you from migrating to HassOS from HassIO or HA?

I open this thread to help myself, and hopefully the devs, to clarify why I’m still waiting to move on to HassOS, which I tested maybe too superficially.

HassOS is becoming a great solution, a temptation stronger every new release, especially for SBC fans like me.

I was able to build a customized HassOS from buildroot using vagrant, but I think it would be silly for me to continuously run after official HassOS updates.

This is my “detains” list:

  • Option to make the SD read-only, except for system updates, moving the rw partitions on another device, probably an USB storage.
  • rpi-clone already installed, ready to be executed from cron, maybe with a GUI option for a scheduled nightly backup.
  • iperf3 server/client.
  • Some form of High Availability or automatic failover, simpler than a k3s cluster, maybe based on rsync and keepalived.

Some of these things could be solvable just now with some trick I missed, any advice is welcome.

EDIT: please keep bugs out of this thread, it’s only for main features.

Thanks,
Piero

Just for the sake of limiting confusion:

  • HassOS - the embedded OS used for the Hass.io images
  • Hass.io - one of the methods for installing Home Assistant
  • Home Assistant - the software we all run

You can’t migrate from HassOS to Hass.io, or to Home Assistant, since they’re all very different things.

1 Like

I won’t go to hassos for the reasons you detail, inability to add software I may want to use. I may consider hassio on ubuntu though.

I won’t switch because I want to be in charge of my host OS

1 Like

+1 to this.

I’m staying with hass.io just because it’s so easy. I already maintain a plethora of OSes, VMs, and their backups. I migrated my hass.io from a pi to a VM and it’s pretty stable, and easy to maintain.

I use this HassIO add-on to create scheduled snapshots which are automatically uploaded to Google Drive. It has a nice GUI config. No need for rpi-clone.

1 Like

@sparkydave I also use the same excellent addon, but it’s limited to HassIO config backups.
rpi-clone is another thing, it incrementally backups the full SD, so in case of SD failure a manual SD swap is enough to restart almost immediately.

@nickrout You’re right, I hope the devs could partially solve this with an option to overlay also some root directories, something like what OpenWrt does with opkg.
Alpine Linux has apk as its package manager, but AFAIK buildroot doesn’t have one, because it’s designed for fixed systems.

As an alternative, the solution may be an HassIO (docker) addon with a plain OS, so one can run Raspbian Lite, Arch, Armbian, or other OS as an addon. SBC are everyday more powerful and with more RAM, the PI4 with 4GB is changing the HassOS SBC perspective.

You can already do that.

@nickrout I’m new to docker, please can you explain how to do it on a PI4? Using docker CLI or Portainer? I was just looking around how to find/build an arm Linux image, but I didn’t jet start tinkering on this.
Thanks,
Piero

Using the ‘generic Linux’ install you can install HassIO on top of Ubuntu / Debian etc. Commonly people will install Ubuntu Server, Docker, HassIO.

Here is a great guide on how to do it.

Tanks @sparkydave, but my point isn’t how to install HassIO.
It’s how to migrate to HassOS without loosing the benefits of “owning the box” by having full control over a Linux which sits over that box, provided one trusts the HassOS buildroot “firmware” devs.

Being all opensource software, IMO it’s tolerable one trusts the HassIO devs for software sanity and regular updates, at least as much as one trusts Home Assistant devs.
At this point buildroot becames a regularly updated SBC firmware extension, and the real OS is docker. This shouldn’t break too much of the R.Stallman’s principles :wink:

Maybe this can be simply obtained on HassOS with the “docker official” minimal (5MB) Alpine Linux HassOS/HassIO addon, I will try to study also this way, but I never tinkered with docker or HassOS addons.

Such a solution leaves always free to turn back from HassOS to HassIO over his/her fully controlled+updated+upgraded+issuessolved+etc native Linux OS. And even to rewrite HASS from scratch :wink: but I prefer to waste my time on other things.

Someone can help trying the Alpine HassOS addon way?
Thanks,
Piero

1 Like

Well you appear to be confused. Did you follow my link? HassOS wont give you access to the underlying host. Installing HassIO on top of Ubuntu / Debian / whatever Linux will. You can’t install HassOS on top of one of those Linux versions. HassOS takes the place of one of those other Linux versions.

@sparkydave you’re right, maybe I didn’t explain well.

I don’t need to control the underlying OS if I get the same freedom of adding Linux functions using a small docker container, which is almost maintenance-free as it requires far less maintenance workload than a full OS.

I don’t want to install HassOS over Linux or in my docker SBC, I would like to install a small but fully controllable Linux inside a docker container over HassOS,(EDIT: which runs natively on a PI4 SBC), thus freeing me from maintaining the software where sits my Linux functions.

It may be a small step towards the modern “Functions as a Service” concept (i.e. OpenFaaS), which I’m using on a k3s cluster.
P.

…but why not just install HassIO as per my previous link? (HassIO on top of Generic Linux with Docker) There are a lot of people on here that will tell you its the best way to go. This way you can have HassIO with all of it’s benefits as well as Docker containers for any other Linux applications you want to run.

1 Like

If I understood correctly your link content, because that way I must take care of the Linux on which docker sits (the SBC boot OS) and/or the Linux on which HassIO sits (the HassIO docker container).

Unless both those Linux are Alpine/buildroot, but this seems just what HassOS does. And it offers one-click updates/upgrades, which I don’t consider a workload.

Thank you for very appreciated patience of explaining me.
Piero

…and yes I like the HassOS concept, but as per original post I need some more functions, which can be added to their buildroot by the devs, or anyone can freely manage on his/her own using an HassOS Alpine addon - or some other equivalent maintenance-less solution.

You can:

  1. fork hassos and add whatever extra packages you want via buildroot build. You’ll be maintaining that yourself.

  2. Run alpine as your base OS, install docker, and add the hassio docker builds, that’s one for home assistant, one for the supervisor and one for the dns server. You’ll be maintaining that yourself.

  3. Run debian (which is probably OK with Stallman, although don’t quote me on that) and run hassio on top of that. That is a supported config that you have been referred to earlier in the thread.

1 Like