描述您希望的解决方案
dev_setup.sh脚本为构建过程安装了许多软件包:
mycroft-core/dev_setup.sh
1b67bf3中的第361行到第366行
| | functiondebian_install() { |
| | APT_PACKAGE_LIST=(git python3 python3-dev python3-setuptools libtool \ |
| | libffi-dev libssl-dev autoconf automake bison swig libglib2.0-dev \ |
| | portaudio19-dev mpg123 screen flac curl libicu-dev pkg-config \ |
| | libjpeg-dev libfann-dev build-essential jq pulseaudio \ |
| | pulseaudio-utils) |
这些都是运行MyCroft所需的吗?还是有些只是用于安装?如果像build-essential
和pkg-config
这样的东西可以在脚本末尾删除,那么安装大小会有很大的不同(尤其对于Docker构建和PiCroft来说非常相关)。
1条答案
按热度按时间piztneat1#
这是一个棘手的问题。我认为有些包确实不再需要了(例如屏幕)。
其他一些包(如libicu-dev)仅在安装过程中的Mimic1构建中需要。由于mimi3已经发布并且非常酷,这些包可能会很快被淘汰。
我认为Libjpeg-dev仅在Mark-1 shell 中需要,因此理论上可以从通用软件包安装中删除。
libglib2.0-dev也可能被放弃。我认为它最初是为了默认的“桌面启动应用程序”技能而添加的。
Build-essential、automake、bison和其他一些包处于一种不确定的状态。它们用于构建mimi,所以当/如果mimi3作为默认发行版时,它们就不再需要了。然而,它们对于允许pip在不存在二进制轮子的情况下构建C库等很有用。
此外,请记住,dev_setup.sh主要用于开发环境设置,而不是真正的分发。Picroft使用它,因为它原本是一个开发平台。例如,Dockerfile可以替换dev_setup.sh以便在Docker中安装所需的软件包。