Che cos'è AppStream? Perché è installato? Cosa sta facendo?


22

C'è un'altra domanda su AppStream che si è focalizzata, nel bene o nel male, su quello che sembra essere un bug particolare in AppStream, ma che mi ha fatto capire che non ho idea di cosa sia questa cosa .

man appstreamcli (l'applicazione che toglie la CPU dal profondo) genera un gergo tecnico nella confusione:

appstreamcli è un piccolo strumento di supporto per lavorare con i metadati AppStream e accedere all'indice del componente AppStream dalla riga di comando. L'indice del componente AppStream contiene un elenco di tutti i componenti software disponibili per la distribuzione, abbinati ai nomi dei loro pacchetti. Viene generato utilizzando i dati XML di AppStream o Debian DEP-11, forniti dal proprio distributore.

Quindi ... A cosa serve davvero? Lo usano tutti i desktop (e i relativi gestori di pacchetti)?

Con tutto ciò che intendo davvero: cosa si romperà quando lo strappo con i denti?


1
Ho eseguito un server Ubuntu 16.04 perfettamente bene senza di esso.
Jos

3
A meno che tu non voglia un sapore aspro in bocca, considera invece di usare gli artigli.
Muru,

E non è in Lubuntu e, credo, in Ubuntu Mate
Justice for Monica,

Risposte:


18

La pagina del progetto AppStream aggiunge un po 'più di gergo ma continua dicendo:

Fornisce le basi per la creazione di applicazioni software-center, fornendo i metadati necessari per una visione incentrata sull'applicazione sui repository di pacchetti. AppStream fornisce inoltre specifiche per cose come un database unificato di metadati software, servizi di screenshot e varie altre cose necessarie per creare centri applicativi facili da usare per le distribuzioni (Linux).

Quindi questo è fondamentalmente ciò che i nuovi centri software utilizzano per ottenere i loro dati, anziché direttamente da Apt. appstreamcli refresh(la cosa che la gente sta impazzendo sull'uso di tutta la CPU) è il processo che viene eseguito dopo apt updateper rigenerare i propri dati. Come menzionato nella domanda, qui sembra esserci un bug.

Puoi vedere di cosa ha bisogno in base alle dipendenze inverse:

$ 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

Quindi a livello di base per rispondere "Cosa romperà [...]?", ^^ quella roba.

Entrambi gli strumenti software di Gnome e KDE dipendono da questo oggi. Più maggio in futuro. La maggior parte di questi package manager indiretta sono solo " recommends" quindi se si usano sempre apto gli strumenti che utilizzano unica biblioteca pacchetto di Apt direttamente (troppi da elencare), si può sbarazzarsi di esso senza rimuovere l'intero ambiente desktop .

Puoi simulare una rimozione 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]

Questo è sotto KDE, quindi non assumerne nulla. Sembra abbastanza sicuro.


Aggiornare:

L'esecuzione apt -s remove appstreamin Kubuntu 18.04 è leggermente diversa:

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]
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.