Где я могу найти список всех формул, доступных для домашнего приготовления?


72

Есть ли способ получить список всех формул (пакетов), которые я могу установить, используя homebrew для Mac OS X?

Ответы:


78

В сети

Вы можете посетить формула.brew.sh .

С вашего Mac

Если вы просто хотите имена пакетов для всех формул:

brew search

Следующая команда выведет список фрагментов информации для всех существующих формул Homebrew:

brew info --all

Или просмотрите локальный репозиторий Git - спасибо Mk12 за это:

find /usr/local/Homebrew/ -type d -name "Formula" -exec ls -1 {} \;

1
Или для третьего вариантаls $(brew --prefix)/Library/Formula
mk12

2
brew serverне поддерживается и будет удален в ближайшее время. Вы должны использовать braumeister.org вместо этого.
Майкл Дорст

brew serverПохоже, что теперь он удален (с точностью до Homebrew 0.9.5 (git revision 5745; последний коммит 2016-01-04))
stkent

github.com/mxcl/homebrew/tree/master/Library/Formula это больше не работает. Дает 404
кавалькада

1
@ MattTagg Спасибо, я исправил ссылку. Теперь они разбили формулы на разные репо.
slhck


5

Вы также можете взглянуть на сайт индекса формул Homebrew (это мой проект ). Цель этого веб-сайта - предоставить простой способ поиска формулы для домашнего пива.


Таким образом, я нашел brewformulas, но, кажется, не могу найти формулу для Mess, например. Есть ли что-то, что мне нужно сделать, чтобы интегрировать формулу домашнего и пивоваренного производства?
Дэвид Хоэлзер,

1

Технически, ответ, предоставленный @ pengii23 выше, является правильным, но, как мы знаем, JSON не очень легко понять. Более того, в результате получается более 266 000 строк для 4546 пакетов или более 56 строк на пакет.

Что мы действительно хотим, так это просто имя пакета и описание пакета. Формат может быть примерно таким:

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

Теперь, если вы сделали a brew install gron, то у меня есть doozy командной строки для вас, которая сгенерирует тип вывода выше:

$ 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 '"'

Обратите внимание, что вы должны заменить буквенный символ «^ I» в строке выше реальным символом табуляции. По какой-то причине моему sed не нравится '\ t' вместо буквального символа табуляции, и, конечно, вставка реального символа табуляции здесь не сработает.

Во всяком случае, вот несколько первых строк вывода команды выше:

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

И вот последние несколько строк вывода из команды выше:

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

Вот и вы! Если вы перенаправите этот вывод в файл, вы сможете быстро найти файл для любого вида описания, которое вы ищете.

Например, если вы ищете команды сжатия, выполнение brew search compressне очень полезно:

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

Но если мы сохранили вывод из команды выше в файл в /tmp/brew.txt, то простое grep compress /tmp/brew.txtвозвращает 60 попаданий! Давайте посмотрим на первые несколько:

$ 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

Итак, если вы искали расширенные программы сжатия, такие как brotliили zstd, но не знали точных имен для поиска, то brew search compressэто было бы бесполезно для вас, но просмотр выходных данных вышеупомянутой команды вернул бы эти два плюс еще 58 хиты!

Пожалуйста! ;)

[РЕДАКТИРОВАТЬ: Ой! Извините, я забыл удалить runtime_dependenciesпредыдущую версию скрипта. Вздох ....]


0

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


3
Добро пожаловать в Супер пользователя! Хотя это может дать ответ на вопрос, было бы лучше, если бы вы могли объяснить, почему это так.
ДэвидПостилл

0

По состоянию на 27 мая 2016 года только

brew info --all

недостаточно для перечисления всех формул. Вы должны дополнительно добавить ключ --json = v1 (в настоящее время поддерживается только v1, что вы можете увидеть, набрав brew info --help):

brew info --json=v1 --all

0

Вы можете получить список формул Homebrew, используя команду

brew search

или просматривать в Интернете, используя http://formulae.brew.sh/ (или http://braumeister.org/ - кажется, это та же страница).

Однако существуют дополнительные пакеты, которые можно установить с помощью расширения Homebrew, которое называется Cask . Он может загружать и устанавливать готовые бинарные приложения, такие как GIMP, LibreOffice или даже не- FOSS, такие как TeamViewer. Бочки могут быть перечислены с помощью

brew cask search

и искал на https://caskroom.github.io/search .

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.