ステータス:非推奨
この記事は廃止され、メンテナンスされなくなりました。
理由
HomebrewはLinuxのメインラインサポートを提供するようになりました。
代わりに参照してください
この記事は参照として役立つ場合がありますが、機能しない場合やベストプラクティスに従わない場合があります。 使用しているオペレーティングシステム用に書かれた最近の記事を使用することを強くお勧めします。
イントロ
LinuxBrew は、人気のあるMac OS X HomeBrewパッケージマネージャーのLinuxフォークです。
LinuxBrew はパッケージ管理ソフトウェアであり、システムのデフォルトのパッケージ管理(例: Debian/Ubuntuでは「apt/deb」、CentOS /RedHatでは「yum/rpm」)。
LinuxBrewを使用する理由
-
HomeBrew は、もともとMac OS X用に開発されました(標準のオープンソースパッケージ管理システムはありません)。 MacPortsやFinkなどのパッケージ管理に取って代わりました。 LinuxBrewはLinuxに自作移植されています。
-
ほとんどのLinuxディストリビューションには、優れたパッケージ管理システムがあります(例: ただし、Debian/Ubuntuでは「apt/deb」、CentOS/RedHatでは「yum/rpm」)
-
標準リポジトリのパッケージは、多くの場合、利用可能な最新バージョンよりも古く、
-
多くのオープンソースパッケージは、標準のリポジトリでは利用できません(例: 一般的なバイオインフォマティクスツール)。
-
-
LinuxBrew は、ディストリビューションの標準リポジトリからのパッケージを補完するために、ソフトウェアインストールレシピのリポジトリを提供します(パッケージはソースからインストールされ、ローカルマシンでコンパイルされます)。
-
LinuxBrew は、独自のリポジトリを構築するための簡単な方法を提供します(つまり、 ニーズに合わせたオープンソースパッケージのリスト)。
-
LinuxBrew は、ユーザー指定のディレクトリ(システム全体ではない)にソフトウェアをインストールします。
sudo
アクセス。 -
LinuxBrew (および HomeBrew )は、 GitHub と非常によく統合されているため、インストールレシピを簡単に共有できます。
特に、(この記事の執筆時点では)共有可能なドロップレットイメージを提供しない DigitalOcean の場合、 LinuxBrew リポジトリは、インストールするための迅速な方法を提供できます。標準のLinuxマシン上の特定のパッケージとバージョン。
LinuxBrewの要点
簡単に言えば、LinuxBrewがダウンロードを処理します tar.gz
ファイルと実行 ./configure && make && make install
あなたのために(またはパッケージをインストールするために必要なコマンド)。
LinuxBrew Formula は、Rubyスクリプトであり、 tar.gz
ファイル、パッケージのビルド方法、およびインストール方法。
数式ファイルは、 hmmer.rb(バイオインフォマティクスツール)のように単純にすることができます。
class Hmmer < Formula
homepage 'http://hmmer.janelia.org/'
url 'http://selab.janelia.org/software/hmmer3/3.1b1/hmmer-3.1b1.tar.gz'
def install
system "./configure", "--prefix=#{prefix}"
system "make"
system "make install"
end
end
またはemacs.rbのように複雑です。
数式ファイルが適切に定義されたら、パッケージのインストールは単に実行するだけです。
$ brew install FORMULA
LinuxBrewの準備-Debian/Ubuntu
Debian / Ubuntuベースのシステムの場合、次のコマンドを実行します。
$ sudo apt-get update
$ sudo apt-get upgrade -y
$ sudo sudo apt-get install -y build-essential make cmake scons curl git \
ruby autoconf automake autoconf-archive \
gettext libtool flex bison \
libbz2-dev libcurl4-openssl-dev \
libexpat-dev libncurses-dev
LinuxBrewの準備-CentOS/RedHat
RedHat / CentOSベースのシステムの場合、次のコマンドを実行します。
$ sudo yum update -y
$ sudo yum groupinstall -y "Development Tools"
$ sudo yum install -y \
autoconf automake19 libtool gettext \
git scons cmake flex bison \
libcurl-devel curl \
ncurses-devel ruby bzip2-devel expat-devel
LinuxBrewのインストール
LinuxBrew のインストールは、LinuxBrewリポジトリのクローンを作成するだけです。
ステップ1-LinuxBrewのクローンを作成する
整理整頓するには、LinuxBrewをユーザーのホームディレクトリの隠しディレクトリに複製します。
$ git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew
ただし、他のディレクトリも同様に機能します。
ステップ2-環境変数を更新する
次のステップは、LinuxBrewをユーザーの環境変数に追加することです。
ユーザーの末尾に次の行を追加します ~/.bashrc
ファイル:
# Until LinuxBrew is fixed, the following is required.
# See: https://github.com/Homebrew/linuxbrew/issues/47
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH
## Setup linux brew
export LINUXBREWHOME=$HOME/.linuxbrew
export PATH=$LINUXBREWHOME/bin:$PATH
export MANPATH=$LINUXBREWHOME/man:$MANPATH
export PKG_CONFIG_PATH=$LINUXBREWHOME/lib64/pkgconfig:$LINUXBREWHOME/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH
注: LinuxBrew を別のディレクトリにインストールした場合は、パスを変更してください。 LINUXBREWHOME
その上。
ステップ3-インストールのテスト
これらの変更を確実に有効にするには、ログアウトしてから再度ログインします。 その後、シェルはこれらの新しい設定を使用する必要があります。
これらの新しい設定をテストするには、次のことを試してください。
$ which brew
/home/ubuntu/.linuxbrew/bin/brew
$ echo $PKG_CONFIG_PATH
/home/ubuntu/.linuxbrew/lib64/pkgconfig:/home/ubuntu/.linuxbrew/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:
LinuxBrewを使用したパッケージのインストール
どのパッケージが利用できますか?
タイプ brew search
利用可能なすべてのパッケージのリストを表示するには(LinuxBrewの現在のインストールで認識されているすべてのパッケージ–リポジトリの追加については以下を参照してください)。
タイプ brew search WORD
WORDを含むすべてのパッケージ(HomeBrewの専門用語では Formulas と呼ばれます)を表示します。 例:
$ brew search xml
blahtexml libnxml libxml2 xml-coreutils xml2 xmlrpc-c
html-xml-utils libwbxml libxmlsec1 xml-security-c xmlcatmgr xmlsh
libmxml libxml++ tinyxml xml-tooling-c xmlformat xmlstarlet
パッケージをインストールする
パッケージをインストールするには、 brew install PACKAGE
.
例、 jq-JSONプロセッサのインストール:
$ brew install jq
==> Downloading http://stedolan.github.io/jq/download/source/jq-1.3.tar.gz
==> ./configure
==> make
/home/ubuntu/.linuxbrew/Cellar/jq/1.3: 7 files, 256K, built in 10 seconds
$ which jq
/home/ubuntu/.linuxbrew/bin/jq
$ jq --version
jq version 1.3
LinuxBrewの有用性は明らかです。Ubuntuの最新のリポジトリにはjqがありますが、そのバージョンは古い(1.2)です。 Debian Stable and Testingには、jqパッケージがまったくありません。 LinuxBrewのバージョンは最新のもの(1.3)です。 さらに、LinuxBrewは、システムのデフォルトの場所と競合しないパスにプログラムをインストールします。
既存のHomeBrewリポジトリの追加
HomeBrew/LinuxBrewリポジトリはTAPSと呼ばれます。 これらは、Rubyスクリプト(「式」)を含む単なるGitHubリポジトリです。 HomeBrew GithabUserにはいくつかの一般的なリポジトリがあります。
例: homebrew-scienceリポジトリ(多くの有用なオープンソース科学プログラムを含む)とHomeBrew-Gamesリポジトリを追加します。
$ brew tap homebrew/science
Cloning into '/home/ubuntu/.linuxbrew/Library/Taps/homebrew-science'...
Tapped 237 formula
$ brew tap homebrew/games
Cloning into '/home/ubuntu/.linuxbrew/Library/Taps/homebrew-games'...
Tapped 57 formula
利用可能なタップのリスト:
$ brew tap
homebrew/science
homebrew/games
これらのリポジトリから任意のパッケージをインストールします。
$ brew install gnu-go
==> Downloading http://ftpmirror.gnu.org/gnugo/gnugo-3.8.tar.gz
#################################################################
==> ./configure --prefix=/home/ubuntu/.linuxbrew/Cellar/gnu-go/3.8 --with-readline=/usr/lib
==> make install
/home/ubuntu/.linuxbrew/Cellar/gnu-go/3.8: 9 files, 7.0M, built in 60 seconds
TAPとパッケージの更新
数式の更新をダウンロードするには、次のコマンドを実行します。
$ brew update
パッケージをアップグレードするには(更新が利用可能な場合)、次を実行します。
$ brew upgrade PACKAGE
カスタム/プライベートTAP(リポジトリ)の作成
HomeBrew TAP /リポジトリは、ローカルファイルまたはGitHubリポジトリに保存されている Formulas –Rubyスクリプトの単なるコレクションです。
ローカルファイルの数式
ローカルファイルから数式をインストールするには、次のコマンドを実行します。
$ brew install /full/path/to/file.rb
これは、新しい式を作成(およびデバッグ)するときに役立ちます。
GitHubリポジトリの数式
githubにカスタムTAPリポジトリを作成するには、(ユーザーのgithubアカウントに)新しいGitHubリポジトリを作成して名前を付けます homebrew-NAME
. HomeBrew / LinuxBrewタップとして機能するには、「homebrew-」で始まる必要があります。 NAME
任意の名前にすることができます。
例:
GitHubユーザーagordonには、 gordon という名前のHomeBrewリポジトリがあり、完全なURLはhttps://github.com/agordon/homebrew-gordonです。
このリポジトリを使用するには(「タップ」):
$ brew tap agordon/gordon
Cloning into '/home/ubuntu/.linuxbrew/Library/Taps/agordon-gordon'...
Warning: Could not tap agordon/gordon/libestr over Homebrew/homebrew/libestr
Warning: Could not tap agordon/gordon/coreutils over Homebrew/homebrew/coreutils
Tapped 12 formula
ノート
-
brew tap
ユーザー名を使用agordon
およびリポジトリのサフィックスgordon
(’homebrew-gordon’のサフィックス)そしてアクセスするgithubURLを推測しました。 -
カスタム再投稿の数式は、公式のHomeBrewリポジトリの数式と競合する可能性があります。 それは完全に正常です。 このようなパッケージのインストール方法については、以下を参照してください。
カスタムリポジトリから競合しないパッケージをインストールするには、次のコマンドを実行します。
$ brew install libjson
特定のタップからパッケージをインストールするには、次のコマンドを実行します。
$ brew install agordon/gordon/coreutils
詳しくは
注: HomeBrew関連の情報を読むときは、HomeBrewがMacOSX用に開発されていることに注意してください。
LinuxBrew (HomeBrewのlinux-port)には、HomeBrewと多くの共通点がありますが、Linux固有の違いもいくつかあります。