Gdzie mogę znaleźć listę wszystkich dostępnych receptur dla Homebrew?

72

Czy istnieje sposób na uzyskanie listy wszystkich formuł (pakietów), które mogę zainstalować za pomocą homebrew dla Mac OS X?

BetaRide
źródło

Odpowiedzi:

77

online

Możesz odwiedzić formulae.brew.sh .

Z komputera Mac

Jeśli chcesz tylko nazwy pakietów dla wszystkich formuł:

brew search

Następujące polecenie wyświetli listę fragmentów informacji dla wszystkich istniejących formuł Homebrew:

brew info --all

Lub przejrzyj lokalne repozytorium Git - dzięki Mk12 za to:

find /usr/local/Homebrew/ -type d -name "Formula" -exec ls -1 {} \;
slhck
źródło
1
Lub trzecią opcję,ls $(brew --prefix)/Library/Formula
12
2
brew serverjest nieobsługiwany i wkrótce zostanie usunięty. Zamiast tego powinieneś użyć braumeister.org .
Michael Dorst,
brew serverwygląda na to, że został teraz usunięty (dokładny od Homebrew 0.9.5 (wersja git 5745; ostatnie zatwierdzenie 01.01.2016))
stkent 28.01.16
github.com/mxcl/homebrew/tree/master/Library/Formula to już nie działa. Daje 404
cavalcade
1
@MattTagg Dzięki, naprawiłem link. Teraz dzielą formuły na różne repozytoria.
slhck
21

Poza wymienionymi rzeczami, na braumeister.org dostępna jest przeglądarka pakietów online

Marco Peluso
źródło
Udało mi się znaleźć potrzebną wersję. dziękuję
Kryszna Wedula
5

Możesz także zajrzeć na stronę indeksu formuł Homebrew (który jest moim projektem ). Celem tej witryny jest zapewnienie łatwego sposobu wyszukiwania formuły Homebrew.

ZedTuX
źródło
Więc znalazłem brewformulas, ale nie mogę na przykład zlokalizować formuły dla Mess. Czy jest coś, co muszę zrobić, aby zintegrować homebrew i brewformulas?
David Hoelzer,
1

Technicznie odpowiedź udzielona przez @ pengii23 powyżej jest poprawna, ale jak wiemy, JSON nie jest bardzo łatwy do zrozumienia. Co więcej, daje to ponad 266 000 linii wyjściowych dla 4546 pakietów lub więcej niż 56 linii na pakiet.

To, czego naprawdę chcemy, to tylko nazwa pakietu i jego opis. Format może być mniej więcej taki:

package -- description goes here
pack2 -- other description goes here

Teraz, jeśli zrobiłeś a brew install gron, to mam do dyspozycji wiersz polecenia, który wygeneruje typ wyniku powyżej:

$ brew info --json=v1 --all | gron | egrep '(.desc|.full_name) =' | \
grep -v 'runtime_dependencies' | sed 's/full_name/_name/' | \
gron -u | egrep -v '({|}|\[|\])' | \
sed -e 's/^.*"_name": //' -e 's/^.*"desc": //' | tr -d '\n' | \
sed -e 's/""/^I/g' -e 's/","/ -- /g'| tr '\t' '\n' | tr -d '"'

Zauważ, że musisz zastąpić dosłowne „^ I” w powyższym wierszu rzeczywistym znakiem tabulacji. Z jakiegoś powodu mój sed nie lubi „\ t” zamiast dosłownego znaku tabulacji i oczywiście wycinanie i wklejanie prawdziwego znaku tabulacji tutaj nie zadziała.

Tak czy inaczej, oto kilka pierwszych wierszy wyniku powyższego polecenia:

a2ps -- Any-to-PostScript filter
a52dec -- Library for decoding ATSC A/52 streams (AKA 'AC-3')
aacgain -- AAC-supporting version of mp3gain
aalib -- Portable ASCII art graphics library
aamath -- Renders mathematical expressions as ASCII art
aap -- Make-like tool to download, build, and install software
aardvark_shell_utils -- Utilities to aid shell scripts or command-line users
abcde -- Better CD Encoder
abcl -- Armed Bear Common Lisp: a full implementation of Common Lisp
abcm2ps -- ABC music notation software

A oto kilka ostatnich wierszy danych wyjściowych z powyższego polecenia:

zssh -- Interactive file transfers over SSH
zstd -- Zstandard is a real-time compression algorithm
zsxd -- Zelda Mystery of Solarus XD
zsync -- File transfer program
zurl -- HTTP and WebSocket client worker with ZeroMQ interface
zxcc -- CP/M 2/3 emulator for cross-compiling and CP/M tools under UNIX
zxing-cpp -- C++ port of the ZXing barcode decoder
zyre -- Local Area Clustering for Peer-to-Peer Applications
zzuf -- Transparent application input fuzzer
zzz -- Command-line tool to put Macs to sleep

Proszę bardzo! Jeśli przekierujesz to wyjście do pliku, możesz szybko grep pliku do dowolnego rodzaju opisu, którego szukasz.

Na przykład, jeśli szukasz poleceń kompresji, wykonanie polecenia brew search compressnie jest zbyt przydatne:

$ brew search compress
==> Searching local taps...
htmlcompressor            ncompress            yuicompressor
==> Searching taps on GitHub...
==> Searching blacklisted, migrated and deleted formulae...

Ale jeśli zapisaliśmy dane wyjściowe z powyższego polecenia do pliku w /tmp/brew.txt, wówczas prosty grep compress /tmp/brew.txtzwraca 60 trafień! Rzućmy okiem na kilka pierwszych:

$ grep -i compress /tmp/brew.txt | head
advancecomp -- Recompression utilities for .PNG, .MNG, .ZIP, and .GZ files
afsctool -- Utility for manipulating HFS+ compressed files
aften -- Audio encoder which generates ATSC A/52 compressed audio streams
archivemail -- Tool for archiving and compressing old email in mailboxes
brotli -- Generic-purpose lossless compression algorithm by Google
bzip2 -- Freely available high-quality data compressor
draco -- 3D geometric mesh and point cloud compression library
ecm -- Prepare CD image files so they compress better
epsilon -- Powerful wavelet image compressor
exomizer -- 6502 compressor with CBM PET 4032 support

Tak więc, jeśli szukałeś zaawansowanych programów do kompresji, takich jak brotlilub zstd, ale nie znasz dokładnych nazw, których by szukałeś , to brew search compressnie byłoby dla ciebie przydatne, ale przeszukanie wyjścia powyższej komendy zwróciłoby te dwa plus 58 więcej trafienia!

Nie ma za co! ;)

[EDYCJA: Ups! Przepraszam, zapomniałem usunąć runtime_dependenciespoprzednią wersję skryptu. Westchnienie ....]

Brad Knowles
źródło
0

grep desc $(brew --prefix)/Library/Formula/*.rb | perl -ne 'm{^.*/(.*?)\.rb.*?\"(.*)"$} and print "$1\t$2\n"'

rdj
źródło
3
Witamy w Super User! Chociaż może to odpowiedzieć na pytanie, lepszym rozwiązaniem byłoby podanie wyjaśnienia, dlaczego tak się dzieje.
DavidPostill
0

Według stanu na 27 maja 2016 r., Właśnie

brew info --all

nie wystarcza do wylistowania wszystkich formuł. Musisz dodatkowo dodać przełącznik --json = v1 (obecnie obsługiwana jest tylko wersja v1, co można zobaczyć po wpisaniu informacji o zaparzeniu --help):

brew info --json=v1 --all
pengii23
źródło
0

Możesz wyświetlić formuły Homebrew za pomocą polecenia

brew search

lub przeglądaj w Internecie za pomocą http://formulae.brew.sh/ (lub http://braumeister.org/ - wydaje się, że jest to ta sama strona).

Istnieją jednak dodatkowe pakiety, które można zainstalować przy użyciu rozszerzenia Homebrew o nazwie Cask . Może pobierać i instalować gotowe aplikacje binarne, takie jak GIMP, LibreOffice, a nawet aplikacje inne niż FOSS , takie jak TeamViewer. Beczki można wymienić za pomocą

brew cask search

i przeszukałem https://caskroom.github.io/search .

Melebius
źródło