Portage在Gentoo上如何查看可用的软件版本?

Portage在Gentoo上如何查看可用的软件版本?

我想emerge在 Gentoo 系统上安装使用 foo 程序;所以我只需使用emerge foo来安装,然后 portage 选择其存储库中该软件的最新版本。如果我知道版本号和命名约定,我可以执行emerge =foo.1.2并使用eselect从已安装的软件包中选择当前有效的软件包(如果软件包支持)。

但是,如果我不知道版本号或命名约定,而只想获得可用的 foo 版本的列表,该怎么办?我没有看到一个出现选项可以做到这一点,并且在下面窥探/usr/portage不会给我带来任何结果。

额外奖励:是否有办法找到哪些位置emerge进行民意调查以确定哪些套餐可用?例如,我的系统上的许多 ebuild 都位于非标准位置,但emerge无论如何都能找到它们,因此我试图确定如何emerge构建可用软件版本列表。

答案1

另一种方法是使用 equery 列出可用的关键字,这也将显示可用的版本。

$ [-] equery y pidgin
Keywords for net-im/pidgin:
             |                             | u   |  
             | a a   a           p     s   | n   |  
             | l m   r h i m m   p s   p   | u s | r
             | p d a m p a 6 i p c 3   a x | s l | e
             | h 6 r 6 p 6 8 p p 6 9 s r 8 | e o | p
             | a 4 m 4 a 4 k s c 4 0 h c 6 | d t | o
-------------+-----------------------------+-----+-------
   2.10.9    | + + + o ~ + o o + + o o + + | o 0 | gentoo
[I]2.10.9-r1 | ~ + ~ o + ~ o o + ~ o o ~ + | o   | gentoo

答案2

我本来希望emerge --search提供此功能,可惜它似乎只显示最新版本。

$ [-] emerge --search eix
Searching...    
[ Results for search key : eix ]
[ Applications found : 1 ]

*  app-portage/eix
      Latest version available: 0.29.3
      Latest version installed: 0.29.3
      Size of files: 536 kB
      Homepage:      http://eix.berlios.de
      Description:   Search and query ebuilds, portage incl. local settings, ext. overlays, version changes, and more
      License:       GPL-2

所以回答你的问题:我用了eix这么久,我不太记得我以前做了什么。

$ [-] eix eix$ -c
[I] app-portage/eix
     Available versions:  0.25.5{tbz2} 0.29.3{tbz2} ~0.29.6 ~0.30.0 ~0.30.1 {clang debug +dep doc nls optimization security sqlite strong-optimization strong-security swap-remote tools zsh-completion LINGUAS="de ru"}
     Installed versions:  0.29.3{tbz2}(10:44:38 07.09.2013)(dep nls -clang -debug -doc -optimization -security -sqlite -strong-optimization -strong-security -swap-remote -tools -zsh-completion LINGUAS="-de -ru")
     Homepage:            http://eix.berlios.de
     Description:         Search and query ebuilds, portage incl. local settings, ext. overlays, version changes, and more

答案3

虽然我推荐 lkraav 的解决方案,但这里还有另一种方法:

$ ls /usr/portage/app-portage/eix/
ChangeLog  eix-0.25.5.ebuild  eix-0.29.6.ebuild  eix-0.30.1.ebuild
Manifest   eix-0.29.3.ebuild  eix-0.30.0.ebuild  metadata.xml

当然,这只会为您提供 portage 树中可用于 eix 的所有 ebuild 列表(没有 eix 提供的所有有用信息)。如果您使用外行,更多的 ebuild 将在覆盖层中可用(基本上在其他文件夹中)。

答案4

还有另一种方法,也是我 90% 的时间都使用的方法:

equery list -po [package_name]

相关内容