还有一个关于 AppStream的问题——无论好坏——集中在 AppStream 中似乎是一个特定的错误上,但这让我意识到我不知道这件事到底是什么。
man appstreamcli
(应用程序将 CPU 从最深处移除)在混乱中抛出了一些技术术语:
appstreamcli 是一个小型辅助工具,用于处理 AppStream 元数据并从命令行访问 AppStream 组件索引。AppStream 组件索引包含适用于您的分发的所有可用软件组件的列表,与它们的包名称匹配。它是使用您的分销商提供的 AppStream XML 或 Debian DEP-11 数据生成的。
所以......它实际上是为了什么?所有桌面(及其相关的包管理器)都使用它吗?
我实际上的意思是:当我用牙齿把它撕掉时会破裂什么?
AppStream 项目页面添加了一些行话,但确实继续说:
所以这基本上是新软件中心用来从 Apt 获取数据的方式,而不是直接从 Apt 获取数据。
appstreamcli refresh
(人们对使用所有 CPU 感到害怕的事情)是在apt update
重新生成自己的数据之后运行的进程。如问题中所述,此处似乎存在错误。您可以根据反向依赖关系查看需要它的内容:
所以在基本层面上回答“什么会破坏[...]?”,^^那些东西。
如今,Gnome 和 KDE 的软件工具都依赖于它。未来可能会更多。这些间接包管理器中的大多数只是“
recommends
”,因此如果您只使用apt
或仅直接使用 Apt 包库的工具(太多无法列出),您可以在不删除整个桌面环境的情况下摆脱它。您可以使用以下命令模拟移除
apt -s remove appstream
:这是在 KDE 下,所以不要假设任何东西。似乎足够安全。
更新:
apt -s remove appstream
在 Kubuntu 18.04 中运行略有不同:我已在(参见参考资料)
DefaultEnabled "false";
部分添加以避免下载 DEP-11 元数据。deb::DEP-11
/etc/apt/apt.conf.d/50appstream
要禁用所有不需要的 DEP-11 元数据下载,尤其是我已明确设置或更改为的图标
DefaultEnabled "false";
(请参阅文件和60apper
部分)。60icons*
deb::DEP-11-icons*
appstream 缓存被刷新并存储在我的系统上,总大小为 19MiB:
更新:今天的一些数字
apt-get update
:从通常的大约减少下载大小。50MiB 降至 1,5MiB。UPDATE-2:显示所有
DEP-11
APT 配置:root# apt-config dump | grep DEP-11
注 1:涉及包的 APT 配置
appstream
,apper
和apt-config-icons
. 注意 2:我不使用基于 GUI 的包管理器,例如plasma-discover
和gnome-software
升级需要刷新 DEP-11 元数据和图标的软件。