Brew le package manager Osx

Sur une machine apple ce qui manque le plus c’est un package manager qui permet l’accès à wget ou nmap sans avoir a compiler soit meme. Il y a quelques pre-requis :

  • Command Line Tools for Xcode
  • XQuartz pour des applications X11
  • Java pour du Java

Installation

L’installation se fait via ruby en une ligne

ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"

Mise a jour

Avec cette commande on met a jour la liste des paquets disponible.

brew update

Recherche

Comme apt-cache search on peut chercher directement dans la liste :

brew search nm
bsponmpi   cpanminus  net-snmp	 nmap	    openmeeg   openmpi
homebrew/science/fast-statistical-alignment

Version d’un paquet

Interroger la version en cours :

brew info wget
wget: stable 1.14, HEAD
http://www.gnu.org/software/wget/
/usr/local/Cellar/wget/1.14 (7 files, 676K) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/wget.rb
==> Options
--enable-debug
	Build with debug support
--enable-iri
	Enable iri support

Edition

Pour choisir soit même la version a installer comme l’url du développeur qui a changée mais qui n’est pas a jour dans brew.On peut tout a fait choisir sa propre version :

brew edit multitail
require 'formula'

class Multitail < Formula
  homepage 'http://www.vanheusden.com/multitail/download.html'
  url 'http://www.vanheusden.com/multitail/multitail-5.2.11.tgz'
  sha1 'b3e721c3fb02092b0cbe9cfc6c67d1bbed6800f4'

  def install
    ENV['DESTDIR'] = prefix
    system "make", "-f", "makefile.macosx", "multitail"

    bin.install "multitail"
    man1.install gzip("multitail.1")
    etc.install "multitail.conf"
  end
end

C'est uniquement les champs url et sha1 qui comptent, veillez à ce que vous répercutiez bien le bon hash d'intégrité avec le bon algorithme.

Installation

Et on termine par l'installation, avec le joie d'avoir brew qui prend en charge les dépendances à d'autres package :

brew install wget

Pour marque-pages : Permaliens.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *