0
Macのhomebrewでtmux3.3aから3.2aへバージョンを下げる
2024-02-14

Homebrewで管理しているtmuxのバージョンを上げたら起動しなくなった

少し前のバージョンにして固定したのでそのときの記録

[user]$ tmux
[exited]
~ ❯❯❯
[user]$ 0;95;0c>|iTerm2 3.4.22>|iTerm2 3.4.22>|iTerm2 3.4.22
$ tmux -V
tmux 3.3a

バージョンを下げて固定する

brewはインストールするときにFormulaというファイルを読んでインストールしている

で、そのFormulaにどのバージョンをインストールするか記述しているので、Gitで追ってコミットハッシュを指定してあげれば特定バージョンをインストールできるらしい

という記事をよく見たので試してみた

  • 対象コミット

tmux: update 3.2a_1 bottle. · Homebrew/homebrew-core@e44425d

$ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/e44425df5a8b3c8c24073486fa7e355f3ac19657/Formula/tmux.rb
Error: Installation of tmux from a GitHub commit URL is unsupported! `brew extract tmux` to a stable tap on GitHub instead.

だめだった、Homebrewのv4からこの手法は使えないよう

brew extractを使えと

下記のスクリプトを参考にした

dotfiles/mac/setup.sh at master · muratayusuke/dotfiles

tap

$ brew extract tmux swfz/taps --version 3.2a
Error: No available formula with the name "homebrew/core/tmux".
Please tap it and then try again: brew tap homebrew/core

$ brew tap homebrew/core
Error: Tapping homebrew/core is no longer typically necessary.
Add --force if you are sure you need it done

$ brew tap --force homebrew/core

深く追っていないが、いきなりextractを実行できなかったのでエラーが案内するとおりにまずhomebrew/coreを取得した

tap-new

$ brew tap-new swfz/taps
Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/swfz/homebrew-taps/.git/

extract

$ brew extract tmux swfz/taps --version 3.2a
==> Searching repository history
==> Writing formula for tmux from revision e44425d to:
/usr/local/Homebrew/Library/Taps/swfz/homebrew-taps/Formula/tmux@3.2a.rb

install

$ brew install swfz/taps/tmux@3.2a

確認

$ tmux -V
tmux 3.2a

これでOKそう…

pin

ふとしたときに更新されてしまわないようにpinしておく

$ brew pin swfz/taps/tmux@3.2a
$ brew list --pinned
tmux@3.2a
0

Profile

swfz
swfz
日々学んだことを残していく
Today I Learned
コード片置き場

Account

RSS

Powered by Pixela
© 2024. swfz