AppStream คืออะไร ทำไมถึงติดตั้ง มันทำอะไรอยู่?


22

มีคำถามอื่นเกี่ยวกับ AppStreamที่มีเผื่อดีขึ้นหรือ worse- เน้นในสิ่งที่ดูเหมือนจะเป็นปัญหาโดยเฉพาะอย่างยิ่งใน AppStream แต่ที่เหลือฉันตระหนักถึงฉันไม่ได้มีเบาะแสว่าสิ่งนี้เป็นจริง

man appstreamcli (แอปพลิเคชันที่ใช้ CPU ปิดส่วนลึก) ทำให้ศัพท์แสงทางเทคนิคบางอย่างสับสน:

appstreamcli เป็นเครื่องมือตัวช่วยเล็ก ๆ เพื่อทำงานกับข้อมูลเมตาของ AppStream และเข้าถึงดัชนีองค์ประกอบ AppStream จากบรรทัดคำสั่ง ดัชนีองค์ประกอบ AppStream มีรายการส่วนประกอบซอฟต์แวร์ที่มีอยู่ทั้งหมดสำหรับการแจกจ่ายของคุณตรงกับชื่อแพ็คเกจ มันถูกสร้างขึ้นโดยใช้ข้อมูล AppStream XML หรือ Debian DEP-11 ซึ่งจัดทำโดยผู้จัดจำหน่ายของคุณ

ดังนั้น ... มันคืออะไรจริงเพื่อ? เดสก์ท็อปทั้งหมด (และผู้จัดการแพ็คเกจที่เกี่ยวข้อง) ใช้งานหรือไม่

โดยทั้งหมดที่ฉันหมายถึงจริง: สิ่งที่จะแตกเมื่อฉันฉีกออกด้วยฟันของฉัน?


1
ฉันเรียกใช้เซิร์ฟเวอร์ Ubuntu 16.04 โดยไม่มีปัญหา
Jos

3
หากคุณไม่ต้องการรสเปรี้ยวในปากลองใช้กรงเล็บแทน
muru

และมันไม่ได้อยู่ใน Lubuntu และฉันคิดว่าใน Ubuntu Mate
ความยุติธรรมสำหรับโมนิก้า

คำตอบ:


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]
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.