Installing Home Assistant Supervised on Debian 11

Tags: #<Tag:0x00007fc40b018ef8>

Raspberry Pi OS is not a supported OS by Home Assistant, you may want to check out this guide instead for installing Debian 10 on a Pi.

This guide and thread is discussing Debian 10, not Raspberry Pi OS :wink:

@kanga_who Raspberry pi OS 64 bits is based on Debian 10… So after installation, it says “supported Yes” !.. :wink:
But I understand and accept that Raspbian OS 64 bits is under development and assume all the risks associated with it but Debian 10 light is so light that it is not meeting my requirements (VNC and browser access)… Nevertheless your procedure is also working for Raspbian OS, that’s my point… So I thank you for that, you saved me time and a lot of goggle search !

same problem here today 12/12/2020.
I try to modify file sources.list…but same resoults…

Ping is ok.
I made sudo update && upgrade.
all packages are update…but can not install network manager -software utilities-app armor - jq

Before doing an apt upgrade or after the downgrade of Docker it is best to do:

apt-mark hold containerd.io
apt-mark hold docker-ce-cli
apt-mark hold docker-ce

This prevents Docker from being upgraded. If in the future the supervisor has been fixed and is able to work with the 20.x version of Docker, you can undo these by:

apt-mark unhold containerd.io
apt-mark unhold docker-ce-cli
apt-mark unhold docker-ce

(This information was taken from: https://linoxide.com/linux-how-to/exclude-specific-package-apt-get-upgrade/)

1 Like

Hi, Thanks for all the help. Linux an HA noob here…

I’m trying to get HomeAssistant supervised on an PC. followed the intructions and got all the way through to a working Home Assistant supervised, but when I reboot the it will not restart.

I followed the instructions here

and got it to restart, but it was Home Assistant Core(?) - not supervised.

My understanding is that the scprit should have set it up to autostart but I have tried a few times with no success. How can I get it to autostart supervised?

Myself and some others have posted this in a couple of other threads. The only issue it introduces, which you have covered off with the commands to un-do it is, people will forget what they have done and come back saying they now can’t upgrade, help, help! I’m not saying it’s a bad idea, but I can now see that it will potentially create another wave of user issues not being able to update Docker when needed.

It’s actually easier to stop OS updates for a week or so until Docker revert the changes they made and HA update the Supervisor.

1 Like

sudo apt install docker-ce=5:19.03.13~3-0~debian-buster

I did a apt update and apt upgrade then tried the steps you suggested and the file above isn’t found ???

any suggestions?

You should add the docker repository first, please see:

under the heading " Install using the repository ". After that you can follow the commands above.

Does anybody have an idea for this problem? I tried again but I can’t get past step 4.

Just follow the guide, but at step 2.2 you must change (for now) the way you install docker. You can’t use the automatic install script from docker, but instead you have to do this:

sudo -i

apt-get install -y software-properties-common apparmor-utils apt-transport-https ca-certificates curl dbus jq network-manager

systemctl disable ModemManager

systemctl stop ModemManager

Here comes some steps that differ from the guide.

1) Add docker repository to Debian
see: https://docs.docker.com/engine/install/debian/#install-using-the-repository for more info.

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

Add docker’s official GPG key

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

Set up the Repository

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/debian \
   $(lsb_release -cs) \
   stable"

2. Install old version of Docker

sudo apt install docker-ce=5:19.03.13~3-0~debian-buster

sudo apt install docker-ce-cli=5:19.03.13~3-0~debian-buster

sudo apt-get install containerd.io=1.3.9-1


3. Optionally: disable automatic update to newer version of docker
Please note, that this is optional. Only do this if you want to upgrade your debian and other packages. I advise just to not update till the issues with docker/supervisor are solved.

See: Installing Home Assistant Supervised on Debian 10

4. install hass supervised using the supervised install script

curl -sL "https://raw.githubusercontent.com/Kanga-Who/home-assistant/master/supervised-installer.sh" | bash -s

**5. Follow the guide from 2.3 onwards, but don’t upgrade using apt-get upgrade if you didn’t disable automatic updates to docker (step 3 of my post)

I hope this helps.

I successfully managed to install HA in Supervised Mode using this guide.

There only was a slight difference to the initial guide:

I used

curl -Lo installer.sh https://raw.githubusercontent.com/home-assistant/supervised-installer/master/installer.sh
(which is the same as the installer.sh mentioned in the original post besides some initial comment parts)

but as I am running on a Raspberry Pi i needed to adjust the installer part according to https://github.com/home-assistant/supervised-installer#installation by using

sudo bash installer.sh --machine raspberrypi3

Without the specification of the machine type the installer would not successfully finish.

To those having issues with docker not starting containers correctly. There is an active alert for docker 20.10 on Debian (also affects other distros).

Docker 20.10 not compatible with Supervised installations

On December 9, 2020 Docker released version 20.10. This version is currently not compatible with the Supervisor that is running on a Supervised installation. If you are running our Home Assistant Operating System or Home Assistant Core directly in Docker, this alert does not apply to you.

There are 2 parts to this issue. The first is the removal of filtering of images over the API, this results in images not being recognized by the Supervisor correctly.

The second issue is changes in how the systemd service for Docker works, which results in the service hassio-supervisor not being able to start on system boot.

Workaround

The only known workaround at this point is downgrading Docker to the previous version. The example below is for Debian 10. If that is not your OS, check the documentation for your OS’s package manager on how to perform the downgrade.

apt install docker-ce=5:19.03.14~3-0~debian-buster
apt install docker-ce-cli=5:19.03.14~3-0~debian-buster
apt install containerd.io=1.3.9-1

When the downgrade is complete, do a system reboot. Once it has fully started you need to run ha supervisor repair and ha supervisor restart to fix problems with add-ons.

1 Like

deleted by author

When I run
apt install docker-ce=5:19.03.14~3-0~debian-buster
I get an error that the version is not found:
[email protected]:/home/xxxx# apt install docker-ce=5:19.03.14~3-0~debian-buster Reading package lists... Done Building dependency tree Reading state information... Done E: Version '5:19.03.14~3-0~debian-buster' for 'docker-ce' was not found

And when i run an apt update i get stuck on the same error as before:

[email protected]:/home/xxxx# apt update
Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]                                     
Hit:2 http://deb.debian.org/debian buster InRelease                                                                     
Hit:3 http://deb.debian.org/debian buster-updates InRelease                                             
Reading package lists... Done                                                       
E: Method https has died unexpectedly!
E: Sub-process https received a segmentation fault.

Hi all and thanks for a write-up on this.

However, following the “new” setup - when I get to the software-properties-common part, it can’t find the package. Have I missed a step? Running the newest Debian build I could find 10.7…

Replying to myself in case anybody wonders about the same.

Issue was solved by adding more repositories to my etc/sources.list. Google it and you’ll find what Debian 10 sources should be there.

@kanga_who do you think that the supervised installation script could be executed from within a specially crafted docker container in a docker-outside-of-docker way?
If that worked the host restrictions could hopefully be circumvented.

Hi there and thank you very much for a detailed step-by-step guide and the script. I however ran into a couple of issues.

  1. On step 1.14, I have to select ‘Yes’, not ‘No’, to get to select my country and the download location of packages.

  2. On step 1.10; if I made a root password, I was not able to run the Home Assistant install script in step 2.2.

Then of course I followed the steps in this post by Kanga_who, which I probably could have avoided by installing the right version of docker to begin with, but I wasn’t sure.