Windowsの開発環境を作ってみる
長い前書き
個人開発が捗らない理由というのを考えたとき、開発用としているノートPCの場所が悪いのではと気がついた。
PCデスクにはゲーム用のWindowsPCが置かれてる。 デスクに座っている場合は基本的にそのPCを触ることになるので、なんとなくそことは距離を離そうと寝室の方にノートPCを置くようになっていた。
今から振り返るとこの「なんとなく」というのがすでに意味が分からないが、とにかく寝室に置いてあるという時点で開発をやる気になるわけもなく、やることといえばネットサーフィンぐらいであった。
そもそも自分はいったいどういう姿勢で寝室で開発をやる気だったんだろう?
さらに、ネットサーフィンであればiPadというそれ用に特化した端末があるので、結果ノートPCを開くこと自体が少なくなっていた。
これではいけないとPCデスクにノートPCを置くようにしようとレイアウトなどを考える。
置くとしたら正面にゲーム用のPC(のモニターとキーボードなど)があるので、サイドにノートPCを置くことになりそう。寝室に置くよりはかなりマシにしても、サイドに置くってなんだかなあと思う。
どうせならどーんと正面に開発マシンを置きたいという気持ちがある。
ここまで考えて、目の前にあるゲーム用PCを開発に使うという選択肢を頭からごくごく自然に除外していることに気が付いた。
WSLを試してみたいしこれをそのまま使ってみるのも悪くないんじゃないかと。
WSLのインストール
まず、WSLが自分の守備範囲であるフロントエンド開発にどう必要なのかと言うと、ぶっちゃけ不要です。
自分の自己満足でしかないです。
ただ、使うか使わないかは置いておいても、WindowsPCを開発マシンとして扱うにあたり中にLinuxがあるというのは安心感がある。
また、フロントエンド開発以外ではこのブログの構築に使っているHugo周りの環境もWSLで構築出来たら便利だと思う。
自己満足の一環としてWindows TerminalをMicrosoft Storeからインストールした。
管理者権限でTerminalを実行して以下のコマンドでWSL(オプション特に指定しなかったらUbuntu)をインストールできる。シンプルなコマンド1つでできるのがなんだかかっこいい。
wsl —install
※当然Windows Terminalをインストールしなくても普通にコマンドプロンプトなりPowerShellなりを起動してインストールすればいいです。
GoとHugoのインストール
とりあえず今回はHugoの環境構築をしたい。今書いているこれもWindowsPCからアップロードしてみる。
どちらもネット上にいくらでも方法があるので省略するが、Hugoに関しては公式サイトにLinux向けのHomebrewを使ったインストールについて書かれていた。(HomebrewはMac向けのツールだが、Linuxにも対応しているそう)
LinuxでHomebrewというのがあまりピンとこないが、面白そうだからこっちでやってみた。
WSLからWindows側のファイルへアクセスする
これはおそらく世間的には推奨されていないはず。アクセスが遅いとか。
ただ手っとり早いのはこの方法だと思うので、今回はこれをできるようにして満足したいと思う。
ブログのリポジトリをWin側でクローンし、WSLからそこへアクセスすることは簡単にできる。
特に、Windows TerminalではUbuntu(WSL)を開くことができるが、Terminalから開くとカレントディレクトリがWindowsのユーザーフォルダとなっている。(設定で変更可)
ユーザーフォルダ下にリポジトリ置き場を作っておけばアクセスも楽そう。
WSLから見てWindowsのユーザーフォルダは以下のようなパスとなっている。
/mnt/c/Users/ユーザー名
アクセス自体はできるが、このままだとhugoコマンドを叩いた際に権限周りでエラーが出てしまうので、WSL側で以下のコマンドと内容でWSL用の設定ファイルを作り、WSLを再起動 or Cドライブを再マウントする。
sudo vi /etc/wsl.conf
[automount]
options = "metadata"
これでとりあえず使えるようになった。
WSLでHugoを動かしてみての感想
ホットリロードが効かないみたい。
なんとかできるのかできないのかは分からないが、そんなに困らないし後から根本的に方法を変えるだろうことも考えると今は置いておく。
ソースもWSL側で持っておき、基本はそこで完結するのがよさそうなので次はこちらをできるようにしたい。
やはりノートPCより、普段から起動しているPCの方が作業に取り掛かる心理的ハードルは相当低くなったので嬉しい。