Skip to content

更适合中国宝宝体质的运行在 WSL 上的 Arch Linux (Arch for WSL)

Notifications You must be signed in to change notification settings

rayae/easy-arch-wsl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

easily create archlinux rootfs for WSL

docker build 一键生成更适合中国宝宝体制的 Arch Linux WSL 根文件系统

特性

  • 构建时直接滚动更新到最新系统
  • systemd/DBus 开箱即用(系统态及用户态, /etc/wsl.conf
  • 已配置国内加速镜像及 archlinuxcn 软件源
  • sudo 无需输入密码(wheel 组)
  • 语言区域设置为 en_US.UTF-8
  • 自动注入 Windows DNS (/etc/wsl-boot.sh)
  • 已安装软件:base base-devel wget curl zip unzip vim sed nano sudo texinfo man-db man-pages yay bash-completion net-tools openssh

WSLg 专属特性

创建时带上参数 --with-wslg

  • 预装 Fcitx5 输入法(中文支持)
  • 解决开启 systemd 后 X11 Socket 挂载问题(wsl-x11-socket.service)
  • 解决开启 WSLg Wayland Socket 挂载问题(wsl-wayland-socket.service)

操作步骤

生成 rootfs (不带 WSLg)

约 289M

docker run -it --privileged --rm -v ./:/work -w /work archlinux:latest bash ./create-rootfs.sh

生成 rootfs (带 WSLg)

约 1.1G

docker run -it --privileged --rm -v ./:/work -w /work archlinux:latest bash ./create-rootfs.sh --with-wslg

导入 WSL

wsl --import myarch D:/WSL D:/archlinux-rootfs-wslg.tar.gz --version 2

安装后续

进入 WSL 并创建普通用户

wsl -d myarch

USERNAME=testuser
useradd -m -G wheel -s /bin/bash $USERNAME
passwd $USERNAME
sudo sed -i "s|^#default=.*|default=$USERNAME|" /etc/wsl.conf

alt text

关闭 WSL 并重新进入

wsl -t myarch
wsl -d myarch

启动用户态服务

systemctl --user enable --now fcitx5 wsl-wayland-socket

alt text

查看 sockets 及 DBus

alt text

中文输入法测试

运行 fcitx5-configtool 自行添加 Pinyin 布局 alt text

About

更适合中国宝宝体质的运行在 WSL 上的 Arch Linux (Arch for WSL)

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages