Ao instalar o mycroft-core do AUR, recebo o seguinte erro ao tentar iniciar o serviço.
systemctl --user status mycroft-service.service mycroft-skills.service mycroft-voice.service
● mycroft-service.service - Mycroft main service
Loaded: loaded (/usr/lib/systemd/user/mycroft-service.service; disabled; vendor preset: enabled)
Active: active (running) since Wed 2017-04-26 03:05:26 EDT; 49s ago
Main PID: 14053 (bash)
CGroup: /user.slice/user-1000.slice/[email protected]/mycroft-service.service
├─14053 bash /usr/share/mycroft-core/start.sh service
└─14068 python /usr/share/mycroft-core/mycroft/messagebus/service/main.py
Apr 26 03:05:26 $HOSTNAME systemd[1193]: Started Mycroft main service.
Apr 26 03:05:26 $HOSTNAME bash[14053]: Starting service
Apr 26 03:05:26 $HOSTNAME bash[14053]: 2017-04-26 03:05:26,395 - mycroft.configuration - WARNING - Failed to fetch remote configuration: AttributeError("'module' object has no attribute 'SSL_ST_INIT'",)
● mycroft-skills.service - Mycroft skills provider
Loaded: loaded (/usr/lib/systemd/user/mycroft-skills.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2017-04-25 21:52:28 EDT; 5h 13min ago
Main PID: 2292 (bash)
CGroup: /user.slice/user-1000.slice/[email protected]/mycroft-skills.service
├─2292 bash /usr/share/mycroft-core/start.sh skills
└─2318 python /usr/share/mycroft-core/mycroft/skills/main.py
Apr 26 03:01:21 $HOSTNAME bash[2292]: 2017-04-26 03:01:21,762 - mycroft.messagebus.client.ws - WARNING - WS Client will reconnect in 60 seconds.
Apr 26 03:02:21 $HOSTNAME bash[2292]: 2017-04-26 03:02:21,813 - mycroft.messagebus.client.ws - ERROR - Exception("Uncaught 'error' event.",)
Apr 26 03:02:21 $HOSTNAME bash[2292]: 2017-04-26 03:02:21,814 - mycroft.messagebus.client.ws - WARNING - WS Client will reconnect in 60 seconds.
Apr 26 03:03:21 $HOSTNAME bash[2292]: 2017-04-26 03:03:21,870 - mycroft.messagebus.client.ws - ERROR - Exception("Uncaught 'error' event.",)
Apr 26 03:03:21 $HOSTNAME bash[2292]: 2017-04-26 03:03:21,870 - mycroft.messagebus.client.ws - WARNING - WS Client will reconnect in 60 seconds.
Apr 26 03:04:21 $HOSTNAME bash[2292]: 2017-04-26 03:04:21,907 - mycroft.messagebus.client.ws - ERROR - Exception("Uncaught 'error' event.",)
Apr 26 03:04:21 $HOSTNAME bash[2292]: 2017-04-26 03:04:21,907 - mycroft.messagebus.client.ws - WARNING - WS Client will reconnect in 60 seconds.
Apr 26 03:05:21 $HOSTNAME bash[2292]: 2017-04-26 03:05:21,956 - mycroft.messagebus.client.ws - ERROR - Exception("Uncaught 'error' event.",)
Apr 26 03:05:21 $HOSTNAME bash[2292]: 2017-04-26 03:05:21,956 - mycroft.messagebus.client.ws - WARNING - WS Client will reconnect in 60 seconds.
Apr 26 03:05:36 $HOSTNAME systemd[1193]: [/usr/lib/systemd/user/mycroft-skills.service:3] Failed to add dependency on mycroft-service, ignoring: Invalid argument
● mycroft-voice.service - Mycroft voice processing
Loaded: loaded (/usr/lib/systemd/user/mycroft-voice.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Wed 2017-04-26 03:05:38 EDT; 37s ago
Process: 14083 ExecStart=/bin/bash -c source /usr/share/mycroft-core/.virtualenvs/mycroft/bin/activate && /usr/share/mycroft-core/start.sh voice (code=exited, status=1/FAILURE)
Main PID: 14083 (code=exited, status=1/FAILURE)
Apr 26 03:05:38 $HOSTNAME bash[14083]: File "/home/$USER/.virtualenvs/mycroft/lib/python2.7/site-packages/requests/packages/urllib3/contrib/pyopenssl.py", line 47, in <module>
Apr 26 03:05:38 $HOSTNAME bash[14083]: import OpenSSL.SSL
Apr 26 03:05:38 $HOSTNAME bash[14083]: File "/home/$USER/.virtualenvs/mycroft/lib/python2.7/site-packages/OpenSSL/__init__.py", line 8, in <module>
Apr 26 03:05:38 $HOSTNAME bash[14083]: from OpenSSL import rand, crypto, SSL
Apr 26 03:05:38 $HOSTNAME bash[14083]: File "/home/$USER/.virtualenvs/mycroft/lib/python2.7/site-packages/OpenSSL/SSL.py", line 124, in <module>
Apr 26 03:05:38 $HOSTNAME bash[14083]: SSL_ST_INIT = _lib.SSL_ST_INIT
Apr 26 03:05:38 $HOSTNAME bash[14083]: AttributeError: 'module' object has no attribute 'SSL_ST_INIT'
Apr 26 03:05:38 $HOSTNAME systemd[1193]: mycroft-voice.service: Main process exited, code=exited, status=1/FAILURE
Apr 26 03:05:38 $HOSTNAME systemd[1193]: mycroft-voice.service: Unit entered failed state.
Apr 26 03:05:38 $HOSTNAME systemd[1193]: mycroft-voice.service: Failed with result 'exit-code'.
alterar pyOpenSSL==16.0.0
em requirements.txt
para pyOpenSSL==16.2.0
corrige isso.
troquei e continua com esse problema
Você precisa reinstalar o pacote pip após a alteração.
pip uninstall pyOpenSSL
pip install pyOpenSSL==16.2.0
Além disso, em qual sistema operacional você está?
Estou no Arch, fiz isso conforme solicitado, ainda assim:
Starting voice
2017-04-29 23:57:00,722 - mycroft.configuration - DEBUG - Configuration '/usr/share/mycroft-core/mycroft/configuration/mycroft.conf' loaded
2017-04-29 23:57:00,723 - mycroft.configuration - DEBUG - Configuration '/etc/mycroft/mycroft.conf' not found
2017-04-29 23:57:00,723 - mycroft.configuration - DEBUG - Configuration '/home/daenerys/.mycroft/mycroft.conf' not found
2017-04-29 23:57:01,200 - mycroft.configuration - WARNING - Failed to fetch remote configuration: AttributeError("'module' object has no attribute 'SSL_ST_INIT'",)
Traceback (most recent call last):
File "/usr/share/mycroft-core/mycroft/client/speech/main.py", line 24, in <module>
from mycroft.client.speech.listener import RecognizerLoop
File "/usr/share/mycroft-core/mycroft/client/speech/listener.py", line 25, in <module>
from requests import HTTPError
File "/home/daenerys/.virtualenvs/mycroft/lib/python2.7/site-packages/requests/__init__.py", line 52, in <module>
from .packages.urllib3.contrib import pyopenssl
File "/home/daenerys/.virtualenvs/mycroft/lib/python2.7/site-packages/requests/packages/urllib3/contrib/pyopenssl.py", line 46, in <module>
import OpenSSL.SSL
File "/home/daenerys/.virtualenvs/mycroft/lib/python2.7/site-packages/OpenSSL/__init__.py", line 8, in <module>
from OpenSSL import rand, crypto, SSL
File "/home/daenerys/.virtualenvs/mycroft/lib/python2.7/site-packages/OpenSSL/SSL.py", line 124, in <module>
SSL_ST_INIT = _lib.SSL_ST_INIT
AttributeError: 'module' object has no attribute 'SSL_ST_INIT'
Eu também tentei instalar a versão da minha distro, pois alguém no AUR disse que isso resolveria. Até agora, todas as tentativas de alterar o pyopenssl falharam ao corrigir o problema.
Mesmo erro quando executo dev_setup.sh
Tente instalar a partir do Git, o AUR está desatualizado e claramente quebrado.
Eu tentei no git. Eu tentei o AUR depois de não conseguir fazer funcionar e pensei que outra pessoa tinha mais sorte
Eu também tenho esse problema na minha área de trabalho com o Arch Linux. Tenho o manjaro instalado no meu notebook e não tenho esse problema, pode ser algum tipo de problema de dependência que não está listado?
Acredito que possa ser uma incompatibilidade com a versão openSSL do sistema e a versão pyOpenSSL no mycroft virtualenv. Não 100% de certeza embora. Conforme declarado acima por @BoBeR182 acima, atualizar o pyOpenSSL é uma possível correção
Sim, eu tentei acima já. Até tentei reconstruir de novo depois de alterar o dep. Ainda o mesmo problema.
No meu raspberry Pi eu mudei pyopenssl para 17.0.0
e tive sucesso. Eu tive que excluir todo o virtualenv e executar novamente o dev_setup para obter um ambiente de trabalho e, em seguida, precisei atualizar alguns dos pacotes para colocar tudo em funcionamento =/
Mesmo problema para mim no Arch com 17.0.0 também ...
DEIXA PRA LÁ!
Excluir toda a pasta env em ~ e executar novamente o dev.setup fez com que funcionasse. Desculpe o barulho
Se esta é uma correção confirmada ainda?
Deveria ser. Eu só estou querendo saber se devemos aumentar para 16.2.0 ou todo o caminho para 17.0.0?
16.2.0 funcionou para mim depois de remover a pasta ~/.virtualenv, então sim, correção confirmada.
Eu não acho que precisamos ir até o 17.0.0
Ótimo, era isso que eu queria ouvir!
A atualização do pyOpenSSL para 16.2.0 corrigiu meu problema.
pip desinstalar pyOpenSSL
pip instalar pyOpenSSL==16.2.0
Eu também vi o erro AttributeError: 'module' object has no attribute 'SSL_ST_INIT'
e sudo pip install pyOpenSSL==16.2.0
resolveu para mim!
+1 funciona para mim
Comentários muito úteis
Você precisa reinstalar o pacote pip após a alteração.
pip uninstall pyOpenSSL
pip install pyOpenSSL==16.2.0
Além disso, em qual sistema operacional você está?