Luaをローカルにインストールする

自分のマシンでExercismの演習を解くために、Luaをローカルにインストールする方法を学びます


MacOS

まず、Homebrewを使ってLuaとLuarocksをインストールします。

$ brew install lua luarocks

次に、LuaのテストフレームワークであるBustedをインストールします。

$ luarocks install --local busted

システムの$PATHに~/.luarocks/binを追加します。

export PATH="$HOME/.luarocks/bin:$PATH"

ただし、この設定は一時的なものです。$PATHに恒久的に追加するには、使っているシェルに応じて.bashrc、.zshrc、config.fishのいずれかに記述する必要があります。

あとはテストを実行します。

$ busted

Ubuntu

まず、Aptを使ってLuaとLuarocksをインストールします。

$ sudo apt-get install lua5.4 liblua5.4-dev luarocks

次に、LuaのテストフレームワークであるBustedをインストールします。

$ luarocks install --local busted

システムの$PATHに~/.luarocks/binを追加します。

export PATH="$HOME/.luarocks/bin:$PATH"

ただし、この設定は一時的なものです。$PATHに恒久的に追加するには、使っているシェルに応じて.bashrc、.zshrc、config.fishのいずれかに記述する必要があります。

あとはテストを実行します。

$ busted

Windows 10: WSL

まず、PowerShell(管理者として実行)を使ってWSL (Windows Subsystem for Linux)を有効にする必要があります。

PS> Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

この作業には再起動が必要です。

次に、Microsoft StoreからUbuntuをインストールするか、またはPowerShellを使ってダウンロードしてインストールします。

PS> curl.exe -L -o ubuntu1804.appx https://aka.ms/wsl-ubuntu-1804
PS> Add-AppxPackage .\ubuntu1804.appx; rm .\ubuntu1804.appx
PS> ubuntu1804

次に、パッケージリストを更新します。

PS> wsl
$ sudo apt-get update

これで、上のUbuntuの手順に従ってLuaRocksとBustedをインストールする準備が整いました。

完了したら、任意のWindowsコマンドラインから直接テストを実行できます。

C:\> wsl busted

Windows 10: Docker

Gitbashのインストール

この手順は任意です。Windows標準のCLIや別のCLIを使いたい場合は、以下の手順を少し調整する必要があるかもしれません。

ダウンロードはこちらから。 インストール手順はこちらです。

Dockerのインストール

手順に従ってDocker for Windowsをインストールします。 インストールが完了したら、次のコマンドを実行して正しくインストールされたことを確認できます。

$ docker --version

初めてDockerを実行しようとすると、エラーが発生することがあります。

cannot enable hyper-v service

このエラーが発生した場合は、Hyper Vを有効にする手順に従ってください。設定を無効にしてコンピューターを再起動し、起動後に再度有効にする必要があるかもしれません。

bustedのインストール

GitbashとDockerをインストールしたら、bustedの「コンテナ」をインストールできるようになります。

Gitbashで次を実行します。

広く使われている次のDockerコンテナを取得するには、次を実行します。

$ docker pull imega/busted

毎回コマンド全体を入力しなくて済むように、関数を作成します。 これを.bashrcに追加します。

dbusted() { docker run --rm -t -v "/$@":/data imega/busted; }

あとは、CLIでテストを実行したいディレクトリに移動して、次を実行します。

$ dbusted $PWD

bustedのテストの出力が表示されるはずです。