Skip to content

1.7.0

Latest

Choose a tag to compare

@DustyArmstrong DustyArmstrong released this 28 Aug 12:07
c216d74

Features

This is a big update intended to address some open issues, improve things overall, update (and remove some) dependencies, and set up for both two-way communication and further Home Assistant integration (e.g. sensors) in the near future, if and when I get there. This release is more of an overhaul, you could argue it as 2.0 but I'd rather save that for later.

Release readiness confidence level: pretty good, I think it all works.
Release scariness level: pretty high, I hope does actually all work.

Windows/Linux/Mac

Following discussion in #38 have reverted to the Electron net module for all networking broadly. This should allow the use of mTLS certificates from the local store. Users may also find they can now use self-signed CA/certificates more easily as a result (requires confirmation).

Migrated health check to websockets to reduce bandwidth overhead, and set up for future functionality. The websocket is authenticated using the auth_token provided by Home Assistant during each session. This token is refreshed fairly often and checks are implemented for expiration, so it shouldn't cause problems. This route was chosen as it also negates the need for the manual creation of any long-lived tokens and my then needing to store them somewhere. Testing so far has been pretty solid.

On the above, you can create a pseudo long-lived token by disabling token expiration for your Home Assistant Desktop session via your user account from within the app (User > Security > {Session} > 3 Dots > Disable token expiration). This will avoid any refresh issues, though they should generally be accounted for.

Added a new F5 refresh setting that can be toggled, enabling this performs a standard browser refresh of the window when it's focused. The other, heavier options still remain in the menu as before.

Linux

Added pacman targets to build for #41. This release target is currently in beta, just something to be aware of (please inform the Electron team for any bugs relating to that specifically -> https://github.com/electron/electron). Testing locally with my own Arch builds (ARM and x86) was not overly successful and the AppImage remains my preferred following tests.

Linux is still a complex platform to target and functionality remains "best effort" currently. The primary issue remains with Wayland, for which there is currently also a bug in the Electron upstream where tray icons are missing (but this has always been broken to some extent for me). It's something I'll continue working on, but it is elusive (particularly as an amateur). Please refer to the README for sample .desktop files if you're unsure and have just recently started using Linux (welcome, I left Windows too!). Registering shortcuts also doesn't work with Wayland due to its design features/limitations. Contributions are welcome if I am missing something obvious that a more experienced developer would catch immediately - please open an issue and PR.

Other

  • Code changes.
  • Bumped deps.
  • Moved repo to a multi-file structure for easier maintainability.
  • Reduced reliance on external dependencies.
  • Various fixups.

Note

Due to the transition from HTTP to websockets, your first load may encounter an issue with authentication (it shouldn't, but it might) - a restart will resolve it.

Data usage should be slimmer with the transition to websockets. Previously, there were HTTP GET requests every few seconds, which as one user stated, adds up to around 1-2MB per hour (less than ideal for mobile data). With websockets, this should be in the region of a handful of KB per hour.

General feedback or issues are welcomed. Builds tested on Mac (ARM), Windows (x64/ARM) and Linux (x64/ARM - extra setup required depending).

PS: I'm primarily just having fun with it and that's my main focus, but for those who do happen to use this, please enjoy the work of this (decidedly amateur) small human.

Release Hashes

Filename SHA256 Hash
Home Assistant Desktop-v1.7.0-linux-aarch64.pacman 9c14658249e6c4e13504e214901f9b19b15877c4cc905d73f722e50e79424c4a
Home Assistant Desktop-v1.7.0-linux-aarch64.rpm ea59f4004c481e46eb162d41eaf7a5e2674ce48cbdc6a216fa60a74dce869878
Home Assistant Desktop-v1.7.0-linux-amd64.deb 7c75e4c00af608383b10c4874f83bb2d02cae80776f3ad3cfca5ba1c5ea9dff4
Home Assistant Desktop-v1.7.0-linux-arm64.AppImage 3014a21fef5efcc684e3cc7cef08727c0c46db1c9f13d52eebc31d0fdc878009
Home Assistant Desktop-v1.7.0-linux-arm64.deb 4bea465ce77a158569f7ab50a27e9b08251477116543ff17d2a95e367b8eba08
Home Assistant Desktop-v1.7.0-linux-x64.pacman 05c5abbe00f45920898c15cec7d163856658abea6150fc149a615e07f32c6eb9
Home Assistant Desktop-v1.7.0-linux-x86_64.AppImage 64c846887234eeac52ca5415fd24daf14bdcf0d4fa61b729f4625edc0b5f7888
Home Assistant Desktop-v1.7.0-linux-x86_64.rpm af58c7a12665baa4ce8efea65779d4ab6de7bb657df7739ad555d9e10f6235a4
Home Assistant Desktop-v1.7.0-mac-arm64.dmg 0ae09c57c07cb19a15dc352db83684ed3a8c6191f0071bda151f726f464a3f3d
Home Assistant Desktop-v1.7.0-mac-x64.dmg 8aa626614b1f96156c2574a1dbd70630c0672551861fa3493be319bbbed015c8
Home Assistant Desktop-v1.7.0-win-arm64.exe 19a634d51521fca4ebcb41113fc9a95c151955105fe09b39495fe2e99d5a3b3d
Home Assistant Desktop-v1.7.0-win-x64.exe d6f06e1b914426e1b65f6f040c877d2547460f10cbd6e6e361b3f496d46e962c

What's Changed

Full Changelog: 1.6.10...1.7.0