LoginSignup
4
5

More than 5 years have passed since last update.

消してしまった Homebrew の過去バージョンをインストールし直してバージョンを固定する方法

Last updated at Posted at 2017-03-15

imagemagick と rmagick のバージョン問題に出くわしたので、過去バージョンのインストール方法を探りました。

% brew --version
Homebrew 1.1.11
Homebrew/homebrew-core (git revision c09e; last commit 2017-03-15)

なお、brew versions コマンドは deprecated していますので利用できません。

Homebrew/homebrew-versions: Homebrew/versions (deprecated)

過去バージョンの bottle を入手する

bottle のダウンロード URI を確認します。

% brew install imagemagick@6
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles/imagemagick@6-6.9.8-0.sierra.bottle.tar.gz

imagemagick の公式サイトで過去バージョン(ImageMagick-6.9.7-10)を確認します。

これらの情報を元に URI を組み立てると、ダウンロードできました。

https://homebrew.bintray.com/bottles/imagemagick@6-6.9.7-10.sierra.bottle.tar.gz

展開したファイルを Cellar に移動します。

% mv ~/Downloads/imagemagick@6/6.9.7-10 /usr/local/Cellar/imagemagick@6

過去バージョンに切り替える

brew info を実行すると、追加した bottle が認識されています。

% brew info imagemagick@6
imagemagick@6: stable 6.9.8-0 (bottled) [keg-only]
Tools and libraries to manipulate images in many formats
https://www.imagemagick.org/
/usr/local/Cellar/imagemagick@6/6.9.7-10 (1,467 files, 22.6MB)
  Built from source
/usr/local/Cellar/imagemagick@6/6.9.8-0 (1,469 files, 22.6MB)
  Poured from bottle on 2017-03-15 at 11:14:24
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/imagemagick@6.rb

過去バージョンに切り替えます。
過去バージョンを消していなければ、brew switch だけですみますね。

Activate a previously installed version of a formula

% brew switch imagemagick@6 6.9.7-10
Cleaning /usr/local/Cellar/imagemagick@6/6.9.7-10
Cleaning /usr/local/Cellar/imagemagick@6/6.9.8-0
Opt link created for /usr/local/Cellar/imagemagick@6/6.9.7-10

brew link を張り直します。

% brew link imagemagick@6 --force
Linking /usr/local/Cellar/imagemagick@6/6.9.7-10... 75 symlinks created

バージョンを確認します。

% convert -version
Version: ImageMagick 6.9.7-10 Q16 x86_64 2017-03-04 http://www.imagemagick.org
Copyright: © 1999-2017 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Features: Cipher DPC Modules
Delegates (built-in): bzlib freetype jng jpeg ltdl lzma png tiff xml zlib

バージョンを固定する

さて、今後うっかりバージョンアップをしないような処置 brew pin をしておきます。

How do I stop certain formulae from being updated?

% brew pin imagemagick@6

するとこのようになります。

% brew info imagemagick@6
imagemagick@6: stable 6.9.8-10 (bottled) [pinned at 6.9.8-10, keg-only]
Tools and libraries to manipulate images in many formats
https://www.imagemagick.org/
/usr/local/Cellar/imagemagick@6/6.9.7-10 (1,467 files, 22.6MB) *
  Built from source
/usr/local/Cellar/imagemagick@6/6.9.8-0 (1,469 files, 22.6MB)
  Poured from bottle on 2017-03-15 at 11:14:24
/usr/local/Cellar/imagemagick@6/6.9.8-10 (1,469 files, 22.5MB)
  Poured from bottle on 2017-06-23 at 14:39:21
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/imagemagick@6.rb

brew upgrade でバージョンアップがあった場合には、このような表示がされます。

% brew upgrade
Updating Homebrew...
==> No packages to upgrade
==> Not upgrading 1 pinned package:
imagemagick@6 6.9.8-10

アップグレードが必要な場合には、brew unpin 後に brew upgrade を実行します。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5