@troy my apologies for harassing you and the community, but I’m repeatedly into issues when trying to activate the stream component. I wonder if it’s only my installation (I followed your recommended install in an iocage jail and it worked perfectly for v0.100.3), however when activating stream in configuration.yaml, I get the following error message:
Unable to install package av==6.1.2: WARNING: The directory ‘/.cache/pip/http’ or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.
WARNING: The directory ‘/.cache/pip’ or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.
WARNING: Building wheel for av failed: [Errno 13] Permission denied: ‘/.cache’
ERROR: Command errored out with exit status 1:
command: /srv/homeassistant/bin/python3.7 -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-install-v6h3bklg/av/setup.py’“'”‘; file=’“'”‘/tmp/pip-install-v6h3bklg/av/setup.py’“'”‘;f=getattr(tokenize, ‘"’“‘open’”’“‘, open)(file);code=f.read().replace(’”‘"’\r\n’“'”‘, ‘"’"’\n’“'”‘);f.close();exec(compile(code, file, ‘"’“‘exec’”’“‘))’ install --record /tmp/pip-record-oumu0gpi/install-record.txt --single-version-externally-managed --compile --install-headers /srv/homeassistant/include/site/python3.7/av
cwd: /tmp/pip-install-v6h3bklg/av/
Complete output (53 lines):
running install
running build
running build_py
creating build
creating build/lib.freebsd-11.2-STABLE-amd64-3.7
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/datasets.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/main.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/deprecation.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/seekmany.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/experimental.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/frame_seek_example.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/glproxy.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/merge-filmstrip.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/encode_frames.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/second_seek_example.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/qtproxy.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/average.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/filmstrip.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/player.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/decode_threads.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/audio_player.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/dump_format.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/remux.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/save_subtitles.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/decode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/resource_use.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/encode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/show_frames_opencv.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/cctx_encode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/cctx_decode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/audio.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/graph.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/subtitles
copying av/subtitles/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/subtitles
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/data
copying av/data/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/data
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/codec
copying av/codec/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/codec
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/filter
copying av/filter/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/filter
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/audio
copying av/audio/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/audio
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/container
copying av/container/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/container
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/video
copying av/video/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/video
running build_ext
running config
pkg-config is required for building PyAV
----------------------------------------
ERROR: Command errored out with exit status 1: /srv/homeassistant/bin/python3.7 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '”‘"’/tmp/pip-install-v6h3bklg/av/setup.py’“'”‘; file=’“'”‘/tmp/pip-install-v6h3bklg/av/setup.py’“'”‘;f=getattr(tokenize, ‘"’“‘open’”’“‘, open)(file);code=f.read().replace(’”‘"’\r\n’“'”‘, ‘"’"’\n’“'”‘);f.close();exec(compile(code, file, ‘"’“‘exec’”’"‘))’ install --record /tmp/pip-record-oumu0gpi/install-record.txt --single-version-externally-managed --compile --install-headers /srv/homeassistant/include/site/python3.7/av Check the logs for full command output.
I tried to manually install (pip3 install av) in the virtualenv - does not work. Tried to find and install the package pkg-config - doesn’t exist. Searched forums - nothing useful.
Sorry, I was too fast. The system tricked me into believing that the stream component has been activated in my configuration.yaml, however this was not true.
After putting stream: into my configuration.yaml, I’m getting the following notification:
component error: stream - Requirements for stream not found: [‘av==6.1.2’]
My log file shows this:
Unable to install package av==6.1.2: WARNING: The directory ‘/.cache/pip/http’ or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.
WARNING: The directory ‘/.cache/pip’ or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.
WARNING: Building wheel for av failed: [Errno 13] Permission denied: ‘/.cache’
ERROR: Command errored out with exit status 1:
command: /srv/homeassistant/bin/python3.7 -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-install-c3atgp69/av/setup.py’“'”‘; file=’“'”‘/tmp/pip-install-c3atgp69/av/setup.py’“'”‘;f=getattr(tokenize, ‘"’“‘open’”’“‘, open)(file);code=f.read().replace(’”‘"’\r\n’“'”‘, ‘"’"’\n’“'”‘);f.close();exec(compile(code, file, ‘"’“‘exec’”’“‘))’ install --record /tmp/pip-record-nro32dp6/install-record.txt --single-version-externally-managed --compile --install-headers /srv/homeassistant/include/site/python3.7/av
cwd: /tmp/pip-install-c3atgp69/av/
Complete output (59 lines):
running install
running build
running build_py
creating build
creating build/lib.freebsd-11.2-STABLE-amd64-3.7
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/deprecation.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/datasets.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
copying av/main.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/decode_threads.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/audio_player.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/player.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/merge-filmstrip.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/seekmany.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/cctx_decode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/cctx_encode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/frame_seek_example.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/encode_frames.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/audio.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/experimental.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/graph.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/second_seek_example.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/show_frames_opencv.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/dump_format.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/average.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/filmstrip.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/decode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/qtproxy.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/resource_use.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/encode.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/glproxy.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/save_subtitles.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
copying scratchpad/remux.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/scratchpad
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/filter
copying av/filter/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/filter
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/video
copying av/video/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/video
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/data
copying av/data/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/data
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/subtitles
copying av/subtitles/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/subtitles
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/codec
copying av/codec/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/codec
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/audio
copying av/audio/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/audio
creating build/lib.freebsd-11.2-STABLE-amd64-3.7/av/container
copying av/container/init.py → build/lib.freebsd-11.2-STABLE-amd64-3.7/av/container
running build_ext
running config
Could not find libavformat with pkg-config.
Could not find libavcodec with pkg-config.
Could not find libavdevice with pkg-config.
Could not find libavutil with pkg-config.
Could not find libavfilter with pkg-config.
Could not find libswscale with pkg-config.
Could not find libswresample with pkg-config.
----------------------------------------
ERROR: Command errored out with exit status 1: /srv/homeassistant/bin/python3.7 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '”‘"’/tmp/pip-install-c3atgp69/av/setup.py’“'”‘; file=’“'”‘/tmp/pip-install-c3atgp69/av/setup.py’“'”‘;f=getattr(tokenize, ‘"’“‘open’”’“‘, open)(file);code=f.read().replace(’”‘"’\r\n’“'”‘, ‘"’"’\n’“'”‘);f.close();exec(compile(code, file, ‘"’“‘exec’”’"‘))’ install --record /tmp/pip-record-nro32dp6/install-record.txt --single-version-externally-managed --compile --install-headers /srv/homeassistant/include/site/python3.7/av Check the logs for full command output.
The error log reminds me of what you can see in the troubleshooting section of the stream component and I tried to install some “missing” packages manually - without success as they do not seem to exist.
Would you have any hint as to what packages to manually install in a FreeBSD world??
However, your appdaemon installed as part of your scripted install doesn’t appear to be working if I try to follow the hass-app install instructions. The appdaemon install is probably different. There isnt a python_packages entry or an apps.yaml file. Any ideas?
The script install is really just to save keystrokes. It is nothing more then appdaemon installed in a virtualenv. After a look at your link, I think for hass-apps to work you need to install it manually to the already created appdaemon virtualenv
After those steps you should be able to configure hass-apps. I assume your using my example config files? If not then you would need to create your own appdaemon configuration before it will run
Real quick here, The python_packages in your link is for appdaemon in the hass io ecosystem. You are not using hassio if you have followed this guide or used my script. Your install is just a plain virtualenv.
For the apps.yamlI actually just realized I never added one. Again (assume you used my config) you can create your own with this hello_world app from the appdaemon docs.
I used /home/hass/appdaemon/apps for apps. I set that location in /home/hass/appdaemon/conf/appdaemon.yaml and you can look there to see and/or change anything.
I am just trying to get the Mobile App integration working and I get the following error in the log.
'Unable to install package PyNaCl==1.3.0: WARNING: The directory '/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
WARNING: The directory '/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
WARNING: Building wheel for PyNaCl failed: [Errno 13] Permission denied: '/.cache'
ERROR: Could not build wheels for PyNaCl which use PEP 517 and cannot be installed directly'
Checked permissions and they seem fine.
root@homeassistant:/home/hass # ls -la
total 40
drwxrwxr-x 7 hass hass 9 Feb 4 2019 .
drwxr-xr-x 3 root wheel 3 Jan 28 2019 ..
-rw------- 1 hass hass 3077 Nov 27 14:37 .bash_history
drwx------ 3 hass hass 3 Jan 28 2019 .cache
drwx------ 2 hass hass 3 Jan 29 2019 .ssh
-rw-r--r-- 1 hass hass 259 Aug 1 14:21 .wget-hsts
drwxrwxr-x 5 hass hass 5 Jan 28 2019 appdaemon
drwxrwxr-x 2 hass hass 3 Jan 28 2019 configurator
drwxrwxr-x 8 hass hass 21 Nov 27 15:13 homeassistant
Also since swapping over to python 3.7 I have SSL data and handshake error messages
'Error doing job: SSL error in data received
Traceback (most recent call last):
File "/usr/local/lib/python3.7/asyncio/sslproto.py", line 526, in data_received
ssldata, appdata = self._sslpipe.feed_ssldata(data)
File "/usr/local/lib/python3.7/asyncio/sslproto.py", line 189, in feed_ssldata
self._sslobj.do_handshake()
File "/usr/local/lib/python3.7/ssl.py", line 763, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: HTTP_REQUEST] http request (_ssl.c:1056)'
Error doing job: SSL handshake failed
Traceback (most recent call last):
File "/usr/local/lib/python3.7/asyncio/sslproto.py", line 625, in _on_handshake_complete
raise handshake_exc
File "/usr/local/lib/python3.7/asyncio/sslproto.py", line 189, in feed_ssldata
self._sslobj.do_handshake()
File "/usr/local/lib/python3.7/ssl.py", line 763, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: HTTP_REQUEST] http request (_ssl.c:1056)
Unfortunately I do not have any guess about the ssl error right now… Maybe after PyNaCl install is will go away. If not let me know and I’ll try to investigate further.
That worked. I actually found your second bit of advice on a freenas forum late last night and used it. The SSL errors are still occurring but reading the message make me think it’s receiving http request on the SSL port.
Any other ideas how to upgrade or overcome SSL issue. I’m still unable to manage my Ecobee Switches (homekit controller needed) and it’s failing on registration due to SSL issue.
Sorry no. From my understanding it’s not possible to upgrade the “base” BSD that is used when creating jails and the jail can not run a newer “base” version than the host. I’ve discovered this seems to be an ongoing issue for FreeNAS, it’s always been this way and likely always will. (I mean FreeNAS is usually behind the actual FreeBSD from which it’s based on. For example we are waiting for an update to FreeNAS 11.X but FreeBSD is actually on 12.X - In other words new FreeNAS is not even released yet and it’s already outdated in BSD terms)
You do have a few options but they not likely to be what you had in mind.
Personally I have no plans of switching to Hassio but I did follow @Koen’s link to give it a try. I was able to successfully get Hassio running using a VM in about 20 min.
This has been working perfectly for me for some months, with fairly infrequent updates. I think my last update to 0.102.3 has broken the mobile integration which now uses mobile_app: in the configuration.yaml.
With this added, I get the following error when checking the configuration:
Component error: mobile_app - Requirements for mobile_app not found: ['PyNaCl==1.3.0'].
Hi Troy. I spoke too soon. I was using the auto zwave component integration and my Zwave USB stick was showing up as a node in the Zwave configuration, so I assumed all was well. However, I finally got around to trying to add a Zwave device and it just wont pair. So, I decided to remove the auto integration as you suggested and add it to the config file manually. Now the USB stick doesn’t show up and the zwave configuration options in the UI aren’t available. I tried to generate a network key using the command from inside the jail but I get an “illegal byte sequence” error, so I can’t generate a code, but not sure it’s needed. It seems the manual addition of the zwave stick isn’t working. Any idea what could be wrong?
Sorry, I think that’s my fault. I copied this from old configuration.
I had python3.6 but it should be python3.7. Try this (I will also fixed this in my previous post)
Are you 100% certain you are actually in the jail. This is the exact error shown when I try to run the command on the FreeNAS host. For additional clarity, I have this time included the first command to ensure we’re operating inside the jail. Please try the following.
You don’t have to have a z-wave key but I think It’s strongly preferred that you do. The z-wave key is required to secure you z-wave network and it is likely required by any kind security device. Also you need to follow the docs when adding devices to your controller.
EDIT Reading through the docs myself (It’s been awhile) I see this has been added
Secure devices require additional bandwidth, and too many secure devices can slow down your Z-Wave network. We recommend only using secure inclusion for devices that require it, such as locks.
Thanks Troy - that enable me to generate the key (zwave_key: 0x37, 0xD5, etc placed in secrets.yaml), but the integration still isn’t working. The Zwave USB isn’t showing up as a node on the Zwave config page
Thanks Troy - it’s definitely there. I get the same output as your pic. I find that I can add the USB stick using the auto-integration menu and entering the usb destination as /dev/cuaU0. If I remove this integration and do it manually in the config file, it doesn’t get integrated.