« 携帯電話の機種変更 SH005→KYF39 | トップページ | Gmail のフィルタ設定ページで、編集 削除 リンクを常に表示する »

2021年5月22日 (土)

Debian buster に yarn をインストール

MDN の翻訳関係で、node.js をインストールした こちらの記事 の続きにあたるもの。

Debian では yarn は yarnpkg という名前でパッケージされている。実行するコマンドも yarn ではなく yarnpkg になっている。他との名前の衝突を避けるための仕様かもしれないが、ぶつからないことがわかっているなら、alias 等で実行名を置き換えてしまう手はある。

buster ではバージョン 1.13 で、buster-backports に 1.22 が入っている。試行錯誤していて、1.22でうまくいっているので、そのままにしてある。node.js のように、Debian の外からパッケージを持ってくる必要まではなかった。

MDNのコンテンツをローカルで見られるようにセットアップする手順の中で、

yarn install

を実行するステップがある。この前に、2つ手順が必要。

その1:

プロジェクト(この場合 mdn/content )の中に、yarn をインストールする必要がある。(2021/6/19追記)

yarn にはシステム全体で共通する global の yarn (こちらは、上記の ステップで Debian のパッケージマネージャーでインストールされるもの)と、各プロジェクトディレクトリの内部の .yarn ディレクトリにインストールされる個別のものとがある。下の設定手順を含めて、詳細は開発元に書かれている(2以降の話のようだが、1.22では問題なく使えた)。

global と個別とで、node_modules、キャッシュを探しにいく場所が違う模様。

yarn set version

を実行すると、個別のものが設定される。本来は、yarn set version berry のように、バージョンを表すコードネームを指定するらしいが、指定しないと global と同じバージョンが使われた。

その2:

環境変数 NODE_PATH の設定が必要。例えば
export NODE_PATH=/usr/lib/nodejs:/usr/share/nodejs

実行コマンドは前述のとおり、yarnpkg install に置き換える必要がある。(※ alias 等で yarn を作っていない場合)

また、

yarn start

を実行する前に、ローカルに clone した mdn/content の package.json の中にある 

"start": "yarn up-to-date-check && ....

とあるところも、

"start": "yarnpkg up-to-date-check && ....

に書き換える必要がある。 (※ 同じ)

書き換えた場合、 package.json が以後の更新(git pull)でオリジナルの内容と衝突しないよう、 git commit package.json と git push を実行しておくこと。(2021/6/19追記)

あとは手順通りにやればよかったような気がする。また何か気づいたら書き足す。

| |

« 携帯電話の機種変更 SH005→KYF39 | トップページ | Gmail のフィルタ設定ページで、編集 削除 リンクを常に表示する »

パソコン・インターネット」カテゴリの記事

コメント

書き漏らしていた手順を追記。
6月19日のMDN翻訳ミートアップで、git clone してあったコピーを更新した後 yarnpkg start ができなくなっており、一度消して確認し直した。

投稿: hama | 2021年6月19日 (土) 18時17分

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« 携帯電話の機種変更 SH005→KYF39 | トップページ | Gmail のフィルタ設定ページで、編集 削除 リンクを常に表示する »