Chciałbym zainstalować program foo using emerge
w systemie Gentoo; więc po prostu używam emerge foo
do instalacji, a portage wybiera najbardziej aktualną wersję tego oprogramowania, które znajduje się w jego repozytorium. Jeśli znam numer wersji i sposób nazywania, mogę zrobić emerge =foo.1.2
i użyć, eselect
aby wybrać, który obecnie pakiet inforce jest z zainstalowanych, jeśli pakiet go obsługuje.
Ale co, jeśli nie znam numeru wersji lub konwencji nazewnictwa i chcę tylko listę dostępnych wersji foo? Nie widzę opcji emerge, która by to zrobiła, a węszenie pod /usr/portage
nią nic mi nie daje.
Bonus: czy w ogóle można znaleźć emerge
ankiety lokalizacyjne, aby ustalić, które pakiety są dostępne? Na przykład wiele ebuildów w moich systemach znajduje się w niestandardowych lokalizacjach, ale emerge
i tak je znajduje, więc próbuję ustalić, w jaki sposób emerge
buduje to listę dostępnych wersji oprogramowania.
emerge --info =foo*
czy zamiast tego z --search lub coś takiego ze składni atomu ?man portage
Look for thePORTDIR
Variable. Lokalizacja twojego drzewa Portage jest określona przez ustawienie tej zmiennej. Jako skrót spróbujls ${PORTDIR}
Odpowiedzi:
Chociaż polecam rozwiązanie lkraav, oto inny sposób:
da to oczywiście tylko listę wszystkich ebuildów dostępnych dla eixa w drzewie portage (bez wszystkich fajnych informacji, które dostarcza eix). Jeśli używasz laika, więcej ebuildów będzie dostępnych w nakładkach (zasadniczo w innych folderach).
źródło
Innym sposobem byłoby wylistowanie dostępnych słów kluczowych z equery, to także pokaże dostępne wersje.
źródło
Spodziewałbym
emerge --search
się zapewnić tę funkcjonalność, ale wydaje się, że pokazuje tylko najnowszą wersję.Aby odpowiedzieć na twoje pytanie: używam
eix
tak długo, tak naprawdę nie pamiętam, co robiłem wcześniej.źródło
eix
jako narzędzie Goto. +1Jeszcze inny sposób, z którego korzystam 90% czasu:
źródło