macOS Sonoma (14.1) をクリーンインストールして tmux + powerline-status をセットアップした(備忘録かも)

記事タイトルとURLをコピーする

こんにちは、アプリケーションサービス部の千葉です。

さっそくですが、macOS のメジャーアップデートのタイミングで OS のクリーンインストールをする運用をしています。

目的・意図としては以下のとおりです。

  1. 定期的にクリーンインストールすることで、環境を清潔な状態にしておきたい
    • アクティブではないプロジェクトの開発環境を破棄
    • 適当な場所に作ったまま忘れているファイルの削除
    • なにかの検証等で一時的にインストールしたツールの削除
  2. 普段使いしているツール・アプリケーションのみなおし
    使い慣れているものって『他にもっと便利なもの』を探すことを後回しにしてしまいませんか?
    定期的な儀式として『OS のクリーンインストール 』って機会があると、これらの"使い慣れているもの"の環境を再セットアップすることになります。
    • 以前は使っていたけれど、いまは使っていないツールを削ぎ落とす(新環境には導入しない
    • 以前はセットアップが面倒なツールについては、他のアプローチで利用可能になっていないか?
      • HomeBrewからインストール可能になっている
      • GitHub の README を確認してみたら初期化スクリプト等が提供されていた
  3. プレーンな状態の最新OSへの理解(デフォルト設定の把握) 例えば、わたしは OS の初期設定から以下のカスタマイズをしています。
    • キー配列を Dvorak に変更
    • left_controlcaps_lock の入れ替え
    • right_shift で『英数入力』 / right_command で『かな入力』
    • left_option + L で Launchpad の起動
    • left_command + space で『英数入力』『かな入力』の切り替え
    • left_command + left_option + 8 でズーム
    • Trackpad の 『Tap on click』を有効
    • DNSサーバーの変更
      • 2001:4860:4860::8888
      • 2606:4700:4700::1111
      • 8.8.8.8
      • 1.1.1.1
    • and more

    ここらへんって OS のアップグレードでやっていると自分がセットアップしたものなのか、初期設定なのか曖昧になっていきますよね。

そんな感じで、前回の3連休でやっと macOS を Ventura から Sonoma に移行してきました。

Sonoma クリーンインストールの注意点

やりかたは Apple公式 - macOS を再インストールする方法 に書いてあるとおりです。
Ventura 以前は

1. OSを最新バージョン (Sonoma) にアップグレード
2. DiskUtility でディスクを初期化
3. 復旧モードから最新バージョン (Sonoma) のインストール

って手順だったのですが、今回のクリーンインストールでは 3 のステップで選択可能な OS が Ventura のままで Sonoma を選択することができませんでした。
何かの手違いだと思って3回再実施したのですが変わらず…

よくよくドキュメントを確認してみたら、ページの最下部に※印で説明がありました。

起動ディスクを消去したばかりの場合は、お使いの Mac に対応する、以前のバージョンの macOS が macOS 復旧によって提供されることがありますが、その場合はインストールの完了後に macOS のアップグレードを行うことができます。Mac のロジックボードを修理サービスで交換したばかりの場合、macOS 復旧では、その Mac に対応する最新の macOS が提供されます。

なるほど、今後のリカバリは購入時のバージョン (Ventura) に戻る。ってことみたいです。
ってことで、

1. DiskUtility でディスクの初期化
2. 復旧モードから購入時のバージョン (Ventura) を再インストール
3. 最新バージョン (Sonoma) にアップグレード
4. 復旧モードから最新バージョン (Sonoma) のインストール

って流れになるみたいです。3 / 4 の間でディスクの初期化をしない。ってのがミソですね。

本題

やっとタイトルに記載した本題です。これまで tmux の Powerline って tmux-powerline を利用していたのですが、便利な反面で設定ファイルも多くて毎回セットアップが面倒だったんです。
せっかくの機会なので、もう少しカジュアルに導入できるようにならないかな。と調べてみたら全然あるじゃない。

ってことで、今回は powerline-status への移行をチャレンジしてみます。

1. tmux の導入

まずは、tmux の導入です。

$ brew install tmux

2. powerline-status の導入

$ pip install powerline-status

3. tmux の設定

~/.tmux.conf に powerline-status を導入します。

$ echo "source \"`python -c \"import site; print (site.getsitepackages()[0])\"`/powerline/bindings/tmux/powerline.conf\"" >> ~/.tmux.conf
$ echo "run-shell \"powerline-daemon -q\"" >> ~/.tmux.conf

4. powerline-status 設定ファイルのコピー

まず、設定ファイル群を ~/.config/ 配下にコピーします。

$ cp -r `python -c "import site; print (site.getsitepackages()[0])"`/powerline/config_files ~/.config/powerline

5. Powerline のカスタマイズ

~/.config/powerline/themes/tmux/default.json を編集することで Powerline に表示する情報をカスタマイズします。

どんなファンクションがあるのか?や、各ファンクションのパラメータについては↓こちらのディレクトリ内の Python のコードを確認してください。

$ ls `python -c "import site; print (site.getsitepackages()[0])"`/powerline/segments/common

コード読むのはちょっと。って方は 公式 - Segment reference あたりが良さそうです。

わたしの環境では↓こんな設定

  • 左側
    1. ログインユーザー名
    2. セッション1: 日報 + 雑多なメモ用
    3. セッション2: 開発作業用
  • 右側
    1. 残バッテリー (♥が10個でバッテリー100%)
    2. 現在の Global IP アドレス
    3. 今日の日付
    4. 現在の時刻

Screenshot

以上、次回のクリーンインストールに向けての備忘録みたいになってしまいました。かしこ

千葉 哲也 (執筆記事の一覧)

アプリケーションサービス部

コーヒーゼリーが好きです。