¿Qué es AppStream? ¿Por qué está instalado? ¿Qué está haciendo?

22

Hay otra pregunta sobre AppStream que se ha centrado, para bien o para mal, en lo que parece ser un error particular en AppStream, pero que me hizo darme cuenta de que no tengo ni idea de lo que realmente es .

man appstreamcli (la aplicación que saca la CPU del extremo profundo) arroja algo de jerga técnica ante la confusión:

appstreamcli es una pequeña herramienta auxiliar para trabajar con metadatos de AppStream y acceder al índice del componente AppStream desde la línea de comandos. El índice de componentes de AppStream contiene una lista de todos los componentes de software disponibles para su distribución, que coinciden con los nombres de sus paquetes. Se genera utilizando datos AppStream XML o Debian DEP-11, que son proporcionados por su distribuidor.

Entonces ... ¿para qué sirve realmente? ¿Lo usan todos los equipos de escritorio (y sus administradores de paquetes relacionados)?

Con todo lo que realmente quiero decir: ¿qué se romperá cuando arranque esto con mis dientes?

Oli
fuente
1
Ejecuto un servidor Ubuntu 16.04 perfectamente bien sin él.
Jos
3
A menos que desee un sabor agrio en la boca, considere usar sus garras en su lugar.
muru
Y no está en Lubuntu y, creo, en Ubuntu Mate
Justice for Monica

Respuestas:

18

La página del proyecto AppStream agrega un poco más de jerga, pero dice:

Proporciona la base para construir aplicaciones de centro de software, al proporcionar metadatos necesarios para una vista centrada en la aplicación en repositorios de paquetes. AppStream también proporciona especificaciones para cosas como una base de datos de metadatos de software unificado, servicios de captura de pantalla y varias otras cosas necesarias para crear centros de aplicaciones fáciles de usar para distribuciones (Linux).

Entonces, esto es básicamente lo que los nuevos centros de software están utilizando para obtener sus datos, en lugar de directamente de Apt. appstreamcli refresh(Lo que la gente está volviendo loca por usar toda la CPU) es el proceso que se ejecuta después de un apt updatepara regenerar sus propios datos. Como se menciona en la pregunta, parece que hay un error aquí.

Puede ver qué lo necesita en función de las dependencias inversas:

$ 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

Entonces, en un nivel base para responder "¿Qué se romperá [...]?", ^^ esas cosas.

Las herramientas de software de Gnome y KDE dependen de ello hoy. Más mayo en el futuro. La mayoría de estos gestor de paquetes indirecta son sólo " recommends" por lo que si sólo utiliza siempre apto herramientas que sólo utilizan la biblioteca de paquetes de Apt directamente (demasiados a la lista), usted puede deshacerse de él sin quitar todo el entorno de escritorio .

Puede simular una eliminación con 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]

Esto está bajo KDE, así que no asumas nada de eso. Parece lo suficientemente seguro.


Actualizar:

Ejecutar apt -s remove appstreamen Kubuntu 18.04 es ligeramente diferente:

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]
Oli
fuente