Home Assistant Core -- TrueNAS CORE Community Plugin

Hello, when im trying to install AppDeamon through the menu, i’m getting the next error, anyone know how to fix this?

 ERROR: Command errored out with exit status 1:
   command: /usr/local/share/appdaemon/bin/python3.8 /usr/local/share/appdaemon/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /tmp/tmp6ahl9016
       cwd: /tmp/pip-install-le4zmm2m/cryptography_f43255284b7e447f946629c7a708b15e
  Complete output (149 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  copying src/cryptography/utils.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  copying src/cryptography/exceptions.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  copying src/cryptography/fernet.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  copying src/cryptography/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  copying src/cryptography/__about__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat
  copying src/cryptography/hazmat/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat
  copying src/cryptography/hazmat/_types.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat
  copying src/cryptography/hazmat/_der.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat
  copying src/cryptography/hazmat/_oid.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/extensions.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/base.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/certificate_transparency.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/general_name.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/ocsp.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/name.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  copying src/cryptography/x509/oid.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/x509
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_asymmetric.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hmac.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/constant_time.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/hashes.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/padding.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/cmac.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/poly1305.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/keywrap.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_serialization.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  copying src/cryptography/hazmat/primitives/_cipheralgorithm.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/bindings
  copying src/cryptography/hazmat/bindings/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/bindings
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/interfaces.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends
  copying src/cryptography/hazmat/backends/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs7.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/pkcs12.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/ssh.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/serialization
  copying src/cryptography/hazmat/primitives/serialization/base.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/serialization
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/concatkdf.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/pbkdf2.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/scrypt.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/kbkdf.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/hkdf.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  copying src/cryptography/hazmat/primitives/kdf/x963kdf.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/kdf
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/totp.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/utils.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/twofactor
  copying src/cryptography/hazmat/primitives/twofactor/hotp.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/twofactor
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/modes.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/base.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/algorithms.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/ciphers
  copying src/cryptography/hazmat/primitives/ciphers/aead.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/ciphers
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/rsa.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dh.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/utils.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/dsa.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x25519.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/x448.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed448.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ec.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/padding.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  copying src/cryptography/hazmat/primitives/asymmetric/ed25519.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/primitives/asymmetric
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/binding.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/_conditional.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/bindings/openssl
  copying src/cryptography/hazmat/bindings/openssl/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/bindings/openssl
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dh.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/utils.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/backend.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ocsp.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x448.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed25519.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hmac.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x25519.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/dsa.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ciphers.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ed448.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/poly1305.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/ec.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/aead.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/encode_asn1.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/cmac.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/x509.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/rsa.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/hashes.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  copying src/cryptography/hazmat/backends/openssl/decode_asn1.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography/hazmat/backends/openssl
  running egg_info
  writing src/cryptography.egg-info/PKG-INFO
  writing dependency_links to src/cryptography.egg-info/dependency_links.txt
  writing requirements to src/cryptography.egg-info/requires.txt
  writing top-level names to src/cryptography.egg-info/top_level.txt
  reading manifest file 'src/cryptography.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  no previously-included directories found matching 'docs/_build'
  warning: no previously-included files found matching 'vectors'
  warning: no previously-included files matching '*' found under directory 'vectors'
  warning: no previously-included files matching '*' found under directory '.github'
  warning: no previously-included files found matching 'release.py'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching 'codecov.yml'
  warning: no previously-included files found matching '.readthedocs.yml'
  warning: no previously-included files found matching 'dev-requirements.txt'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files found matching 'mypy.ini'
  warning: no previously-included files matching '*' found under directory '.zuul.d'
  warning: no previously-included files matching '*' found under directory '.zuul.playbooks'
  writing manifest file 'src/cryptography.egg-info/SOURCES.txt'
  copying src/cryptography/py.typed -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/cryptography
  running build_ext
  generating cffi module 'build/temp.freebsd-12.2-RELEASE-p2-amd64-3.8/_padding.c'
  creating build/temp.freebsd-12.2-RELEASE-p2-amd64-3.8
  generating cffi module 'build/temp.freebsd-12.2-RELEASE-p2-amd64-3.8/_openssl.c'
  running build_rust

      =============================DEBUG ASSISTANCE=============================
      If you are seeing a compilation error please try the following steps to
      successfully install cryptography:
      1) Upgrade to the latest pip and try again. This will fix errors for most
         users. See: https://pip.pypa.io/en/stable/installing/#upgrading-pip
      2) Read https://cryptography.io/en/latest/installation.html for specific
         instructions for your platform.
      3) Check our frequently asked questions for more information:
         https://cryptography.io/en/latest/faq.html
      4) Ensure you have a recent Rust toolchain installed:
         https://cryptography.io/en/latest/installation.html#rust
      5) If you are experiencing issues with Rust for *this release only* you may
         set the environment variable `CRYPTOGRAPHY_DONT_BUILD_RUST=1`.
      =============================DEBUG ASSISTANCE=============================

  error: Can not find Rust compiler
  ----------------------------------------
  ERROR: Failed building wheel for cryptography
  Building wheel for MarkupSafe (setup.py) ... done
  Created wheel for MarkupSafe: filename=MarkupSafe-1.1.1-cp38-cp38-freebsd_12_2_release_p2_amd64.whl size=17589 sha256=790b4648a2eb0dad1ea9e43fb20e359f1b7841c60e648124c641db6b406170b7
  Stored in directory: /tmp/pip-ephem-wheel-cache-jnzmay6g/wheels/0c/61/d6/4db4f4c28254856e82305fdb1f752ed7f8482e54c384d8cb0e
  Building wheel for multidict (PEP 517) ... done
  Created wheel for multidict: filename=multidict-4.7.6-cp38-cp38-freebsd_12_2_release_p2_amd64.whl size=52080 sha256=24bceaf8a9b2fe318242101c376ba2755abc3d47ebb030efe1885420c438a175
  Stored in directory: /tmp/pip-ephem-wheel-cache-jnzmay6g/wheels/78/82/3a/e149e5c0e123a9094d46ec7249c95ceff6d63c90dcdd2c295d
  Building wheel for ordered-set (setup.py) ... done
  Created wheel for ordered-set: filename=ordered_set-4.0.2-py2.py3-none-any.whl size=8210 sha256=c81e86d90674a5e1006454209c6e36222a0b65b64eb1b8e89c416324706e4a96
  Stored in directory: /tmp/pip-ephem-wheel-cache-jnzmay6g/wheels/a1/09/42/0b963b1d5423ddc87cb4ba9f475e09838d3813300b52a866ea
Successfully built bcrypt feedparser paho-mqtt pyyaml voluptuous yarl cffi MarkupSafe multidict ordered-set
Failed to build cryptography
ERROR: Could not build wheels for cryptography which use PEP 517 and cannot be installed directly

INFO: /home/homeassistant/appdaemon is not empty!

INFO: Example configuration will not be added.
WARN: appdaemon may fail to start with missing or invalid configuration.

I use DHCP and set a permanent (static) lease in the DHCP settings of my router as suggested by @Tromperie

I think you can also set a static IP address on the initial screen when installing a plugin for example to set 10.10.1.151

after the install, the settings looks like this


@ymestechwey - I just tested a clean install on TrueNAS 12.0-U2 and have the same errors - I’ll need to investigate

I assume your on TrueNAS. Can you say which version please?

On an AppDaemon related side note, I’ve been thinking about moving AppDaemon to it’s own plugin. Does anyone have an opinion on that?

No, but I haven’t used it yet either. Will it being in a separate jail affect how it works?
(On an unrelated matter, I will start up TrueNAS Scale and get back to that thread.)

@troy I’m running on TrueNAS-12.0-U1.1

I think it’s already going wrong with installing Home Assistant, I tried a fresh installation because I couldnt install a integration too, its was taking ages. I found this in the logging:

2021-02-15 07:46:51 ERROR (SyncWorker_4) [homeassistant.util.package] Unable to install package pytradfri[async]==7.0.6: ERROR: Command errored out with exit status 1:
command: /usr/local/share/homeassistant/bin/python3.8 /usr/local/share/homeassistant/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /tmp/tmpf_63h7px
cwd: /tmp/pip-install-3tpnfpnh/dtlssocket
Complete output (11 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8
creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/DTLSSocket
copying DTLSSocket/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/DTLSSocket
copying DTLSSocket/DTLSSocket.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/DTLSSocket
running build_ext
Running: autoconf
error: [Errno 2] No such file or directory: 'autoconf'
----------------------------------------
ERROR: Failed building wheel for DTLSSocket
ERROR: Could not build wheels for DTLSSocket which use PEP 517 and cannot be installed directly
WARNING: You are using pip version 20.2.4; however, version 21.0.1 is available.
You should consider upgrading via the '/usr/local/share/homeassistant/bin/python3.8 -m pip install --upgrade pip' command.
2021-02-15 07:46:51 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/local/share/homeassistant/lib/python3.8/site-packages/homeassistant/data_entry_flow.py", line 119, in async_init
flow = await self.async_create_flow(handler, context=context, data=data)
File "/usr/local/share/homeassistant/lib/python3.8/site-packages/homeassistant/config_entries.py", line 541, in async_create_flow
await async_process_deps_reqs(self.hass, self._hass_config, integration)
File "/usr/local/share/homeassistant/lib/python3.8/site-packages/homeassistant/setup.py", line 343, in async_process_deps_reqs
await requirements.async_get_integration_with_requirements(
File "/usr/local/share/homeassistant/lib/python3.8/site-packages/homeassistant/requirements.py", line 79, in async_get_integration_with_requirements
await async_process_requirements(
File "/usr/local/share/homeassistant/lib/python3.8/site-packages/homeassistant/requirements.py", line 136, in async_process_requirements
raise RequirementsNotFound(name, [req])
homeassistant.requirements.RequirementsNotFound: Requirements for tradfri not found: ['pytradfri[async]==7.0.6'].

Hi Troy

It works perfectly. Only some small things. The door/window sensor is added with name etc. The Smoke alarm it can’t be added correctly (6). And the last thing is a power plug (7) (all is Fibaro) is added but not with a real name (I have renamed it in HA, so not a big problem)


So it is ok, I will continue to try to fix the Smoke sensor, and I will add some more power plugs.
Thanks once more for all your help. It is really appreciated.

1 Like

@ymestechwey – they are separate issues.

AppDaemon:

Looks like, starting with cryptography 3.4, rust needs to installed for this to compile correctly. I have checked my appdaemon installation and I have cryptography==3.3 installed in the appdaemon virtualenv.

option 1 - use cryptography==3.3.2 which does not require rust

  1. Install appdaemon from the menu - even though there is an error, it still creates the virtualenv
  2. Exit menu
  3. Install cryptography and appdaemon
    su - homeassistant
    source /usr/local/share/appdaemon/bin/activate
    pip install --no-cache-dir --force-reinstall cryptography==3.3.2 appdaemon
    

option 2 - install rust and use latest version of cryptography

  1. Exit menu
  2. Install rust and restart menu
    pkg install rust
    menu
    
  3. Install appdaemon. Use number 8 to remove it first, if it has already installed. Once removed number 8 will change to install again

tradfri integration

This is the main casue here

error: [Errno 2] No such file or directory: 'autoconf'

The following should take care of that error

iocage console $_JAIL_NAME
# Press `0` to exit the menu
sysrc homeassistant_path="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin"
service homeassistant check_config

There’s some progress in the next alpha release…

1 Like

Hi Troy. Almost all things are now added. It adds easily, no problems at all. Only one thing I think is a bit strange. The entity names get really long, most of them is double-length. I have changed them one by one, so the problems are resolved in my case. but I promised to report back. I am not sure this something you can do anything about.

I have one issue, with the Fibaro Wall Plug Switch. When i turn it off inside of HA, the status changes automatically back to On. The switch is still off, but HA believe it is ON, and you can’t turn it back on. I am not sure if I can ask you this question?

Looks like the On/Off issue is resolved. I updated Plugin and restarted HA. Really strange. but really great :slight_smile:

1 Like

Quick update:

The Z-Wave JS to MQTT plugin manifest was merged to the release branch about 30 minutes ago. It should automatically show up in the list of community plugins now.

Hi @troy
All are still running like a dream. Really :grin:

Only one strange thing. My Node-red Jail is dying, and I need to restart the Jail. It started after I installed the new plugin, but I am not 100% sure. Do you experience with this issue?

That is strange indeed @Kai74 - It’s either a bad coincidence or on the TrueNAS side of things. I mean the whole point of jail is to keep things separate. It’s unlikely the cause is zwavejs2mqtt but rather something to do with the type jail that a plugin creates (Base jails)

I am not gonna try to explain the details myself, but this post in the TrueNAS Community gives a pretty good overview.

My guess is that Node-RED was installed with the 12.1 base release. Installing the zwavejs2mqtt plugin has updated the release to 12.2. (This releases base is shared by all plugins.) Have you tried running Plugin UPDATE (for Node-RED) from the TrueNAS UI?

I made the Node-RED and ESPHome plugins by request, but I do not actively use them so I can not provide my own experience.

Thanks for getting back to me… Maybe it started after the last update of HA…
I have updated Node-red But the same problem. I think the problem is from HA. This is the log


16 Feb 19:41:39 - TypeError: Cannot read property 'state' of null
    at ServerStateChangedNode.onHaEventsStateChanged (/var/db/nodered/node_modules/node-red-contrib-home-assistant-webs>    at HaWebsocket.emit (events.js:198:13)
    at HaWebsocket.onClientEvents (/var/db/nodered/node_modules/node-red-contrib-home-assistant-websocket/lib/ha-websoc>    at Object.unsubCallback.(anonymous function).client.subscribeEvents [as callback] (/var/db/nodered/node_modules/nod>    at Connection._handleMessage (/var/db/nodered/node_modules/home-assistant-js-websocket/dist/haws.umd.js:355:30)
    at WebSocket.socket.addEventListener (/var/db/nodered/node_modules/home-assistant-js-websocket/dist/haws.umd.js:193>    at WebSocket.onMessage (/var/db/nodered/node_modules/ws/lib/event-target.js:125:16)
    at WebSocket.emit (events.js:198:13)
    at Receiver.receiverOnMessage (/var/db/nodered/node_modules/ws/lib/websocket.js:797:20)
    at Receiver.emit (events.js:198:13)
    at Receiver.dataMessage (/var/db/nodered/node_modules/ws/lib/receiver.js:437:14)
    at perMessageDeflate.decompress (/var/db/nodered/node_modules/ws/lib/receiver.js:394:23)
    at _decompress (/var/db/nodered/node_modules/ws/lib/permessage-deflate.js:306:9)
    at _inflate.flush (/var/db/nodered/node_modules/ws/lib/permessage-deflate.js:385:7)
    at afterWrite (_stream_writable.js:485:3)
    at onwrite (_stream_writable.js:476:7)

I think this is the problem.


TypeError: Cannot read property 'state' of null
    at ServerStateChangedNode.onHaEventsStateChange.

Maybe somebody else have the same issue?

Reinstall can maybe fix it, I will test that tomorrow.

Thanks a million Troy.

Hi there I just migrated my zwave install from the OpenZWave (beta) to Zwave JS 2 MQTT with the config dir on an external dataset. Thanks to @troy for creating this great plugin and @petro for the instructions used and the image I borrowed below. I’ll try to give a short step by step from how I did the migration so it might help others.

  • First gather information from the current setup by entering below in the template editor in Developer Tools => Template. Save the output of this in a text file.
{%- for node, zstates in states | selectattr('attributes.node_id', 'in', range(1000)) | groupby('attributes.node_id') %}
{{ node }}:
  {%- for s in zstates %}
  - {{ s.name }}
    {{ s.entity_id }}
  {% endfor %}
{%- endfor %}
  • Also from the current install check your network key and controller address (/dev/cuaU0 in my case)
  • Then install the zwavejs2mqtt plugin from the plugins community index in Truenas (in my case zwavejs2mqtt), when this is finished look in the results of the install for the IP address of the jail. It is showed with the port for the webconfig (ipaddress:8091)
  • Only follow the steps from create the dataset of https://github.com/tprelog/iocage-homeassistant/wiki/external_dataset I created a dataset with the name zwavejs2mqtt
  • Stop ozwdaemon plugin jail => iocage stop ozwdaemon
  • Stop zwavejs2mqtt plugin jail => β€˜iocage stop zwavejs2mqtt’
  • Mount dataset in plugin jail => iocage fstab -a zwavejs2mqtt "/mnt/ssd/zwavejs2mqtt /usr/local/etc/zwavejs2mqtt nullfs rw 0 0"
  • Start zwavejs2mqtt plugin jail => β€˜iocage start zwavejs2mqtt’
  • Go in a browser to ipaddress:8091
  • Paste information into ZwaveJS2MQTT configuration area see below picture (thanks @petro) for the settings.
  • Watch the device list and wait for the last node to be found.
  • Fix all β€˜unknown’ devices by waking them up. No need for a refresh node, just wake them up.
  • In Home Assistant delete the OpenZWave (beta) integration.
  • In Home Assistant install the Zwave JS integration and enter ws://ipaddress:3000
    You should get a list of devices that matches devices in the ZwaveJS2MQTT control panel.
  • Rename all devices with the info gathered in the first step.
  • That’s was it! In the TrueNAS GUI I have set the old ozwdeamon jail and the mqtt jail to not start on boot anymore to prevent issues on a restart of my NAS. I’ll leave them there for a while turned of before I’ll delete them.
1 Like

@troy Hey Troy i have the HUSBZ-1 stick, its been working great for years. But after i updated to the truenas update and installed the new plugin ive been having a strange problem intermittently. All of a sudden my zigbee network go down and all the lights and devices become unavailiable in hass. The only way i know how to solve the issue is to change port for the dongle and then restart the truenas server. This happens maby once or twice in a month.
Do you think it might be the dongle hardware giving up?

Sounds like it might be giving up, but it’s hard to say @lop3r, especially if trouble started exactly when you switched to TrueNAS. On the other hand, I also have the HUSBZ-1 running on TrueNAS since around June last year and it has never just randomly stopped working.

Are you using the Z-Wave as well? If so does it seem to fail at the same time?

Next time there is failure, check inside the jail to see if the HUSBZ-1 is still being recognized

iocage console $_JAIL_NAME
# Press `0` to exit the menu
ls -al /dev | grep cua

As a long time HUSBZ-1 user, you’re probably aware, but I’ll still include this output just to be clear

  • Z-Wave radio is cuaU0
  • Zigbee radio is cuaU1
crw-rw----   1 uucp  dialer     0xf2 Feb 10 01:05 cuaU0
crw-rw----   1 uucp  dialer     0xf3 Feb 10 01:05 cuaU0.init
crw-rw----   1 uucp  dialer     0xf4 Feb 10 01:05 cuaU0.lock
crw-rw----   1 uucp  dialer     0xf8 Feb 15 10:00 cuaU1
crw-rw----   1 uucp  dialer     0xf9 Feb 10 01:05 cuaU1.init
crw-rw----   1 uucp  dialer     0xfa Feb 10 01:05 cuaU1.lock

Now I have said my HUSBZ-1 has not randomly failed, however it has failed in certain situations I can reproduce. For example, restarting Home Assistant multiple times, without allowing some time in between restarts. Back on FreeNAS, I had to use the steps you describe in order to bring my Zigbee back to life. Since switching to TrueNAS, the steps for recovery have slightly improved.

Next time HUSBZ-1 fails try these steps for recovery

  1. Stop Home Assistant jail
  2. Unplug HUSBZ-1 for few seconds
  3. Plug it back in - you can use the same USB port
  4. Start Home Assistant jail
1 Like

Thanks! I got AppDeamon working :slight_smile:

The Ikea integration still doesn’t work.
After using your command, I received this error now:
ERROR: Failed building wheel for DTLSSocket

ERROR: Could not build wheels for DTLSSocket which use PEP 517 and cannot be installed directly

I already installed manual : pkg install py37-DTLSSocket-0.1.12
and I already tried upgrading pip: /usr/local/share/homeassistant/bin/python3.8 -m pip install --upgrade pip but that doesn’t change anything.

I also tried to install Tradfri manual: python3 -m pip pytradfri[async]==7.0.6 but it doesn’t want to install because I get the message: python3: no match.

The problem is only with tradfri, I can install other integrations without any problem.

Do you know how I can fix this?

Greetz

@ymestechwey – There is a little trick you can use when you want / need to try installing manually, to the Home Assistant virtualenv…

Short answer: Try This

service homeassistant install --no-cache-dir --force-reinstall "pytradfri[async]==7.0.6"

EDIT: If the command is successful, you may need to also restart Home Assistant for changes to take full effect. – This should work, see example output from my test.

# service homeassistant install --no-cache-dir --force-reinstall "pytradfri[async]==7.0.6"
Collecting pytradfri[async]==7.0.6
  Downloading pytradfri-7.0.6-py3-none-any.whl (30 kB)
Collecting aiocoap==0.4b3; extra == "async"
  Downloading aiocoap-0.4b3.tar.gz (178 kB)
     |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 178 kB 3.2 MB/s 
Collecting DTLSSocket==0.1.12; extra == "async"
  Downloading DTLSSocket-0.1.12.tar.gz (150 kB)
     |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 150 kB 3.3 MB/s 
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
Collecting Cython
  Downloading Cython-0.29.21-py2.py3-none-any.whl (974 kB)
     |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 974 kB 2.1 MB/s 
Building wheels for collected packages: aiocoap, DTLSSocket
  Building wheel for aiocoap (setup.py) ... done
  Created wheel for aiocoap: filename=aiocoap-0.4b3-py3-none-any.whl size=190274 sha256=787193ec9eea393b7c07292760d2f0305f489475cfdf2c077e5b9e09582f445a
  Stored in directory: /tmp/pip-ephem-wheel-cache-btd0kd2h/wheels/4b/7c/8b/002a6f0cfc24a00011d4b8a32b88ec09f3798195f55564ef61
  Building wheel for DTLSSocket (PEP 517) ... done
  Created wheel for DTLSSocket: filename=DTLSSocket-0.1.12-cp38-cp38-freebsd_12_2_release_p3_amd64.whl size=76737 sha256=c4e106899fa12338ac23b5016f7baa4767c9143c8b01c873c8a1e1b8c34ae9be
  Stored in directory: /tmp/pip-ephem-wheel-cache-btd0kd2h/wheels/9d/5a/32/040649a625ddce6ab784c7661f6f83554c1ebba6ee9584f43b
Successfully built aiocoap DTLSSocket
Installing collected packages: aiocoap, Cython, DTLSSocket, pytradfri
  Attempting uninstall: pytradfri
    Found existing installation: pytradfri 7.0.6
    Uninstalling pytradfri-7.0.6:
      Successfully uninstalled pytradfri-7.0.6
Successfully installed Cython-0.29.21 DTLSSocket-0.1.12 aiocoap-0.4b3 pytradfri-7.0.6

A little about this:

service homeassistant install [SOMETHING]

Basically the command translates to the following

su $homeassistant_user
source $homeassistant_venv/bin/activate
pip install [SOMETHING]
deactivate ; exit

Some typical use cases this was intended for

  • Upgrade Home Assistant
  • Install the next beta release
  • Install a specific Home Assistant version
service homeassistant install --upgrade homeassistant
service homeassistant install --pre --upgrade homeassistant
service homeassistant install homeassistant==0.118.3

Hello Troy,

I get it, thanks for explaining me, but i’m still getting the same error after trying to install it manual,

root@homeassistant:~ # service homeassistant install --no-cache-dir --force-reinstall "pytradfri[async]==7.0.6"
Collecting pytradfri[async]==7.0.6
  Downloading pytradfri-7.0.6-py3-none-any.whl (30 kB)
Collecting DTLSSocket==0.1.12; extra == "async"
  Downloading DTLSSocket-0.1.12.tar.gz (150 kB)
     |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 150 kB 6.6 MB/s
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
Collecting aiocoap==0.4b3; extra == "async"
  Downloading aiocoap-0.4b3.tar.gz (178 kB)
     |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 178 kB 2.6 MB/s
Collecting Cython
  Downloading Cython-0.29.21-py2.py3-none-any.whl (974 kB)
     |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 974 kB 3.1 MB/s
Building wheels for collected packages: DTLSSocket, aiocoap
  Building wheel for DTLSSocket (PEP 517) ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/local/share/homeassistant/bin/python3.8 /usr/local/share/homeassistant/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /tmp/tmp2zm6t9yz
       cwd: /tmp/pip-install-cqbqmw49/dtlssocket
  Complete output (55 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8
  creating build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/DTLSSocket
  copying DTLSSocket/__init__.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/DTLSSocket
  copying DTLSSocket/DTLSSocket.py -> build/lib.freebsd-12.2-RELEASE-p2-amd64-3.8/DTLSSocket
  running build_ext
  autom4te-2.69: need GNU m4 1.4 or later: /usr/local/bin/gm4
  Running: autoconf
  Traceback (most recent call last):
    File "/usr/local/share/homeassistant/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 280, in <module>
      main()
    File "/usr/local/share/homeassistant/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 263, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/usr/local/share/homeassistant/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 204, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
    File "/tmp/pip-build-env-d75kb7ve/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 216, in build_wheel
      return self._build_with_temp_dir(['bdist_wheel'], '.whl',
    File "/tmp/pip-build-env-d75kb7ve/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 202, in _build_with_temp_dir
      self.run_setup()
    File "/tmp/pip-build-env-d75kb7ve/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 253, in run_setup
      super(_BuildMetaLegacyBackend,
    File "/tmp/pip-build-env-d75kb7ve/overlay/lib/python3.8/site-packages/setuptools/build_meta.py", line 145, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 27, in <module>
      setup(
    File "/tmp/pip-build-env-d75kb7ve/overlay/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/usr/local/lib/python3.8/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/usr/local/lib/python3.8/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/usr/local/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-d75kb7ve/overlay/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "/usr/local/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/local/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/usr/local/lib/python3.8/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/usr/local/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/local/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "setup.py", line 21, in run
      run_command(command)
    File "setup.py", line 12, in run_command
      subprocess.check_call(args, cwd=os.path.join(os.path.dirname(__file__), "DTLSSocket","tinydtls"))
    File "/usr/local/lib/python3.8/subprocess.py", line 364, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['autoconf']' returned non-zero exit status 1.
  ----------------------------------------
  ERROR: Failed building wheel for DTLSSocket
  Building wheel for aiocoap (setup.py) ... done
  Created wheel for aiocoap: filename=aiocoap-0.4b3-py3-none-any.whl size=190274 sha256=e70fc97841c1ef937116899f48800d7546f4653f3473a569e84dc657b1093cf3
  Stored in directory: /tmp/pip-ephem-wheel-cache-0payhflt/wheels/4b/7c/8b/002a6f0cfc24a00011d4b8a32b88ec09f3798195f55564ef61
Successfully built aiocoap
Failed to build DTLSSocket
ERROR: Could not build wheels for DTLSSocket which use PEP 517 and cannot be installed directly
WARNING: You are using pip version 20.2.4; however, version 21.0.1 is available.
You should consider upgrading via the '/usr/local/share/homeassistant/bin/python3.8 -m pip install --upgrade pip' command.
root@homeassistant:~ #

:thinking: - I know it works somehow - I managed to get it install. I just installed a fresh copy of the plugin and was able to install with the following two step.

sysrc homeassistant_path="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin"
service homeassistant install --no-cache-dir --force-reinstall "pytradfri[async]==7.0.6"

Try running a Plugin UPDATE from the TrueNAS UI - I notice this difference between my output and yours

  • I notice my plugin is at - freebsd-12.2-RELEASE-p3

  • while your plugin is at - freebsd-12.2-RELEASE-p2

I see this error in your log, so I’m hoping the Plugin UPDATE will help here

  autom4te-2.69: need GNU m4 1.4 or later: /usr/local/bin/gm4

After the plugin update – try again with the following steps

iocage console $_JAIL_NAME
# Press `0` to exit the menu
rm -r /home/homeassistant/.cache
sysrc homeassistant_path="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin"
service homeassistant install --no-cache-dir --force-reinstall "pytradfri[async]==7.0.6"