香橙派armbian做可以语音交互的魔镜
1.系统安装与设置
由于香橙派pc plus内置emmc只有8G,所以不能像树莓派那样不顾系统占用,需要精简下系统。首先从官网找到不带图形系统的镜像安装。
1.1 安装nodejs
安装nodejs和pm2,运行如下命令:
1 | curl -sL https://deb.nodesource.com/setup_22.x | sudo bash - |
1.2 最小化安装X
仔细测试了下,pekwm比openbox依赖更少,占用空间更小,所以默认使用pekwm做窗口管理器:
1 | sudo apt install xorg xinit xterm pekwm fonts-wqy-microhei |
1.3 配置自动登录
由于没有安装lightdm之类的登录管理器(这样既省空间也省内存),所以需要先设置自动登录tty:
1 | sudo mkdir -p /etc/systemd/system/getty@tty1.service.d |
写入以下内容:
1 | [Unit] |
之后设置登录tty后自动登录X:
1 | nano ~/.bash_profile |
写入以下内容:
1 | if [ "$(tty)" = "/dev/tty1" ]; then |
1.4 显示设置
添加竖屏显示和屏幕常亮:
1 | nano ~/.pekwm/start |
写入以下内容:
1 | xset s off # 关闭屏保 |
1.5 安装Electron依赖
安装Electron依赖,运行如下命令:
1 | sudo apt install libnss3 libatk1.0-0t64 libatk-bridge2.0-0t64 libcups2t64 libgdk-pixbuf-xlib-2.0-0 libgtk-3-0t64 |
1.6 安装python
armbian默认现在是3.15,但是onnxruntime暂未支持,官方源也没有提供3.11版本的python,所以只能从源码安装,如果后续onnxruntime支持上来了就不需要这么麻烦了。我这里通过pyenv安装python。
首先是安装必要的依赖:
1 | sudo apt update |
之后可以编译安装pyenv:
1 | curl https://pyenv.run | bash |
添加以下内容到~/.bashrc中:
1 | echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc |
重启 shell 或运行:
1 | source ~/.bashrc |
安装指定版本python(如 3.11.8):
1 | pyenv install 3.11.8 |
设全局或本地python版本:
1 | pyenv global 3.11.8 # 全局 |
最后创建虚拟环境,此时python就是 3.11.8:
1 | python -m venv venv |
1.7 安装python语音依赖项
1 | sudo apt install libffi-dev build-essential python3-dev ffmpeg |
最后把MagicMirror拷贝到/home/pi/MagicMirror/目录下并安装依赖,同时把python语音机器人的的依赖安装好,加上系统总共占用4G多一点,对于香橙派内置的8G的EMMC应该足够了。