web-dev-qa-db-fra.com

Où puis-je trouver une liste de toutes les formules disponibles pour homebrew?

Existe-t-il un moyen d’obtenir la liste de toutes les formules (packages) que je peux installer avec homebrew pour Mac OS X?

68
BetaRide

En ligne

Vous pouvez visiter formulae.brew.sh .

Depuis votre Mac

Si vous voulez juste les noms de paquet pour toutes les formules:

brew search

La commande suivante répertorie les extraits d'informations de toutes les formules Homebrew existantes:

brew info --all

Ou parcourez le référentiel Git local, grâce à Mk12 pour cela:

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

En plus des choses mentionnées par Slhck, un navigateur de paquets en ligne est disponible à l'adresse braumeister.org

21
Marco Peluso

Vous pouvez également consulter le index des formules Homebrew site Web (qui est mon projet ). L'objectif de ce site Web est de fournir un moyen simple de rechercher une formule Homebrew.

5
ZedTuX

Techniquement, la réponse fournie par @ pengii23 ci-dessus est correcte, mais comme nous le savons, JSON n'est pas très facile à comprendre. De plus, cela représente plus de 266 000 lignes de sortie pour 4546 paquets, soit plus de 56 lignes par paquet.

Ce que nous voulons vraiment, c’est juste le nom du paquet et sa description. Le format pourrait être quelque chose comme ceci:

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

Maintenant, si vous avez fait un brew install gron, alors j'ai un doozy de ligne de commande pour vous qui générera le type de sortie ci-dessus:

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

Notez que vous devez remplacer le littéral "^ I" dans la ligne ci-dessus par un caractère de tabulation. Pour une raison quelconque, mon sed n’aime pas "\ t" au lieu d’un caractère de tabulation littéral, et bien sûr couper-coller un véritable caractère de tabulation ne fonctionnera pas ici.

Quoi qu'il en soit, voici les premières lignes de sortie de la commande ci-dessus:

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

Et voici les dernières lignes de sortie de la commande ci-dessus:

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

Voilà! Si vous redirigez cette sortie vers un fichier, vous pouvez alors rapidement greper le fichier, quel que soit le type de description recherché.

Par exemple, si vous recherchez des commandes de compression, effectuer un brew search compress n’est pas très utile:

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

Mais si nous avons enregistré le résultat de la commande ci-dessus dans un fichier dans /tmp/brew.txt, un simple grep compress /tmp/brew.txt renvoie 60 occurrences! Jetons un coup d'oeil sur les premiers:

$ 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

Donc, si vous recherchez des programmes de compression avancés tels que brotli ou zstd, mais que vous ne connaissiez pas les noms exacts à rechercher, alors brew search compress ne vous serait pas utile, mais passer par la sortie de la commande ci-dessus renverrait ces deux plus 58 autres hits!

De rien! ;)

[EDIT: Oups! Désolé, j'avais oublié de supprimer le runtime_dependencies de la version précédente du script. Soupir.... ]

1
Brad Knowles

Vous pouvez lister les formules Homebrew en utilisant la commande

brew search

ou naviguez sur le Web à l'aide de http://formulae.brew.sh/ (ou http://braumeister.org/ - il semble que ce soit la même page).

Cependant, d'autres packages peuvent être installés à l'aide d'une extension Homebrew appelée Cask . Il peut télécharger et installer des applications binaires préconfigurées telles que GIMP, LibreOffice ou même des applications non- FOSS telles que TeamViewer. Les fûts peuvent être listés en utilisant

brew cask search

et recherché sur https://caskroom.github.io/search .

0
Melebius

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

0
rdj

À partir du 27 mai 2016, seulement

brew info --all

n'est pas suffisant pour répertorier toutes les formules. Vous devez également ajouter le commutateur --json = v1 (pour le moment, seule la version 1 est prise en charge, ce que vous pouvez voir lorsque vous tapez infusion info --help):

brew info --json=v1 --all
0
pengii23