Flatcar Gladys Assistant

Flatcar: a Linux OS for Gladys Assistant

Hello everyone.

First of all I should say that I haven’t been a Gladys user for over a year. I made that choice because at the time Z-Wave support was too limited. I’m on Home Assistant with Z-Wave, Matter and Zigbee dongles and replaced my RasPi 3 with a Home Green because I no longer want to tinker with or maintain the OS.

I continue to follow the project and I looked into the mini-PCs being sold and the PC installation tutorial. I wondered whether installing an Ubuntu Server was really the right solution, especially for users who are novices with computers. Indeed, Ubuntu Server LTS is a high-quality operating system, however it has some limitations which I will list:

  • Although security updates are done automatically during the 4-year LTS period, the kernel is not. The risk is having a kernel that doesn’t have the drivers for your new USB dongle. Also you will have to manually upgrade Ubuntu to the next LTS which brings risks.
  • Over the years Ubuntu gets heavier and is becoming less lightweight. Many services are not useful.

Starting from this premise I also thought that Gladys only needs Docker to run. I then set out to find a lightweight PC OS that is quick to install, includes Docker and always updates itself automatically (no LTS).

After some research I came across Flatcar Container Linux and after tests it works very well. I won’t detail Flatcar — you can find more explanations on their site. In short, it’s an immutable Linux designed and optimized for Docker containers. It is focused on stability and always up to date. If an update goes wrong it reboots to the previous version and waits for the next one. The ideal candidate. For the project’s longevity it is funded by Microsoft which offers it on Azure and Flatcar has been accepted as an incubating project by the Cloud Native Computing Foundation (CNCF), which gives the project more neutral, community governance instead of being tied to a single company.

Installation on PC

The installation procedure and configuration are on my GitLab repo Flatcar-GladysAssistant with a description of the services.

The installation is easy and reproducible. I currently have a mini-PC with Gladys and other services that I find necessary. I tested my Zigbee SMLIGHT dongle and it is correctly detected by the OS and Gladys.

I deployed a Docker with Avahi to have a local address ‹ gladysbox.local › which is much more convenient than looking for the IP on the internet router.

I have Portainer for managing the Docker containers.

WebSSH2 to connect to the PC.

For that you need the IP address because the ‹ gladysbox.local › address doesn’t work.

It has been running for several days and updates itself. However, since I don’t want to break my Home Assistant installation I cannot validate that it works with all my devices.

So it’s not possible for me to certify that everything works and moreover Flatcar has limitations. In addition, I will have to return the mini-PC after the holidays.

Limitations

There are still limitations. Indeed it is not possible to install applications because there is no package manager and the system is immutable. It is still possible to use toolbox to install applications for debugging but within a Docker. It is also possible to add or enable extensions such as Nvidia driver support but it must be done at installation.

To put it simply, you must use Docker :slight_smile:

Things to add in Gladys

Gladys should display the PC’s IP in the system settings to avoid checking the internet router. Also, since I am not a user I cannot identify what is missing for everything to work.

Conclusion

You can pick up my work and make it your own. Even if it doesn’t interest you that’s fine — in any case I had fun with it.

If you have questions I’ll try to answer them.

I wish you happy holidays.

3 Likes