什么是AppStream?为什么要安装?到底在做什么


22

关于AppStream,还有一个问题(或多或少)都集中在AppStream中似乎是特定错误的地方,但是这让我意识到我不知道这到底是什么

man appstreamcli (使CPU掉头的应用程序)会引起一些技术术语的混乱:

appstreamcli是一个小型助手工具,可用于处理AppStream元数据并从命令行访问AppStream组件索引。AppStream组件索引包含供您分发的所有可用软件组件的列表,并与它们的程序包名称匹配。它是使用您的发行商提供的AppStream XML或Debian DEP-11数据生成的。

那么...实际上是为了什么呢?所有台式机(及其相关的软件包管理器)是否都使用它?

我实际上指的是所有这些:当我用牙齿将其撕裂时,会破裂吗?


1
如果没有它,我可以运行Ubuntu 16.04服务器。
乔斯

3
除非您想在嘴里尝到酸味,否则请考虑改用爪子。
muru

而且它不在Lubuntu中,而且我认为在Ubuntu Mate中
Monica的正义组织

Answers:


18

AppStream项目页面增加了一个小更行话但走上说:

它提供了以软件包为中心的以应用程序为中心的视图所必需的元数据,从而为构建软件中心应用程序奠定了基础。AppStream还为诸如统一软件元数据数据库,屏幕快照服务以及为(Linux)发行版创建用户友好的应用程序中心所需的各种其他事项提供规范。

因此,基本上,这就是新软件中心用来从而不是直接从Apt获取数据的方式。appstreamcli refresh(人们不愿使用所有CPU的事情)是apt update重新生成自己的数据后运行的过程。正如问题中提到的,这里似乎存在一个错误。

您可以根据反向依赖关系查看需要什么:

$ apt rdepends appstream
appstream
Reverse Depends:
  Breaks: libapt-pkg5.0 (<< 0.9.0-3~)
  Depends: plasma-discover
  Depends: plasma-discover
  Depends: gnome-software
  Depends: plasma-discover
  Depends: isenkram-cli
  Recommends: check-all-the-things
  Depends: appstream-index (>= 0.9.4-1)
  Recommends: libappstreamqt1 (>= 0.9.4-1)
  Suggests: appstream-doc
  Depends: gnome-software

因此,从根本上回答“什么会破坏[...]?”,^^那东西。

今天,Gnome和KDE的软件工具都依赖它。将来可能会有更多。大多数这些间接的包管理器都只是“ recommends”所以,如果你只使用过apt或仅直接使用apt的包库(太多列表)的工具,可以摆脱它无需拆卸整个桌面环境

您可以使用以下方法模拟移除apt -s remove appstream

$ apt -s remove appstream
NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-4.5-2.dmz.4-liquorix-amd64 linux-headers-4.5-3.dmz.1-liquorix-amd64 linux-image-4.5-2.dmz.4-liquorix-amd64
  linux-image-4.5-3.dmz.1-liquorix-amd64
Use 'apt autoremove' to remove them.
The following packages will be REMOVED
  appstream muon-discover plasma-discover
0 to upgrade, 0 to newly install, 3 to remove and 80 not to upgrade.
Remv muon-discover [4:5.6.4+p16.04+git20160517.1518-0]
Remv plasma-discover [5.6.4+p16.04+git20160517.1518-0]
Remv appstream [0.9.4-1]

这是在KDE中进行的,因此不要假设任何事情。看起来足够安全。


更新:

apt -s remove appstream在Kubuntu 18.04中运行略有不同:

Remv plasma-discover [5.12.6-0ubuntu0.1]
Remv apt-config-icons-large-hidpi [0.12.0-3ubuntu1]
Remv apt-config-icons-large [0.12.0-3ubuntu1]
Remv apt-config-icons [0.12.0-3ubuntu1] [apt-config-icons-hidpi:amd64 ]
Remv appstream [0.12.0-3ubuntu1] [apt-config-icons-hidpi:amd64 ]
Remv apt-config-icons-hidpi [0.12.0-3ubuntu1]
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.