web-dev-qa-db-ja.com

AppStreamとは何ですか?なぜインストールされているのですか?何してるの?

AppStreamについての別の質問 は、良くも悪くも、AppStreamの特定のバグと思われるものに焦点を当てていますが、気づいたままですこのことの実際の手がかり

man appstreamcli(CPUをディープエンドから削除するアプリケーション)は、混乱にいくつかの専門用語を投げかけます。

appstreamcliは、AppStreamメタデータを操作し、コマンドラインからAppStreamコンポーネントインデックスにアクセスするための小さなヘルパーツールです。 AppStreamコンポーネントインデックスには、ディストリビューションで使用可能なすべてのソフトウェアコンポーネントのリストが含まれており、パッケージ名と一致しています。ディストリビューターから提供されたAppStream XMLまたはDebian DEP-11データを使用して生成されます。

それで...実際にそこにあるのは何ですか?すべてのデスクトップ(および関連するパッケージマネージャー)はそれを使用しますか?

私が実際に意味するすべてのことで:これを歯で引き裂くと何が壊れるのか?

21
Oli

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のパッケージライブラリのみを直接使用するツール(リストするには多すぎる)のみを使用する場合、you canデスクトップ環境全体を削除せずに削除します

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の下にあるので、そこから何も仮定しないでください。それは十分に安全なようです。


更新:

Kubuntu 18.04でのapt -s remove appstreamの実行は少し異なります。

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