Supervisor update

Renaming snapshot to backup

“Snapshot” is a term that we have been using in the Supervisor since the beginning, but it’s not very descriptive for those that do not know what it is. Over the next few weeks, we will start using “backup” in all our software and documentation.

The functionality of it does not change, this is just a rename to make it more understandable.

Supervised installations

Having a supervisor does not make it a supervised installation, Home Assistant Operating System also has this, the information below does not apply to Home Assistant Operating System.

While we try not to break supervised installations, we do have a few things we need to change. These adjustments you have to manually apply to your installation. Without these adjustments you will start to see warnings in your logs, and your installation will eventually be marked as unsupported.

If you are interested to make changes required on supervised installations more maintainable, have a look at the blog on the developer site.

As an alternative to doing these adjustments, you can migrate your installation to Home Assistant Operating System.

Bullseye

Two weeks ago Debian 11 (Bullseye) was released. The upcoming version of the Supervisor will recognize that version as a supported Operating System. This means that if you are running Home Assistant Supervised, you can start upgrading that.

Support for the previous version (Debian 10 (Buster))is now deprecated and will be removed in the first version of the Supervisor after the 4 months grace period. This means that within the next 4 months you need to update to Debian 11.

Environment variables

There are a few environment variables that you have to add in order to make the Supervisor work properly with newer versions of the Supervisor. These variables have to be added to the run command for the Supervisor container, on most installations this is a script called from a service file.

  • SUPERVISOR_SHARE - The path to the directory for the Supervisor data files, typically /usr/share/hassio.
  • SUPERVISOR_NAME - The name of the supervisor container, typically hassio_supervisor
  • SUPERVISOR_MACHINE - The machine you are using. For a list of machine types, have a look here

OS Agent

Recently, we created an OS Agent. OS Agent allows for better communication between the host OS and the Supervisor which will enable new features. You can find the installation instructions for OS Agent in its GitHub repository.

If you you are interested we have also just published a blog on the developer site.


This is a companion discussion topic for the original entry at https://www.home-assistant.io/blog/2021/08/24/supervisor-update/
2 Likes

I use a couple of instances of the API endpoints that are to be depreciated. When will this change to /core (from /homeassistant ) be available (version #)?

As of about a year ago :grin:

Machine type for a generic amd64 install, do I choose intel-nuc or qemux86-64 ?

or generic-x86-64 / the supervisor installer is out of date

1 Like

Lol. Thanks. I’ll switch them over then.

Is it just me or is it not stated any where from which version this applies?

How can I see which run command is used for the supervisor and how can I add the new envs to it?

For the naming it does say “over the coming weeks” so whenever a new Supervisor update gets released.

For the Supervised issue, in 4 months

Is it going to impact HA installations based on older versions of Home Assistant Operating System (5.x)?

Debian has absolutely nothing to do with HAOS (whatever version that might be)

Yes, according: architecture/0015-home-assistant-os.md at master · home-assistant/architecture (github.com) all OS < 6.x will show a unsupported message because of missing OS-Agent in coming months, but not this days :slight_smile:

1 Like

I don’t get it. These are already present ?

    docker run --name hassio_supervisor \
        --privileged \
        --security-opt apparmor=hassio-supervisor \
        --security-opt seccomp=unconfined \
        -v /run/docker.sock:/run/docker.sock:rw \
        -v /run/dbus:/run/dbus:ro \
        -v /run/udev:/run/udev:ro \
        -v /etc/machine-id:/etc/machine-id:ro \
        -v "${HASSIO_DATA}":/data:rw \
        -e SUPERVISOR_SHARE="${HASSIO_DATA}" \
        -e SUPERVISOR_NAME=hassio_supervisor \
        -e SUPERVISOR_MACHINE="${MACHINE}" \
        "${SUPERVISOR}"

Then you are covered in that regard :+1: others might not be.

1 Like

Upgraded to bullseye, installed osagent, but the test failed

-bash: gdbus: command not found

And this is probably normal waiting for the next supervisor:

I have also upgraded to Bullseye, but I got the *.deb installed just fine.

How do I check this ?

You’ll need to install gdbus first by running sudo apt install libglib2.0-bin.

2 Likes

grep ExecStart= /etc/systemd/system/hassio-supervisor.service on my supervised installed revealed /usr/local/sbin/hassio-supervisor as the supervisor startup script. You should find above quoted docker run call in there.