Closed5

Homebrewメンテ、そしてnodenv

okunokentarookunokentaro

なにする

  • 業務用マシン(macOS)が3台ある
    • nodenvだったりndenvだったりnodebrewだったり公式インストーラーからのバイナリだったりでマシンごとにnode環境の管理がひどい
      • 年輪を感じる
  • すべてのマシンのnode環境をnodenvに統一する
    • この際、anyenv経由nodenvにする
okunokentarookunokentaro

Homebrewのメンテ

  • brew updateしてbrew doctorしておけばまぁOK
    • ここで色々言ってくるのでそのとおりに修復
  • そもそもBig Sur環境で初めてbrew updateした気がする

根本的に死んでるやつおる

  • 最古マシンだけそもそもcask側でinvalidを出していてRubyがクラッシュしていた
    • definition is invalidが出てる
    • https://qiita.com/ucan-lab/items/db28218f50f1e6a5479f これに近そうだけど詳細が微妙に異なる
    • そもそもクソ古いCaskなので除去でよいが定義がどこから参照されているのか不明
    • brew doctor -vdでログを出す(--verbose --debugのshorthand)
      • .rbファイルのトレースが出てくるからそれ開いてpでログダンプさせて読む
        • Ruby書けなくても、他の言語がそれなりに書けるなら気合で読める
        • ファイルローダーの実装から定義パスを特定できたのでそいつをrm
    • brew cleanupしておしまい
okunokentarookunokentaro

ndenvからnodenvへの乗り換え

Why anyenv

install

brew install anyenv
anyenv -v
anyenv install --init
okunokentarookunokentaro
anyenv init

これでshellごとのパスの通し方がでてくるのでそれを真似する。

anyenv install nodenv
nodenv install x.y.z

あとはnodenvの使い方に従ってNode.jsを入れればよい。

このスクラップは2021/07/11にクローズされました