Sobre o projeto

# Home Assistant Operating System O Home Assistant Operating System (anteriormente HassOS) é um sistema operacional baseado em Linux otimizado para hospedar o [Home Assistant](https://www.home-assistant.io) e seus [Apps](https://www.home-assistant.io/apps/). O Home Assistant Operating System usa Docker como seu mecanismo de contêineres. Por padrão, ele implanta o Home Assistant Supervisor como um contêiner. O Home Assistant Supervisor, por sua vez, usa o mecanismo de contêineres Docker para controlar o Home Assistant Core e os Apps em contêineres separados. O Home Assistant Operating System **não** é baseado em uma distribuição Linux regular como Ubuntu. Ele é construído usando [Buildroot](https://buildroot.org/) e é otimizado para executar o Home Assistant. Ele tem como alvo dispositivos de computação de placa única (SBC) como Raspberry Pi ou ODROID, mas também suporta sistemas x86-64 com UEFI. [![Home Assistant - Um projeto da Open Home Foundation](https://www.openhomefoundation.org/badges/home-assistant.png)](https://www.openhomefoundation.org/) ## Recursos - Leve e eficiente em memória - I/O minimizado - Atualizações Over The Air (OTA) - Atualizações offline - Modular usando o mecanismo de contêineres Docker ## Hardware suportado A lista de hardware suportado é definida por [ADR-0015](https://github.com/home-assistant/architecture/blob/master/adr/0015-home-assistant-os.md). Cada nova adição de hardware deve atender pelo menos aos requisitos definidos em [ADR-0017](https://github.com/home-assistant/architecture/blob/master/adr/0017-hardware-screening-os.md) e passar por uma proposta de design de arquitetura. Para documentação explicando detalhes das placas suportadas individualmente, consulte a seção [Suporte a placas](https://developers.home-assistant.io/docs/operating-system/boards/overview) dos Documentos do Desenvolvedor do Home Assistant. ## Primeiros passos Se você só quer usar o Home Assistant, o [guia oficial de primeiros passos](https://www.home-assistant.io/getting-started/) e as [instruções de instalação](https://www.home-assistant.io/hassio/installation/) mostram como baixar o Home Assistant Operating System e colocá-lo em funcionamento na sua máquina. Se você está interessado em saber mais sobre o Home Assistant Operating System e como ele funciona, continue lendo... ## Desenvolvimento Se você não tem experiência com sistemas embarcados, Buildroot ou o processo de construção para distribuições Linux, é recomendado ler sobre esses tópicos primeiro (por exemplo, [Bootlin](https://bootlin.com/docs/) tem recursos excelentes). A documentação do Home Assistant Operating System pode ser encontrada no [site dos Documentos do Desenvolvedor do Home Assistant](https://developers.home-assistant.io/docs/operating-system). ### Componentes - **Bootloader:** - [GRUB](https://www.gnu.org/software/grub/) para dispositivos que suportam UEFI - [U-Boot](https://www.denx.de/wiki/U-Boot) para dispositivos que não suportam UEFI - **Sistema Operacional:** - [Buildroot](https://buildroot.org/) Linux LTS - **Sistemas de arquivos:** - [SquashFS](https://www.kernel.org/doc/Documentation/filesystems/squashfs.txt) para sistemas de arquivos somente leitura (usando compressão LZ4) - [ZRAM](https://www.kernel.org/doc/Documentation/blockdev/zram.txt) para `/tmp`, `/var` e swap (usando compressão LZ4) - **Plataforma de contêineres:** - [Docker Engine](https://docs.docker.com/engine/) para executar componentes do Home Assistant em contêineres - **Atualizações:** - [RAUC](https://rauc.io/) para atualizações Over The Air (OTA) e USB - **Segurança:** - [AppArmor](https://apparmor.net/) módulo de segurança do kernel Linux ### Builds de desenvolvimento O Workflow de Ação do GitHub para build de desenvolvimento é um workflow acionado manualmente que cria builds de desenvolvimento do Home Assistant OS. Os builds de desenvolvimento estão disponíveis em [https://os-artifacts.home-assistant.io/index.html](https://os-artifacts.home-assistant.io/index.html).