installation - 指定 - r 古いパッケージ インストール




自作式の特定のバージョンをインストールしますか? (14)

シンプルなワークフロー

Homebrew / versionsは廃止されたので、Homebrew / coreは新しい命名形式の複数のバージョンの数式をサポートしています。

特定のバージョンをインストールするには、例えばpostgresql 9.5を実行するだけです:

$ brew install [email protected]

利用可能なバージョンを一覧表示するには、@で検索を実行します。

$ brew search [email protected]
==> Searching local taps...
[email protected][email protected]        [email protected]        [email protected]

homebrewに特定のバージョンの数式をインストールするにはどうすればよいですか? 例えば、最新の9.0ではなくpostgresql-8.4.4です。


古い醸造パッケージバージョンをインストールする(Flyway 4.2.0の例)

あなたのローカルhomebrew git dirまたはhomebrew / homebrew-coreをローカルで見つける

cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/

または

git clone [email protected]:Homebrew/homebrew-core.git

利用可能なすべてのバージョンを一覧表示する

git log master -- Formula/flyway.rb

必要なバージョンのコミットIDをコピーして、それを直接インストールします

brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/793abfa325531415184e1549836c982b39e89299/Library/Formula/flyway.rb


Maven 3.0.3をbrew install mavenので、私はHomebrewを使ってMaven 2.2.1に戻りました。

まず、あなたはそこのmaven dirを残す必要があります

$ brew unlink maven

brew tapコマンドを使用する

$ brew tap homebrew/versions
Cloning into '/usr/local/Library/Taps/homebrew-versions'...
remote: Counting objects: 590, done.
remote: Compressing objects: 100% (265/265), done.
remote: Total 590 (delta 362), reused 549 (delta 325)
Receiving objects: 100% (590/590), 117.49 KiB | 79 KiB/s, done.
Resolving deltas: 100% (362/362), done.
Tapped 50 formula

これでmaven2の数式をインストールできます:

$ brew install maven2
==> Downloading http://www.apache.org/dist/maven/maven-2/2.2.1/binaries/apache-maven-2.2.1-bin.tar.gz
######################################################################## 100.0%
/usr/local/Cellar/maven2/2.2.1: 10 files, 3.1M, built in 6 seconds
$ mvn --version
Apache Maven 2.2.1 (r801777; 2009-08-06 12:16:01-0700)
Java version: 1.6.0_37
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x" version: "10.7.4" arch: "x86_64" Family: "mac" 

編集:別のバージョンに切り替えるには、 brew switch maven 2.2.1を起動することもできます。

編集: Apache Mavenプロジェクトはrepoを再編成しました。 この変更が反映されるように、この回答が更新されました。


homebrewの最新バージョン(この記事の執筆時点では0.9.5)には、インストールしたい自家製樽のバージョンの特定のレシピがあります。 例:

$ brew search mongodb
mongodb    mongodb24  mongodb26

その後、通常のようにbrew install mongodb26

最新バージョンを既にインストールしている場合は、最新バージョンとのリンクを解除して、希望のバージョンをリンクしてください: brew unlink mongodb && brew link mongodb26



brew search <formula>でバージョンを見つけることができない場合は、数式のコミットログを調べて、目的のバージョンを見つけることもできます。

brewを使用して古いバージョンのnginxをインストールする例を以下に示します。

そこから1.6.3、shaとraw git urlをインストールすることができます:

brew install https://raw.githubusercontent.com/Homebrew/homebrew/eba75b9a1a474b9fc4df30bd0a32637fa31ec049/Library/Formula/nginx.rb


Library / Formula / postgresql.rb 8行目の更新

http://ftp2.uk.postgresql.org/sites/ftp.postgresql.org/source/v8.4.6/postgresql-8.4.6.tar.bz2

9行目のMD5

fcc3daaf2292fa6bf1185ec45e512db6

保存して終了。

brew install postgres
initdb /usr/local/var/postgres

今この段階では、このようなpostgresql could not create shared memory segment更新を回避するために、エラーに直面する可能性があります/etc/sysctl.conf

kern.sysv.shmall=65536
kern.sysv.shmmax=16777216

もう一度initdb /usr/local/var/postgresやり直してください。滑らかに動くはずです。

開始時にpostgresqlを実行するには

launchctl load -w /usr/local/Cellar/postgresql/8.4.6/org.postgresql.postgres.plist

希望が助ける:)


これらのどれも私のケース(Python)では実際にはうまくいきませんでしたので、私は2セントを追加します:

cd `brew --prefix`
git log Library/Formula/python.rb

出力は次のようになります。

commit 9ff2d8ca791ed1bd149fb8be063db0ed6a67a6de
Author: Dominyk Tiller <[email protected]>
Date:   Thu Jun 30 17:42:18 2016 +0100

    python: clarify pour_bottle reason

commit cb3b29b824a264895434214e191d0d7ef4d51c85
Author: BrewTestBot <[email protected]>
Date:   Wed Jun 29 14:18:40 2016 +0100

    python: update 2.7.12 bottle.

commit 45bb1e220341894bbb7de6fd3f6df20987dc14f0
Author: Rakesh <[email protected]>
Date:   Wed Jun 29 10:02:26 2016 +0530

    python 2.7.12

    Closes #2452.

    Signed-off-by: Tim D. Smith <[email protected]>

commit cf5da0547cd261f79d69e7ff62fdfbd2c2d646e9
Author: BrewTestBot <[email protected]>
Date:   Fri Jun 17 20:14:36 2016 +0100

    python: update 2.7.11 bottle.

...

私はバージョン2.7.11がほしいので、私のハッシュはcf5da0547cd261f79d69e7ff62fdfbd2c2d646e9(またはcf5da05短い)です。次に、そのバージョンをチェックアウトし、数式をインストールしpythonます。

git checkout cf5da05
brew install python

最後に、クリーンアップ:

git checkout master

アップデート:2015年1月15日

このgistから

brew update
brew versions FORMULA
cd `brew --prefix`
git checkout HASH Library/Formula/FORMULA.rb  # use output of "brew versions"
brew install FORMULA
brew switch FORMULA VERSION
git checkout -- Library/Formula/FORMULA.rb    # reset formula

## Example: Using Subversion 1.6.17
#
# $ brew versions subversion
# 1.7.3    git checkout f8bf2f3 /usr/local/Library/Formula/subversion.rb
# 1.7.2    git checkout d89bf83 /usr/local/Library/Formula/subversion.rb
# 1.6.17   git checkout 6e2d550 /usr/local/Library/Formula/subversion.rb
# 1.6.16   git checkout 83ed494 /usr/local/Library/Formula/subversion.rb
# 1.6.15   git checkout 809a18a /usr/local/Library/Formula/subversion.rb
# 1.6.13   git checkout 7871a99 /usr/local/Library/Formula/subversion.rb
# 1.6.12   git checkout c99b3ac /usr/local/Library/Formula/subversion.rb
# 1.6.6    git checkout 8774131 /usr/local/Library/Formula/subversion.rb
# 1.6.5    git checkout a82e823 /usr/local/Library/Formula/subversion.rb
# 1.6.3    git checkout 6b6d369 /usr/local/Library/Formula/subversion.rb
# $ cd `brew --prefix`
# $ git checkout 6e2d550 /usr/local/Library/Formula/subversion.rb
# $ brew install subversion
# $ brew switch subversion 1.6.17
# $ git checkout -- Library/Formula/subversion.rb

インストールするパッケージのバージョンと一致する数式の履歴で、数式と特定のコミットを識別する戦略を使用できます。

  1. https://github.com/Homebrew/homebrew-coreしてhttps://github.com/Homebrew/homebrew-core

  2. キーボードのtを押すとファイルファインダーが起動します。

  3. 最も関連性の高いFormula/mysql.rb )を特定し、forumlaファイルの場所に移動します: https://github.com/Homebrew/homebrew-core/blob/master/Formula/mysql.rb : https://github.com/Homebrew/homebrew-core/blob/master/Formula/mysql.rb

  4. Historyボタンをクリックして、 Historyを確認してhttps://github.com/Homebrew/homebrew-core/commits/master/Formula/mysql.rb 。 MySQL 5.7.10に興味があるなら、5.7.11より前の最新のリビジョンをクリックして、GitHubコミットに移動することができます:

    https://github.com/Homebrew/homebrew-core/commit/c77882756a832ac1d87e7396c114158e5619016c#Formula/mysql.rb

注:コミット履歴がブラウザにロードされない場合は、GitHubの提案に従って、コンソールにコミット履歴を表示する必要があります。 あなたがGitHubでそのコミットを見ることに興味があるならば、上記のコミットSHAをURLに置き換えてください。 または、次の手順7に進んでください。

  1. 「表示」ボタンをクリックすると、コミットが適用された後のmysql.rbファイルのソースが表示されます。

  2. 次に、 "生の"ボタンをクリックして生の出所を表示します。

  3. URLをコピーします。 あるいは、 mysql.rbファイル名を使用してURLを作成して、数式とその式の特定のバージョン(以下のURLのcommmit SHAで識別されます)を特定します。

    https://raw.githubusercontent.com/Homebrew/homebrew-core/c77882756a832ac1d87e7396c114158e5619016c/Formula/mysql.rb

  4. $ brew install [URL from step 7]

    $ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/c77882756a832ac1d87e7396c114158e5619016c/Formula/mysql.rb
    

注:この回答は、braumeister.orgウェブサイトの削除を考慮して更新されました。 同じ原則が適用され、braumeisterは初心者には簡単に式のバージョンをナビゲートする方法を提供していました。


更新された答えはそれ以来、@ lance-pollardがすでに動作中の回答として投稿したものに追加されます。

特定のバージョンの数式をインストールする方法(この例で使用される数式はterraform ):

  1. 数式ファイルを検索します。例: https://github.com/Homebrew/homebrew-core/blob/master/Formula/terraform.rb : https://github.com/Homebrew/homebrew-core/blob/master/Formula/terraform.rb
  2. リポジトリをローカルにクローン化している場合は、 https://github.com/Homebrew/homebrew-core/commits/master/Formula/terraform.rbまたはgit log master -- Formula/terraform.rb terraform.rbを使用してgithubの履歴からコミットバージョンを取得しhttps://github.com/Homebrew/homebrew-core/commits/master/Formula/terraform.rb
  3. 式のコミットバージョンで生のgit URLを取得します。github.comの数式リンクがhttps://github.com/Homebrew/homebrew-core/blob/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb場合、生のURLは次のようになります。 be: https://raw.githubusercontent.com/Homebrew/homebrew-core/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb : https://raw.githubusercontent.com/Homebrew/homebrew-core/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb
  4. インストール先: brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/e4ca4d2c41d4c1412994f9f1cb14993be5b2c59a/Formula/terraform.rb

私は、他の複雑なソリューションより優れた代替ソリューションを発見しました。

brew install https://raw.github.com/Homebrew/homebrew-versions/master/postgresql8.rb

これはPostgreSQL 8.4.8をダウンロードしてインストールします。

私はレポを検索するステップとレポのcommentに従ってこの解決策を見つけました。

少しの研究の後、誰かが珍しい形式のコレクションを持っていることが分かりました。

MySQL 5.1.xをお探しなら、これを試してみてください。

brew install https://raw.github.com/Homebrew/homebrew-versions/master/mysql51.rb

私は、自分の判断に反して、homebrew/versions持っていなかったMaven 3.1.1の式を作成することにしました。これをする:

  1. homebrew/versionsはgithub をフォークしました。
  2. $(brew --prefix)/Library/Tapsは私のフォークのローカル作業コピーにシンボリックリンクしました。私はこれを呼ぶでしょうmy-homebrew/versions
  3. 私は数式を指定してテストしましたmy-homebrew/versions/<formula>
  4. 私はhomebrew/versions新しい式のためにプルリクエストを送った。

わーい。


私はちょうど/usr/local/Cellar/elasticsearchディレクトリにelasticsearchの古いリリースをコピーしました。

$ mkdir /usr/local/Cellar/elasticsearch/5.4.3/bin
$ cp elasticsearch /usr/local/Cellar/elasticsearch/5.4.3/bin
$ brew switch elasticsearch 5.4.3

それでおしまい。 たぶんそれは誰にとっても役に立ちます。