openlumi / homeassistant_on_openwrt

Install Home Assistant on your OpenWrt device with a single command
MIT License
157 stars 43 forks source link

unable to finish homeassistant init process #41

Open zx900930 opened 5 months ago

zx900930 commented 5 months ago

Fresh install on openwrt 23.05 X86_64 the install script finished with 3 dependances ERROR:

chacha20poly1305-reuseable>=0.12.1
cryptography>=42.0.2
pyopenssl>=24.0.0

resolve it by pip install pyopenssl==24.0.0 cryptography==42.0.2 chacha20poly1305-reuseable==0.12.1

Successfully built homeassistant
Installing collected packages: homeassistant
Successfully installed homeassistant-2024.2.1
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

[notice] A new release of pip is available: 23.3.1 -> 24.0
[notice] To update, run: pip install --upgrade pip
Create starting script in init.d
Done.

Start the service: /etc/init.d/homeassistant start

the init process crash when reaching the data collection page: image

the ha service will stop and logs shows nothing related to the crash: 2024-02-15 12:58:37.952 WARNING (Recorder) [homeassistant.components.recorder.util] Ended unfinished session (id=4 from 2024-02-15 04:49:14.879923)

devbis commented 5 months ago

The scrript installs, cryptography, pyopenssl with opkg in the beginning of the script. There are no version specifiers for these dependencies. Do you use custom components?

zx900930 commented 5 months ago

The scrript installs, cryptography, pyopenssl with opkg in the beginning of the script. There are no version specifiers for these dependencies. Do you use custom components?

I use the default script without custom components:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
aioesphomeapi 21.0.2 requires chacha20poly1305-reuseable>=0.12.1, but you have chacha20poly1305-reuseable 0.12.0 which is incompatible.
aioesphomeapi 21.0.2 requires cryptography>=42.0.2, but you have cryptography 41.0.7 which is incompatible.
devbis commented 5 months ago

I see. Yes, aioesphomeapi needs to be patched. /usr/lib/python3.11/site-packages/aioesphomeapi-21.0.2.dist-info/METADATA

You can remove versions Requires-Dist: cryptography >=42.0.2

to Requires-Dist: cryptography >=36.0.2

UPD: the script is updated, you can just rerun it

kgy2002 commented 2 months ago

I'm encountering this same issue where upon reaching this onboarding webpage, the process immediately crashes with the exact same error. I installed using the latest script with no modifications as of today. The only issue I could see during installation is that this gdbm package is missing: (script notes its unavailability in master though) Unknown package 'python3-gdbm'

The home-assistant.log.fault file shows this after the process crash:

Fatal Python error: Illegal instruction

Thread 0x00007f0b04b9eb38 (most recent call first):
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 81 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b04bc1b38 (most recent call first):
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 81 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b0634eb38 (most recent call first):
  File "/usr/lib/python3.11/site-packages/homeassistant/components/recorder/core.py", line 872 in _run_event_loop
  File "/usr/lib/python3.11/site-packages/homeassistant/components/recorder/core.py", line 778 in _run
  File "/usr/lib/python3.11/site-packages/homeassistant/components/recorder/core.py", line 698 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b08ee8b38 (most recent call first):
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 81 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Current thread 0x00007f0b08f13b38 (most recent call first):
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 1233 in create_module
  File "<frozen importlib._bootstrap>", line 573 in module_from_spec
  File "<frozen importlib._bootstrap>", line 676 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "/usr/lib/python3.11/site-packages/numpy/core/overrides.py", line 6 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1232 in _handle_fromlist
  File "/usr/lib/python3.11/site-packages/numpy/core/multiarray.py", line 10 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1232 in _handle_fromlist
  File "/usr/lib/python3.11/site-packages/numpy/core/__init__.py", line 23 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1232 in _handle_fromlist
  File "/usr/lib/python3.11/site-packages/numpy/__init__.py", line 141 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "/usr/lib/python3.11/site-packages/homeassistant/components/stream/core.py", line 14 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "/usr/lib/python3.11/site-packages/homeassistant/components/stream/__init__.py", line 61 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "/usr/lib/python3.11/site-packages/homeassistant/components/camera/__init__.py", line 30 in <module>
  File "<frozen importlib._bootstrap>", line 241 in _call_with_frames_removed
  File "<frozen importlib._bootstrap_external>", line 940 in exec_module
  File "<frozen importlib._bootstrap>", line 690 in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1147 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1176 in _find_and_load
  File "/usr/lib/python3.11/site-packages/homeassistant/helpers/selector.py", line 91 in _entity_features
  File "/usr/lib/python3.11/site-packages/homeassistant/helpers/selector.py", line 135 in _validate_supported_feature
  File "/usr/lib/python3.11/site-packages/homeassistant/helpers/selector.py", line 160 in _validate_supported_features
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 818 in validate_callable
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 353 in _exec
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 229 in _run
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 636 in validate_sequence
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 387 in validate_mapping
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595 in validate_dict
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272 in __call__
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 818 in validate_callable
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 636 in validate_sequence
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 353 in _exec
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 229 in _run
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 387 in validate_mapping
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595 in validate_dict
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272 in __call__
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 818 in validate_callable
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 274 in _exec
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 229 in _run
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 387 in validate_mapping
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595 in validate_dict
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272 in __call__
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 818 in validate_callable
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 274 in _exec
  File "/usr/lib/python3.11/site-packages/voluptuous/validators.py", line 229 in _run
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 387 in validate_mapping
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 595 in validate_dict
  File "/usr/lib/python3.11/site-packages/voluptuous/schema_builder.py", line 272 in __call__
  File "/usr/lib/python3.11/site-packages/homeassistant/helpers/service.py", line 551 in _load_services_file
  File "/usr/lib/python3.11/site-packages/homeassistant/helpers/service.py", line 573 in <listcomp>
  File "/usr/lib/python3.11/site-packages/homeassistant/helpers/service.py", line 573 in _load_services_files
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 58 in run
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 83 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b08f3ab38 (most recent call first):
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 81 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b08f61b38 (most recent call first):
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 81 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b08f88b38 (most recent call first):
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 81 in _worker
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b08fafb38 (most recent call first):
  File "/usr/lib/python3.11/logging/handlers.py", line 1526 in dequeue
  File "/usr/lib/python3.11/logging/handlers.py", line 1577 in _monitor
  File "/usr/lib/python3.11/threading.py", line 982 in run
  File "/usr/lib/python3.11/threading.py", line 1045 in _bootstrap_inner
  File "/usr/lib/python3.11/threading.py", line 1002 in _bootstrap

Thread 0x00007f0b0c9e7b48 (most recent call first):
  File "/usr/lib/python3.11/selectors.py", line 468 in select
  File "/usr/lib/python3.11/asyncio/base_events.py", line 1884 in _run_once
  File "/usr/lib/python3.11/asyncio/base_events.py", line 607 in run_forever
  File "/usr/lib/python3.11/asyncio/base_events.py", line 640 in run_until_complete
  File "/usr/lib/python3.11/site-packages/homeassistant/runner.py", line 188 in run
  File "/usr/lib/python3.11/site-packages/homeassistant/__main__.py", line 209 in main
  File "/usr/bin/hass", line 8 in <module>

Extension modules: yaml._yaml, _cffi_backend, multidict._multidict, yarl._quoting_c, ciso8601, aiohttp._helpers, aiohttp._http_writer, aiohttp._http_parser, aiohttp._websocket, frozenlist._frozenlist, markupsafe._speedups, PIL._imaging, sqlalchemy.cyextension.collections, sqlalchemy.cyextension.immutabledict, sqlalchemy.cyextension.processors, sqlalchemy.cyextension.resultproxy, sqlalchemy.cyextension.util, greenlet._greenlet, zeroconf._utils.time, zeroconf._dns, zeroconf._protocol.outgoing, zeroconf._protocol.incoming, zeroconf._cache, zeroconf._record_update, zeroconf._history, zeroconf._updates, zeroconf._services, zeroconf._utils.ipaddress, zeroconf._services.info, zeroconf._services.registry, zeroconf._handlers.answers, zeroconf._handlers.multicast_outgoing_queue, zeroconf._handlers.query_handler, zeroconf._handlers.record_manager, zeroconf._listener, zeroconf._services.browser, pydantic.typing, pydantic.errors, pydantic.version, pydantic.utils, pydantic.class_validators, pydantic.config, pydantic.color, pydantic.datetime_parse, pydantic.validators, pydantic.networks, pydantic.types, pydantic.json, pydantic.error_wrappers, pydantic.fields, pydantic.parse, pydantic.schema, pydantic.main, pydantic.dataclasses, pydantic.annotated_types, pydantic.decorator, pydantic.env_settings, pydantic.tools, pydantic, psutil._psutil_linux, psutil._psutil_posix (total: 61)

A little googling showed that the illegal instruction fault could be due to missing instructions from the cpu, which appears to have already been resolved: https://github.com/home-assistant/core/issues/94228 This machine is a Kabini based APU running on x86 openwrt with a relatively fresh 23.05 install. This cpu should fully support x86-64-v2 instructions and probably shouldn't need v3 avx instructions right?

My install shows no dependency errors but here were the versions of the above packages installed from the script for me: cryptography 41.0.7 chacha20poly1305-reuseable 0.12.0 pyOpenSSL 23.2.0

devbis commented 2 months ago

It looks like numpy built for you arch requires some newer instructions. It is required for the base camera integration, but is not for general use. For some architectures it is missing and it works without it. As a solution, you can try uninstalling python3-numpy, removing line 155 from the script that installs it and run the script again.

Or apply line 534 for your installed hass, but with modified paths