この記事は,Ubuntuはよく使うが,Arch Linuxは初めてという私 @zacky1972 が,まずは手近なT2チップを備えていない古いIntel MacにArch Linuxをインストールして習得していく過程を記録する駄文の7回目です.前回まででMac Pro(Mid 2010)へArch Linuxをインストールしたもののネットワークも繋がらない最小構成でしたが,この状態でもElixirをインストールできることを立証しました.ただし,ErlangはソースコードビルドしたもののElixirはasdfのインストールであったため,Elixirを使用するにはrootでログインして使用する必要がありました.そこで,今回はElixirもソースコードビルドして,任意のユーザーがElixirを使用できるようにします.
シリーズ
- Arch LinuxをブートできるUSBメモリを用意する
- デュアル・ブート環境にするためにパーティションを区切る
- いよいよArch Linuxをインストールする
- ネットワークの設定を見る
- Mac Pro (Mid 2010)にArch Linuxをインストールする
- ネットワークが繋がらない最小構成のままElixirをインストールして実行してみる
- ネットワークが繋がらない最小構成のままElixirをasdfではなくソースコードビルドしてインストールする(本記事)
fdisk -l
の結果
Mac Pro (Mid 2010)の2024年1月4日現在のfdisk -l
の結果は次のとおりです.
Device | Size | Type |
---|---|---|
/dev/sda1 | 200M | EFI System |
/dev/sda2 | 488.9G | Linux filesystem |
再度USBメモリブート
- Arch Linux live USBメモリをMac Pro(Mid 2010)に挿す
- optionキーを押しながら起動する
- USBメモリを選択して起動する
mount /dev/sda2 /mnt
arch-chroot /mnt
その後,pacman -Syyu
として,パッケージをアップグレードしておきます.
Elixirのソースコードインストール
手順はこちらに書いてあります.
今回は,latest releaseをインストールしたいと思っています.2024年1月4日現在の最新版は1.16.0です.下記のようにダウンロードします.
cd
curl -OL https://github.com/elixir-lang/elixir/archive/v1.16.0.zip
続いて,次のようにビルドします.
cd elixir-1.16.0
make clean compile
しばらくかかります.コンパイルが終わったら,次のようにインストールします.
make install
これで,/usr/local/bin
にelixir
がインストールされます.ライブラリは/usr/local/lib/elixir
にインストールされていました.
asdfの設定をクリアする
このままだとasdfを優先して読み込むようになっていますので,asdfの設定をクリアします.
cd
cat .bashrc
次のように表示されており,asdfの設定だけが入っている状態です.
. $HOME/.asdf/asdf.sh
これを削除します.
rm .bashrc
一旦,arch-chroot
環境を抜けて再度入り直します.
exit
arch-chroot /mnt
次のように確認をします.
echo $PATH
which elixir
無事,asdfの設定がクリアされていましたので,.asdf
を消します.
cd
rm -rf .asdf
起動して確認
次に再起動してSSDでelixir
を起動できることを確認します.
exit
reboot
2024年1月4日時点での起動シーケンスは下記の通りです.
- rEFIndの起動で,F2またはInsertを2回押して,カーネル・パラメータの編集画面に移行する.
- 末尾に
reboot=pci
を足して,Enterキーを押す. - ユーザーでログインする
次のようにElixirがユーザーモードで実行できることを確認しました.
which elixir
elixir -v
iex
iex> 1..10 |> Enum.map(& &1 * 2)