Google Drive FileStream上でYarnは使えない

Google Drive File Stream(以下DriveFS)、知ってますか?
GSuiteの人限定で使える、Google Driveを外部ストレージとしてマウントするソフトウェアです。

GSuiteのプランでGoogle Driveを無制限で使用できるようにしておけば、PCの容量を気にせず作業できるので、非常に便利で重宝しています。

DriveFS上でYarnを使いたい

Yarn Pkg(以下Yarn)は、Node.jsのパッケージ管理ソフトです。
npmとかありますが、僕はYarn派です。

んでそのYarnなんですが、DriveFS上で使いたいんですよ。
てかこれ使えないとNode.jsアプリケーション開発できないし。

結論から言うと、無理です。

DriveFS上でYarnは使えない

yarn installを実行すると、以下のエラーが発生します。

1
2
3
error An unexpected error occurred: "EEXIST: file already exists, mkdir 'G:\\path-to-repos\\node_modules\\@electron\\get\\node_modules'".
info If you think this is a bug, please open a bug report with the information provided in "G:\\path-to-repos\\yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

ファイルは既に存在しますというエラーですが、おそらくダウンロードされたファイルから順番にDriveFSによって処理されていくので、それでファイルチェックの整合性が取れなくなっているんじゃないかと思います。

兎にも角にもDriveFSでYarnは使えません。残念。

ちなみに、pipとかは依存関係のインストールをリポジトリフォルダ内ではなくPC内に行うので、PythonとかはDriveFS内で作業できます。

たぶんnpmも同じ感じで依存関係インストールするので、npmもDriveFS内で使えないと思います。はい。

追記:
npmも使えませんでした。

Material UIのTabsのindicatorのCSSをいじる

1
2
3
4
5
6
7
8
9
10
11
const StyledTabs = withStyles({
indicator: {
display: "flex",
justifyContent: "center",
backgroundColor: "transparent",
"& > span": {
maxWidth: 0,
width: "100%",
},
},
})((props) => <Tabs {...props} TabIndicatorProps={{ children: <span /> }} />);

こんな感じ
上記はindicatorのmaxWidthを0にして消してます

あとは通常<tabs></tabs>なところを<StyledTabs></StyledTabs>に変える
これでおk

基本的にはリファレンスとかに書いてあります
以下参考ページ

Tabs React component - Material-UI
Tabs API - Material-UI

WindowsでNode.jsのバージョン管理をしよう

前提

  • Chocolaty導入済み
  • Node.js導入済み
  • Windows10

選択肢

WindowsのNode.jsバージョン管理ツールには2種類ある

  • nodist
  • nvm-windows

nvm-windowsとnodist、どちらも人気があるように思える
とりあえず今回は頻繁にメンテナンスされている(ように見える)nvm-windowsを使う

Node.jsのアンインストール

Node.jsがあるとnvm的に問題がある(nvm側に切り替わらない)らしく、まずはNode.jsをアンインストールしておく。

これは各自やってください。

インストール

choco install nvm -y

これで勝手にインストールされます。
やったぜ

バージョン切り替え

nvm list available で、インストールできるNodeバージョン(一部)がリストで出ます。

nvm install [version] で指定したバージョンのNode.js(とnpm)がインストールされます。

nvm list で、インストール済みのNode.js一覧が見れます。

nvm use [version] で、インストールしたNode.jsに切り替わります。

nvm use を実行しないと切り替わらないので注意

おわり

めちゃ簡単でしたね。これでいろいろ楽になりそうです。