Skip to main content
  1. Posts/

Infinitude Home Assistant Addon

·2 mins

I recently completed initial work on a project, packaging Infinitude nicely as a Home Assistant Add-On.

Infinitude is a project that makes it possible to programmatically interact with Bryant thermostats, which I use at home. There is also an integration which allows the Home Assistant home automation platform to integrate with it. This project solves the piece of how one runs Infinitude itself, by packaging it neatly as a Home Assistant Add-On.

The repository is sosheskaz/infinitude-ha-addon.

Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.

Releases henceforth will use a date-based version string, i.e. YYYY.MM.DD.BUILD, where BUILD is the absolute chronological release number. Some releases may not be pushed.


Technical Information #

I’ve created GitHub actions to:

  • Automatically update infinitude’s source code.
  • Create a release with a push of a button, and promote it to experimental.
    • Creating a release also includes pushing images to GHCR.
  • Automatically open a PR to promote from experimental to stable, to be merged once experimental has been stable.

This repository tracks infinitude’s source as a submodule. While this is generally undesireable, it’s currently the best way to keep builds relatively immutable, while still tracking updates.

The images were also modified to track home assistant’s base images, which include some benefits like a supervisor, and certain baked-in utilities that reduce the overhead of this project and allow for potential refactoring improvements later, to simplify configuration management.

This will keep overhead minimal, and make sure that updates raise a signal to me directly in the form of a PR, instead of requiring me to become aware of it through other means.

I will run the experimental version at home, to “kick the tires” before pushing it to stable.