🐙

ArchLinuxをWSLにインストール(2025)

2025/02/21に公開

WSL2.4時代のArchLinux

以前、WSLで使うディストリビューションにArchLinuxを使えないかといろいろ試した。
ManjaroをLinux GUIにする方法などを考えたりもした。
その後pacmanのアップデートコマンドが壊れて修復できなくなったのはいい思い出。

先日WSL2.4.4がリリースされた。
(当ブログでは取り上げなかったが)
このアップデートには利用者に直接メリットのあるアップデートはそんなにないが、
OS開発にはメリットの大きい内容があった。

それが tarベースのパッケージによる導入

https://ascii.jp/elem/000/004/236/4236626/

tarで固めてインポートは前からできていたが、
それを発展させてコンフィグファイルを用意してtarで固めて拡張子をwslにするとインポートできる仕様になった。

https://learn.microsoft.com/ja-jp/windows/wsl/build-custom-distro

その動きに呼応してArch Linuxが公式イメージを用意した。

https://lists.archlinux.org/archives/list/arch-dev-public@lists.archlinux.org/thread/73A4BK7YK4BJBVXGMN2I5CROQAWI53VZ/

今回はそれを使ってArch on WSLを実現してみよう。

------------------- ↓ 前書はここから ↓-------------------

ダウンロード

公式GitlabArchLinux on WSLより公式イメージをダウンロードする
細心のリリースより .wsl ファイルを選択する

https://gitlab.archlinux.org/antiz/archlinux-wsl/-/releases

インポート

ダウンロードしたファイルをダブルクリックしてもインポートできるが、
場所を指定したいのでインポートコマンドを使う

wsl --import archlinux C:\path\to\archlinux C:\Users\<Username>\Downloads\archlinux-2025.02.12.wsl
 この操作を正しく終了しました。
wsl -d archlinux
[root@PC dozo]#

('ω') 簡単だなぁ

初期設定

ミラーリスト更新

Archを使う時最初にミラーリストを更新する。
以前はダウンロードが遅かったらからではあるが、
今はどうなんだろうね。

cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
curl -fsSL "https://archlinux.org/mirrorlist/?country=JP&protocol=http&protocol=https&ip_version=4" | sed 's/^#Server/Server/g' | tee /etc/pacman.d/mirrorlist

pacmanを最新状態にし、いくつかパッケージをインストールする

pacman -Syy
pacman -Syu --noconfirm --needed git sudo wget nano base-devel

ユーザー作成

続いてユーザーを作成

localedef -f UTF-8 -i ja_JP ja_JP.UTF-8
groupadd -g 1000 dozo
useradd -u 1000 -g 1000 -G wheel -m dozo
passwd -d dozo

sudoの調整

printf "%%wheel ALL=(ALL) NOPASSWD:ALL\n" | tee -a /etc/sudoers.d/wheel

そして wsl.conf 編集

printf "[user]\ndefault=dozo\n" | tee -a /etc/wsl.conf

φ(.. )ちゃんと wsl.conf あるんだ

再起動

準備ができたのでArch自体を再起動する

exit
wsl -t ArchLinux
wsl -d ArchLinux

一般ユーザーでログインできていると思うので、
パスワードを設定

passwd
 New password:
 Retype new password:
 passwd: password updated successfully 

(・∀・) できた!

------------------- ↓ 後書きはここから ↓-------------------

過去記事と内容的には同じだが、
インストールはめっちゃ簡単になっている

yayのインストール

pacmanだといちいちsudo打たないといけないので、
GO製pacmanのyayを入れておきたい

git clone https://aur.archlinux.org/yay-bin.git
cd ./yay-bin/
makepkg -si

Discussion