vagrant(virtualbox)でclojureの開発環境を構築する

シゴトでclojureを使うので自宅のPCにclojureを叩くための環境を整えます。

バージョン

VirtualBox バージョン 6.1.40 r154048

Vagrant Installed Version: 2.3.0

vagrantubuntuを立てる

vagrantの設定ファイルは次のようにしました。

Vagrant.configure("2") do |config|
  # Every Vagrant development environment requires a box. You can search for
  # boxes at https://vagrantcloud.com/search.
  config.vm.box = "generic/ubuntu2204"

  config.vm.provider "virtualbox" do |vb|
    # Customize the amount of memory on the VM:
    vb.memory = "8192"
  end
end

起動して sudo apt update sudo apt upgrade します。

sdkmanでjdkをインストールする

sdkmanを使ってみようかなと。

https://sdkman.io/

sdkmanをインストールします。

vagrant@ubuntu2204:~$ curl -s "https://get.sdkman.io" | bash
vagrant@ubuntu2204:~$ source "$HOME/.sdkman/bin/sdkman-init.sh"
vagrant@ubuntu2204:~$ sdk version
==== BROADCAST =================================================================
* 2022-11-05: jreleaser 1.3.1 available on SDKMAN! https://github.com/jreleaser/jreleaser/releases/tag/v1.3.1
* 2022-10-31: layrry 1.0.0.Alpha2 available on SDKMAN! https://github.com/moditect/layrry/releases/tag/v1.0.0.Alpha2
* 2022-10-31: pomchecker 1.4.0 available on SDKMAN! https://github.com/kordamp/pomchecker/releases/tag/v1.4.0
================================================================================

SDKMAN 5.16.0

できました。

ではでは、AmazonCorrettoをインストールします。

次のコマンドでインストール可能なベンダーやバージョンを確認できます。

vagrant@ubuntu2204:~$ sdk list java

AmazonCorretto 17.0.5をインストールします。

vagrant@ubuntu2204:~$ sdk install java 17.0.5-amzn
vagrant@ubuntu2204:~$ java -version
openjdk version "17.0.5" 2022-10-18 LTS
OpenJDK Runtime Environment Corretto-17.0.5.8.1 (build 17.0.5+8-LTS)
OpenJDK 64-Bit Server VM Corretto-17.0.5.8.1 (build 17.0.5+8-LTS, mixed mode, sharing)

できました。

clojureをインストールする

公式サイトを確認したところbrewでインストールできるようなのでまずbrewをインストールします。

https://brew.sh/index_ja

vagrant@ubuntu2204:~$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
vagrant@ubuntu2204:~$ echo '# Set PATH, MANPATH, etc., for Homebrew.' >> /home/vagrant/.profile
vagrant@ubuntu2204:~$ echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> /home/vagrant/.profil
vagrant@ubuntu2204:~$ eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
vagrant@ubuntu2204:~$ sudo apt-get install build-essential
vagrant@ubuntu2204:~$ brew install gcc
vagrant@ubuntu2204:~$ brew --version
Homebrew 3.6.8
Homebrew/homebrew-core (git revision c11ea6ab4f5; last commit 2022-11-05)

できました。

ではでは、clojureをインストールします。

vagrant@ubuntu2204:~$ brew install clojure/tools/clojure
vagrant@ubuntu2204:~$ clojure --version
Clojure CLI version 1.11.1.1189
vagrant@ubuntu2204:~$ clj
Downloading: org/clojure/clojure/1.11.1/clojure-1.11.1.pom from central
Downloading: org/clojure/core.specs.alpha/0.2.62/core.specs.alpha-0.2.62.pom from central
Downloading: org/clojure/pom.contrib/1.1.0/pom.contrib-1.1.0.pom from central
Downloading: org/clojure/spec.alpha/0.3.218/spec.alpha-0.3.218.pom from central
Downloading: org/clojure/spec.alpha/0.3.218/spec.alpha-0.3.218.jar from central
Downloading: org/clojure/clojure/1.11.1/clojure-1.11.1.jar from central
Downloading: org/clojure/core.specs.alpha/0.2.62/core.specs.alpha-0.2.62.jar from central
Clojure 1.11.1
user=>

できました~。