『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 12354|回复: 39

[基础教程] Termux安装hass(version:2021.12.10)教程

[复制链接]

2

主题

56

帖子

571

积分

高级会员

Rank: 4

积分
571
金钱
515
HASS币
0
发表于 2022-1-28 14:43:40 | 显示全部楼层 |阅读模式
本帖最后由 Adsort 于 2022-3-21 17:29 编辑

想着装个hass,看了下树莓派的价格,还是利用一下旧手机吧。
先后折腾了Termux, linux deploy ,aidlux,各种踩坑。
先说deploy吧,要root。可怜华为18年关掉了解锁bl通道,为了root,还花了10块钱解bl。装完deploy,发现各种坑爹,这ui设计,这流程控制,太折腾了,1天时间弃坑
又试了Termux,从酷安下载的,卡第一屏,vpn也上了,也不行。放弃。
再然后是aidlux,这个不错,前期都没啥,推荐新手先试试。最后弃坑是因为折腾的过程中hass升级了,然后一堆报错,然后hass就不能用了。同时觉得他的桌面环境其实是多余的,命令行的就够了。关键是找资料的时候看到其实aidlux也是魔改了Termux,那我还不如直接用Termux。
理论上,适用Termux的,aidlux也行,我是用了termux觉得没啥为题,后面也就不折腾了。


以下是正文
    手机:华为P9
    系统:emui 8.0.0.558(现在可以升级的最新版)
    root:有,但不重要,只做hass服务器的话不需要root               
    hass版本:2021.12.10,这个很重要,以后的版本不一定适用。
    Termux版本:118


步骤:
1、安装 Termux
    从f-droid商店安装,酷安的有问题,不要下。
    地址:https://f-droid.org/repo/com.termux_118.apk
2、换清华源  
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list
apt update && apt upgrade -y

2.5、安装openssh(非必要)
pkg install openssh
passwd
sshd
 

   也不难,教程一搜就有
3、安装环境
pkg install  clang  openssl libffi wget vim zsh tsu wget git zip neofetch clang make cmake curl  libxml2  libxslt rust libsodium libjpeg-turbo termux-tools -y

4、安装python
    按照pip上hass的介绍,使用3.8,3.9的py都可以,折腾累了,直接装3.9吧。python版本号不要高,3.9就行,否则装cryptography的时候会error: cannot set a minimum Python version 3.6 higher than the interpreter version 3.1 (the minimum Python version is implied by the abi3-py36 feature)
py的版本识别是个巨坑。除非你能自行装上cryptography35.0.0
wget https://cdn.jsdelivr.net/gh/Termux-pod/termux-pod@main/aarch64/python/python-3.9.7/python_3.9.7_aarch64.deb
dpkg -i ./python_3.9.7_aarch64.deb
echo "python hold" | dpkg --set-selections

    折腾的过程中,不小心 pkg install python了,升级到了3.10,降级后发现pip用不了了,
apt --fix-broken install
pip install --upgrade pip setuptools
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

    修复一下
5、安装hass
    安装hass会有几个坑,运行hass也会有坑,所以要先安装依赖库
    a. 安装PyNaCl,有版本限定,类似的问题1.4.0改成其他的就行。libsodium前期就要先装好。
SODIUM_INSTALL=system pip install PyNaCl==1.4.0

    b.安装numpy,scipy(scipy忘了是不是必须的)
wget https://its-pointless.github.io/setup-pointless-repo.sh
bash setup-pointless-repo.sh
pkg install numpy scipy
   
    c.安装Pillow8.2.0。这个坑最大,很多人再问,其实就是因为这个版本太老了,没指定64位的lib位置,装Pillow最新版的hass还不认。
LDFLAGS="-L/system/lib64/" CFLAGS="-I/data/data/com.termux/files/usr/include/" pip install Pillow==8.2.0 to install
 

    2月20补充:Pillow8.2.0在最新版hass里面更新了,不需要了,直接装9.0.1就行了,不用这么复杂了。

    d.安装cryptography35.0.0。这个坑和Pillow8.2.0一样,也是劝退一堆人。cryptography有依赖库的,按照步骤来,有问题的看上边3安装环境
export CARGO_BUILD_TARGET=aarch64-linux-android
pip install cryptography==35.0.0

    2月20补充:
    cryptography35.0.0是个磨人的小妖精。每次装都不太顺利,明明都是一样的操作,就是报错,ssl啥的都装了,还是不行,还是报Could not build wheels for cryptography, which is required to install pyproject.toml-based projects

补充一个终极办法,直接拷贝
cryptography-35.0.0.dist-info.zip (1.83 MB, 下载次数: 206)
把附件解压,直接复制到 /data/data/com.termux/files/usr/lib/python3.9/site-packages 里面 ,pip list 看看是不是有了。注意,Python的版本要是3.9的。3.10的可能装不上,估计直接复制粘贴也能用,请自行测试。
    e.安装hass,暂时hass版本停留在21.12.10,后面的版本不能通过网页重启,也没加什么特别的功能
pip install aiohttp_cors tzdata FFmpeg Crypto homeassistant==2021.12.10

6、运行 hass。不出意料的话应该是可以了,第一次会比较慢,理论上这时候登录127.0.0.1:8123就行了,我这边报了一个错ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
不影响使用,就这样吧



   













回复

使用道具 举报

0

主题

5

帖子

30

积分

新手上路

Rank: 1

积分
30
金钱
24
HASS币
0
发表于 2022-1-28 17:14:22 | 显示全部楼层
同样在用手机装,试了一天Termux,也是各种网络不通,最后选用了aidlux。
遇到的几个问题:
1.无法ssh上去,手机敲命令太麻烦。发现有个cloud_ip,可以在电脑上打开桌面使用终端,勉强能用
2.python版本,aidlux内置的是3.7,还不能升级系统的python,不然桌面功能无法使用了。试了各种办法,最后用conda创建了虚拟环境
3.一些功能不支持,启动报错 usb dhcp 获取时区等,大部分都是python没权限调用底层系统的功能,没找到解决方案,就先把功能屏蔽了
回复

使用道具 举报

2

主题

56

帖子

571

积分

高级会员

Rank: 4

积分
571
金钱
515
HASS币
0
 楼主| 发表于 2022-1-28 17:26:24 | 显示全部楼层
a1336285044 发表于 2022-1-28 17:14
同样在用手机装,试了一天Termux,也是各种网络不通,最后选用了aidlux。
遇到的几个问题:
1.无法ssh上去 ...

你说的对。
1、ssh确实不是必须的,有电脑谁还用手机。我是wps便签把过程记录下来,手机上复制粘贴的,也还算好,照着上面一步一步做,还是容易的。实在觉得烦的话电脑上装个anlink,电脑操作手机也行啊。
2、py可以多版本同时存在的,但对功能要求单一的人来说,就装一个3.x也行。好像3。7也没问题,就是日志里面会报几个WARNING ,不看就行。反正设备连上去一堆WARNING
3、这个问题我也碰到过,试着修复的时候aidlux就卡第一屏了,感觉还是不太稳定。
回复

使用道具 举报

2

主题

56

帖子

571

积分

高级会员

Rank: 4

积分
571
金钱
515
HASS币
0
 楼主| 发表于 2022-1-28 17:45:09 | 显示全部楼层
本帖最后由 Adsort 于 2022-1-28 17:46 编辑

编辑器吃代码
c.安装Pillow8.2.0。这个坑最大,很多人再问,其实就是因为这个版本太老了,没指定64位的lib位置,装Pillow最新版的hass还不认。
LDFLAGS="-L/system/lib64/" CFLAGS="-I/data/data/com.termux/files/usr/include/"

pip install Pillow==8.2.0 to install


d.安装cryptography35.0.0。这个坑和Pillow8.2.0一样,也是劝退一堆人。cryptography有依赖库的,按照步骤来,有问题的看上边3安装环境
export CARGO_BUILD_TARGET=aarch64-linux-android7
pip install cryptography==35.0.0


回复

使用道具 举报

1

主题

176

帖子

2266

积分

金牌会员

Rank: 6Rank: 6

积分
2266
金钱
2090
HASS币
0
发表于 2022-1-28 18:39:25 | 显示全部楼层
几十块钱买个盒子吧,Termux各种坑
回复

使用道具 举报

2

主题

56

帖子

571

积分

高级会员

Rank: 4

积分
571
金钱
515
HASS币
0
 楼主| 发表于 2022-1-28 20:59:28 | 显示全部楼层
盒子我也有,上班不能带啊。旧手机就不一样了,地铁上一样用调试
回复

使用道具 举报

54

主题

317

帖子

1371

积分

金牌会员

Rank: 6Rank: 6

积分
1371
金钱
1054
HASS币
0
发表于 2022-1-28 22:20:02 来自手机 | 显示全部楼层
MattSmell 发表于 2022-1-28 18:39
几十块钱买个盒子吧,Termux各种坑

请问买什么盒子?几十元也想买一个
回复

使用道具 举报

2

主题

56

帖子

571

积分

高级会员

Rank: 4

积分
571
金钱
515
HASS币
0
 楼主| 发表于 2022-1-28 23:08:04 来自手机 | 显示全部楼层
应该是斐讯n1吧
回复

使用道具 举报

54

主题

317

帖子

1371

积分

金牌会员

Rank: 6Rank: 6

积分
1371
金钱
1054
HASS币
0
发表于 2022-1-28 23:44:59 来自手机 | 显示全部楼层
Adsort 发表于 2022-1-28 23:08
应该是斐讯n1吧

没找到几十元的
回复

使用道具 举报

2

主题

56

帖子

571

积分

高级会员

Rank: 4

积分
571
金钱
515
HASS币
0
 楼主| 发表于 2022-1-29 00:23:17 | 显示全部楼层
玩客云?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 10:51 , Processed in 0.141548 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表