wallleap / myblogs

blog, Issue
https://myblog.wallleap.cn
4 stars 1 forks source link

Win11安装Arch子系统并配置开发环境 #80

Open wallleap opened 2 years ago

wallleap commented 2 years ago

title: Win11 安装 Arch 子系统并配置开发环境 date: 2022-07-26 19:30 updated: 2022-07-26 19:30 cover: //cdn.wallleap.cn/img/pic/illustrtion/202207261246820.png category: 技术杂谈 tags:

最近更新了 win11,重新启用下 Linux 子系统,并设置好基础开发环境。

Win10 启用其子系统 Ubuntu 并安装图形界面可以看这篇文章:https://myblog.wallleap.cn/#/post/34

主要是想着 Win11 界面看着也还不错了,终端 + oh-my-zsh / oh-my-posh 看着也是非常 nice 的

命令

1、启用功能

搜索并打开控制面板

打开控制面板

点击程序

程序

点击启用或关闭 Windows 功能

启用功能

使用于 Linux 的 Windows 子系统 和其他有关虚拟平台的勾上(没有 Hyper-V 的把其他的勾选就行),点击确定

Windows功能

等待一会之后按提示重启电脑就成功开启 WSL 了(如果 BIOS 中有 VT/虚拟 相关的选项,需要进 BIOS 设置为开启状态)

为了方便也可以直接在 powershell 中使用命令(管理员身份运行):

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

2、设置 WSL 2 为默认版

  1. 下载升级包:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

  2. 下载完成后双击安装

  3. 在 PowerShell 输入命令:wsl --set-default-version 2,将 WSL 2 设置为默认版

3、安装 ArchWSL

提供了两种安装方式,我们选择简单点的:

yuk7/ArchWSL - releases下载 Arch.appx / Arch.zip

解压,双击 Arch.exe 进行安装

提示输入 Enter 之后可以在终端中找到并打开

终端中 Arch

4、设置 Root 密码

[root@PC-NAME]# passwd
在这里输入两次密码

5、设置默认用户

可以只用 root 用户,但还是建议更改下

参考 ArchWiki 的 SudoUser and groups 页。

[root@PC-NAME]# echo "%wheel ALL=(ALL) ALL" > /etc/sudoers.d/wheel
# 设置 sudoers 文件

[root@PC-NAME]# useradd -m -G wheel -s /bin/bash {username}
# 添加用户

[root@PC-NAME]# passwd {username}
# 设置默认用户密码

[root@PC-NAME]# exit

>Arch.exe config --default-user {username}
# 设置默认用户

把上面的 {username} 替换为你自己想创建的用户名,例如 testuser

如果默认用户密码被更改 (issue #7), 请重启电脑或者用以管理员身份打开 CMD 运行下面命令,重启 LxssManager

net stop lxssmanager && net start lxssmanager

6、初始化密钥环(keyring)

请执行这些命令以初始化密钥环 keyring(必须执行此步骤才可以使用 Pacman)

[user@PC-NAME]$ sudo pacman-key --init

[user@PC-NAME]$ sudo pacman-key --populate

[user@PC-NAME]$ sudo pacman -Syy archlinux-keyring

7、美化终端

首先安装官方源的 zsh

sudo pacman -S zsh

安装 wget 和 git

sudo pacman -S wget

获取 oh-my-zsh 安装脚本

wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh

如果打死都获取不来,直接把 tools/install.sh 内容复制,并新建一个 install.sh 文件,粘贴内容进去

给文件运行权限

chmod +x install.sh

运行 shell 文件

./install.sh

设置 zsh 为默认的 shell

sudo chsh -s /bin/zsh 

主题默认是在 ~/.oh-my-zsh/themes/ 目录下,可以选择这里面已经有了的主题

主题预览:External themes

可以尝试自己下载主题,以 passion 为例,前往主题仓库:ChesterYue/ohmyzsh-theme-passion

下载 passion.zsh-theme 文件,将它复制到主题目录

cp passion.zsh-theme ~/.oh-my-zsh/themes/

在配置文件中修改主题名为 passion

vim ~/.zshrc

修改主题

需要搭配合适的字体才能显示完整,建议使用 FiraCode 字体族

前往 https://wallleap.lanzoub.com/i43lX08fdnpa 下载字体,安装时候选择 FiraCode Nerd Font 即可

新建一个终端就可以看到主题效果了

下载三个常用的插件:

历史命令查找(zsh-history-substring-search)

https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/history-substring-search

代码高亮(zsh-syntax-highlighting)

https://github.com/zsh-users/zsh-syntax-highlighting

命令提示(zsh-autosuggestions)

https://github.com/zsh-users/zsh-autosuggestions

之后修改配置文件:

vim ~/.zshrc

修改一下内容

plugins=(
  git
  zsh-history-substring-search
  zsh-syntax-highlighting
  zsh-autosuggestions
)

source 一下,让修改生效

source ~/.zshrc

文件互通

win 下可以 win+r 输入 \\wsl$ 回车,然后将 Arch 的映射到一个盘符

映射网络驱动器

wsl 下可以进入 /mnt 目录,win 下的各个盘符都在这底下

mnt

8、配置开发环境

用的 WSL 已经是 Linux 了,但是不方便复用,可以选择 Docker 配置一个统一的开发环境

下载 Docker Desktop

直接前往官网 Docker Desktop - Docker 4.15 版本,下载自己平台的软件

之后安装完成之后,运行软件,设置里找到 Docker Engine,把一下代码复制替换掉方框中的代码

镜像

{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://aa25jngun.mirror.aliyuncs.com"
  ],
  "insecure-registries": [],
  "debug": false,
  "experimental": false,
  "features": {
    "buildkit": true
  },
  "builder": {
    "gc": {
      "enabled": true,
      "defaultKeepStorage": "20GB"
    }
  }
}

设置里勾选使用 WSL 2 环境,默认勾选就不需要管

WSL2

获取镜像

前端开发环境我觉得 FrankFang 这个大佬配置的非常好,可以直接使用

仓库地址:FrankFang/oh-my-env-1 (github.com)

将上面的文件下载到本地:

git clone https://github.com/FrankFang/oh-my-env-1.git oh-my-env

运行命令:

docker network create network1

打开 VSCode

  1. 安装 Remote Container 插件 改名了,安装 Dev Container 0.266 版本
  2. 打开 oh-my-env 目录
  3. 输入 Ctrl + Shift + P,然后输入 Reopen,回车,等待

reopen in container

等上一步启动完毕之后,新建终端

repos

使用说明

参考文档