# Why I Chose Home Assistant OS


<img src="/images/home_assistant.png" alt="Home Assistant" width="100px" style="float: left; margin-right: 10px; margin-bottom: 10px;" />

For setting up [Home Assistant](/technical/my-story), there
are [several choices](https://www.home-assistant.io/installation/):
Home Assistant OS, Home Assistant Container, Home Assistant Supervised, and
Home Assistant Core.

I chose Home Assistant OS for a few reasons.

# First Choice

## Home Assistant Container

For those that know me, you'd probably be surprised that I went with Home
Assistant OS. I'm a tinkerer and like to have full control over my systems.

I originally did install Home Assistant Container. It's great: you install
the container (I used Docker Compose) and then for the additional services
you'd install (like Add-Ons in Home Assistant OS), you install those yourself
as separate Docker containers.

This was right down my ally.

# Other Options

## Home Assistant Supervised

I did play around with Home Assistant Supervised for a while. It's similar
to Home Assistant OS except that instead of using their OS image, you build
your own Operating System (using their supported OS: Debian Buster).

Pretty much everyone that supports Home Assistant (like on their Discord)
recommends not using this method as it's prone to breakage and difficult if
you are not an expert with Linux, Networking, Home Assistant, and Docker.

## Home Assistant Core

With this method, you're running the bare Home Assistant Python code in a
Virtual Environment (venv). This never seemed appealing to me.

# The Change

One day I was thinking about how Holly (my wife) might manage this stuff if
something were to happen to me. And I thought about how difficult it would
be for something who isn't a Linux admin and doesn't know Docker to manage the
Container Installation.

So, to make sure that she could continue to use Home Assistant and pretty much
manage it herself, I decide to switch from the Home Assistant Container install
to Home Assistant OS.

## Procedure

After installing Home Assistant OS on my server, I copied over the /config
directory (including the dot files like .storage) from my container install
into the /config directory on the new server.

Then it was a matter of installing the Add-Ons for each of the other services
I used: Assistant Relay, MariaDB, Mosquitto Broker, Studio Code Server,
TasmoBackup, Unifi Network Application, Vaultwarden, and Zigbee2MQTT. In some
cases, it was as easy as copying over a config file from my old server to the
new one. In other cases, I had to use my old configuration to go through the
Configuration panel and manually enter the information to set up the Add-On.
All in all, it took me about a day (probably just a couple hours) to get
completely set up on the new server.

# Conclusion
Every once in a while, I wish I had the flexibility of the Container install
method. But I sleep well at night knowing that if something were to happen
to me, Holly would be able to figure out how to manage Home Assistant and keep
it up to date.


