HomeAssistant本地开发环境搭建(Ubuntu)

官网教程https://developers.home-assistant.io/docs/development_environment

下方流程在撰写时经过反复尝试,如非必要请勿更改执行流程(例如使用python管理软件安装python12),同时建议严格按照文章中的快照点进行快照拍摄。

下图为本文尝试过程展示,无需模仿。虽然只有几个快照,但回退了无数次,才找到下文比较稳定的安装流程

一、开发环境

1、安装ubuntu

使用Ubuntu 22.04.5 LTS 

下载地址https://releases.ubuntu.com/22.04/?_gl=1*19ip6hm*_gcl_au*MTE4NTIyOTI0MS4xNzA3MTMxMDQx&_ga=2.161936764.1916064329.1731320104-1532403606.1731320084

下载后在WMware进行运行。

同时安装VScode。

2、更换阿里云源

1)备份/etc/apt/sources.list

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2)编辑源列表文件,nano ctrl+K删除行,vim dd删除行

sudo nano /etc/apt/sources.list

3)替换为阿里云源

粘贴下方内容到/etc/apt/sources.list

注意,下方为Ubuntu 22.04 (Jammy Jellyfish)专用

deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse

4)更新软件包列表

sudo apt update

5)升级已安装的软件包(可选)

sudo apt upgrade

在此拍摄虚拟机快照

3、升级python版本到12

1)安装必要依赖

sudo apt install -y software-properties-common build-essential libbz2-dev libssl-dev libreadline-dev libsqlite3-dev libncurses5-dev libgdbm-dev libnss3-dev libatk1.0-0 libx11-xcb1 libxkbcommon0 libxrender1 libxext6 libx11-6 libxfixes3 libxdamage1 libxcomposite1 libxcursor1 libxrandr2 libpangocairo-1.0-0 libpango-1.0-0 libgtk-3-0 libdbus-1-3 libexpat1 liblzma5 zlib1g libffi-dev libdb-dev libgdbm-dev liblzma-dev tk-dev uuid-dev libnsl-dev zlib1g-dev

2)下载python3.12源码

访问https://www.python.org/ftp/python/,查看有哪些版本可供选择,替换掉下方全部的3.12.7(不替换也行)

wget https://www.python.org/ftp/python/3.12.7/Python-3.12.7.tgz
tar -xf Python-3.12.7.tgz
cd Python-3.12.7

3)编译和安装,建议一步一步来

./configure
make -j $(nproc)
sudo make altinstall

4)验证python3.12和pip3.12是否安装成功

python3.12 -V
pip3.12 -V

在此拍摄虚拟机快照

5)创建软链接

sudo ln -sf /usr/local/bin/python3.12 /usr/bin/python3
sudo ln -sf /usr/local/bin/python3.12 /usr/bin/python
sudo ln -sf /usr/local/bin/pip3.12 /usr/bin/pip3
sudo ln -sf /usr/local/bin/pip3.12 /usr/bin/pip

6)修复terminal无法快捷键呼出问题

sudo apt-get install -y libcairo2-dev gir1.2-gobject-2.0 libgirepository1.0-dev
pip3 install PyGObject

验证python、python3命令版本是否正确,ctrl+alt+T是否能打开terminal,若均正常则拍摄虚拟机快照

二、拉取代码

1、前往https://github.com/home-assistant/core,点击Fork

2、在虚拟机桌面打开终端,拉取fork的代码

sudo apt install git
git clone https://github.com/YOUR_GIT_USERNAME/short_name_of_your_fork

3、保存备份文件,可不执行这一步

cp -r short_name_of_your_fork HAbak

 或将文件保存到宿主机,避免恢复快照带来的下载内容丢失

4、进入拉取的代码文件夹

cd short_name_of_your_fork

5、添加远程仓库

git remote add upstream https://github.com/home-assistant/core.git

6、安装环境

script/setup

7、进入安装的虚拟环境,以后每次启动新的终端后都要这样做

source venv/bin/activate

8、运行hass

hass -c config

9、ubuntu浏览器访问127.0.0.1:8123即可,中途就能访问成功,但一般是到显示下图才是启动完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值