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


13

我想emerge在Gentoo系统上安装foo程序;因此,我只是简单地使用emerge foo安装和移植选择其存储库中该软件的最新版本。如果我知道版本号和命名约定,我可以这样做emerge =foo.1.2并使用它eselect来从安装的软件包中选择当前生效的软件包(如果该软件包支持的话)。

但是,如果我不知道版本号或命名约定,而只想获取foo的哪些版本列表,该怎么办?我没有看到执行此操作的紧急选项,并且在/usr/portage任何地方窥探都不给我任何东西。

奖励:总有没有找到哪些位置emerge调查来确定可用的软件包?例如,我系统上的许多ebuild都位于非标准位置,但是emerge无论如何都能找到它们,因此我试图确定如何emerge构建它的可用软件版本列表。


也许emerge --info =foo*还是使用--search或原子语法中的类似内容?

您需要阅读“ man portage 查找PORTDIR变量”。Portage Tree的位置由该变量的设置确定。作为捷径尝试ls ${PORTDIR}
eyoung100 2014年

@inetplumber护理选择答案?
lkraav 2015年

Answers:


6

虽然我会推荐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(基本上在其他文件夹中)。


ls -1可能为此提供了更好的单列视图。
lkraav 2014年

我喜欢结合知道系统的PORTDIR位置的这种方法。
inetplumber

此方法不提供有关安装内容,构建的二进制程序包等的信息
lkraav

8

另一种方法是使用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

7

我本来希望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

我绝对会eix成为Goto工具的第二名。+1
eyoung100

0

还有另一种方式,我90%的时间都在使用:

equery list -po [package_name]
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.