次々とリリースされるApple製品。
iPhoneにMack bookに、、、新しいものは思わずほしくなってしまいますね。

2016年9月21日にはOS Xの冠を取った新しいmacOS Sierraがリリース予定で注目を集めています。

しかし、業務で利用しているMac端末では、ソフトの対応状況やOSが安定稼働するかどうかという観点からOSのアップデートを見送る場合があります。


そしてここにも、OS X LionからアップデートしていないiMacが。

前置きが長くなりました。
古いOSを積んだMacにhomebrewを使ってソフトを追加する手順を見ていきます。

今回導入するのは、構成管理ツールのAnsibleです。

端末情報

  • iMac (21.5-inch, Late 2013)
  • 機種 ID:iMac14,1
  • OS X Lion (10.8)

機種名や機種番号は公式にも一覧が出ています。

iMac のモデルを識別する
https://support.apple.com/ja-jp/HT201634

インストールでやったこと

まずは普通にインストールコマンドを打ってみます。

 1$ homeberw install ansible
 2
 3READ THIS: https://git.io/brew-troubleshooting
 4If reporting this issue please do so at (not Homebrew/brew):
 5  https://github.com/Homebrew/homebrew-core/issues
 6
 7Warning: You are using OS X 10.8.
 8We (and Apple) do not provide support for this old version.
 9You may encounter build failures or other breakages.
10Please create pull-requests instead of filing issues.

案の定、エラーが出てインストールは中断されます。
10.8は古いよ と窘められていますね。

インストールされるバージョンを調べる

brew info ansibleを打つと、homebrewでインストールをされるバージョンを調べることができます。

 1$ brew info ansible
 2ansible: stable 2.1.0.0, HEAD
 3Automate deployment, configuration, and upgrading
 4https://www.ansible.com/
 5Not installed
 6From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/ansible.rb
 7==> Dependencies
 8Build: pkg-config ✔
 9Required: libyaml ✔, openssl ✔
10==> Caveats
11Homebrew writes wrapper scripts that set PYTHONPATH in ansible's
12execution environment, which is inherited by Python scripts invoked
13by ansible. If this causes problems, you can modify your playbooks
14to invoke python with -E, which causes python to ignore PYTHONPATH.

Ansible 2系は古いOSに対応していないようですね。

バージョン可能な一覧を調べる

brew tap homebrew/versions後にbrew search versions/XXXとすることで、インストール可能なバージョンを確認することができます。

 1$ brew tap homebrew/versions
 2==> Tapping homebrew/versions
 3Cloning into '/usr/local/Library/Taps/homebrew/homebrew-versions'...
 4remote: Counting objects: 224, done.
 5remote: Compressing objects: 100% (213/213), done.
 6remote: Total 224 (delta 19), reused 55 (delta 10), pack-reused 0
 7Receiving objects: 100% (224/224), 268.27 KiB | 331.00 KiB/s, done.
 8Resolving deltas: 100% (19/19), done.
 9Checking connectivity... done.
10Tapped 216 formulae (244 files, 985.1K)
1$ brew search versions/ansible
2homebrew/versions/ansible19
3homebrew/versions/ansible20

2つのバージョンが出てきました。

今回は最新であることにこだわらないため、ansible19をインストールします。

バージョン指定してインストールする

brew search versions/ansible得られた結果をinstallコマンドに与えることで、任意のバージョンをインストールすることができます。

 1$ brew install homebrew/versions/ansible19
 2Warning: You are using OS X 10.8.
 3We (and Apple) do not provide support for this old version.
 4You may encounter build failures or other breakages.
 5Please create pull-requests instead of filing issues.
 6==> Installing ansible19 from homebrew/versions
 7==> Downloading https://releases.ansible.com/ansible/ansible-1.9.6.tar.gz
 8######################################################################## 100.0%
 9==> Downloading https://pypi.python.org/packages/source/p/pywinrm/pywinrm-0.0.3.tar.gz
10:
11中略
12:
13==> Caveats
14Homebrew writes wrapper scripts that set PYTHONPATH in ansible's
15execution environment, which is inherited by Python scripts invoked
16by ansible. If this causes problems, you can modify your playbooks
17to invoke python with -E, which causes python to ignore PYTHONPATH.
18==> Summary
19🍺  /usr/local/Cellar/ansible19/1.9.6: 8,580 files, 78.3M, built in 2 minutes 40 seconds

Zum Wohl!
相変わらず「10.8は古い」と言われますが、インストールは成功しました。

1$ ansible --version
2ansible 1.9.6
3  configured module search path = None

ansbileコマンドもしっかり通ります。

終わりに

MacはWindowsよりも各ソフトウェアのOSの縛りがキツイですね。

快適に利用するにはしっかりOSのバージョンアップを行っていったほうが、当然よい感じです。

無料だから。そして、簡単だからです。

業務で利用するMacについてはもうちょっと慎重になることが望まく、「 ある程度枯れたほうが良い 」という状況がしばしばあると思います。

新しいOSが登場すると、古いOSをDLすることすらできなくなってしまいます。
そのため、インストールしなくても良いので、AppStoreでOSのダウンロードだけ行っておくのがベターですね。

OS Xのバージョンとコードネーム

コードネーム バージョン番号
OS X El Capitan 10.11
OS X Yosemite 10.10
OS X Mavericks 10.9
OS X Mountain Lion 10.8
OS X Lion 10.7
OS X Snow Leopard 10.6
OS X Leopard 10.5
OS X Tiger 10.4
OS X Panther 10.3
OS X Jaguar 10.2
OS X Puma 10.1
OS X Cheetah 10.0