我想在 Ubuntu 中开发一个软件中心。在ubuntu软件中心中,当我们输入关键字并点击回车按钮时,它会向我们显示相关结果。例如,当我搜索“eclipse”关键字时,ubuntu 软件中心列出了 5 个结果。
我想在我的软件中心中执行类似的功能。
我尝试通过使用 bash 命令(apt search package_name)在 apt 包管理器中进行搜索来解决这个问题,但它给出了所有包作为结果,大约超过 100 个包。
ubuntu软件中心和其他软件中心如何搜索关键字?他们在哪里搜索关键字并检索结果? ubuntu软件中心的源代码太复杂了,我找不到我需要的东西。任何指导将不胜感激。
编辑
我分析了ubuntu软件中心的所有源代码。这些代码包含了太多的技术,很难理解。为了理解这些代码,我必须学习很多技术,可能至少需要一个月的时间,也许这个时间可能不够。我花了这么多时间学习这些技术,如果这些技术不能解决我的问题怎么办?我只知道python,我不熟悉操作系统库等,而且我的时间有限,请指导我。我需要构建一个简单的软件中心,而不是复杂的软件中心。
提前致谢。
最佳答案
它是开源的,甚至可能使用 Python。
要了解安装软件中心的软件包:
$ apt-file find -F /usr/bin/software-center
software-center: /usr/bin/software-center
下载源代码:
$ mkdir software-center
$ cd software-center/
$ apt-get source software-center
在源代码中查找“搜索”一词。 utils/search_query.py 似乎相关。看起来它使用 xapian
模块来完成实际工作。它查询 /var/lib/apt-xapian-index/index
xapian 数据库等。
关于python - ubuntu软件中心如何进行 "search"操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28987193/