前言
很久之前就体验过Deepin桌面了,对其精美的外观映像深刻。前几天闲来无事,把自己电脑再次从Windows换成Arch Linux,一来可以让自己少玩游戏多敲代码,二来也能尝试一下能否脱离Windows生态,顺便看看几年前Deepin桌面的那些BUG是否还存在。这篇文章主要记录了在自己电脑上安装Arch Linux和Deepin桌面的过程,主要用于以后再次安装的时候方便自己参考,如果喜欢Deepin桌面环境的话,也可以参考此文章。
我的电脑主要配置如下,如果配置与我的有出入(比如显卡或者硬盘等),部分操作则可能不太适用,需要自行修改。
1 | CPU:Intel® Xeon® Processor E5-2680 v2 |
安装
整个过程分为三步:Arch Linux基本系统的安装、Deepin桌面环境的安装、必要软件的安装与其他优化。
安装Arch Linux基本系统
这一部分照着官方Wiki来,基本上不会出什么问题。
先从官方下载ISO镜像,然后使用rufus工具将其写入U盘,启动时选择UEFI启动。
检查网络连接
一般如果直接使用有线连接的话,进入安装环境就会有网络了,如果使用的是无线网络,可以通过iwd
来连接Wi-Fi:
1 | systemctl start iwd.service |
可以用以下命令检查网络是否通畅:
1 | ping acris.me -c 4 |
更新系统时间
首先启用ntp,确保系统时间正确:
1 | timedatectl |
建立硬盘分区
先查看硬盘分区,因为我的两块硬盘都是NVMe,所以在系统中的设备名称为/dev/nvme0n1
和/dev/nvme1n1
。如果是普通的硬盘,则应该为/dev/sdx
,后续注意更换为你自己的设备名称:
1 | fdisk -l |
然后直接新建硬盘分区,在这里我使用的是cfdisk,你也可以更换为自己喜欢的分区工具:
1 | cfdisk -z /dev/nvme0n1 |
由于我使用的是UEFI引导,所以需要一个EFI分区。除此之外,还分了一个根分区和一个交换分区。我的分区方案是512MB的/efi
分区,8GB的swap
分区,其余空间划分给/
。
然后第二块硬盘直接一个分区,之后挂载到/home
。
格式化分区
分完区后就是格式化操作了,由于我是用的EFI引导,所以EFI分区需要格式化成FAT32格式(具体可见官方Wiki):
1 | mkfs.fat -F32 /dev/nvme0n1p1 |
挂载分区
格式化完成之后,将分区挂载到/mnt
。先挂载根分区,再挂载EFI分区和/home
:
1 | mount /dev/nvme0n1p2 /mnt |
选择镜像
由于国内网络环境,连接国外源可能会很慢,所以有必要换成国内镜像。此处我直接使用wget从Arch Linux官网拉取中国镜像:
1 | mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak |
下载完成后,编辑镜像列表文件,去除对应的注释:
1 | vim /etc/pacman.d/mirrorlist |
安装基本系统
选择好国内源后,便可以开始基本系统的安装。我同时安装了Vim
:
1 | pacstrap -K /mnt base linux linux-firmware vim |
生成fstab
等待安装完成后,使用genfstab
命令生成fstab
文件:
1 | genfstab -U /mnt >> /mnt/etc/fstab |
Chroot
接下来chroot
到新安装的系统。chroot也就是将该目录变成/
:
1 | arch-chroot /mnt |
设置时区
然后将系统时区设为东八区:
1 | ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime |
同时使用hwclock
设置硬件时钟,并调整时间偏移:
1 | hwclock --systohc |
设置Locale
接下来需要进行一些语言和地区相关的配置。由于我使用的是英语,因此只配置了英语语言。如果使用中文的话可以额外增加中文的配置。先编辑locale.gen
文件,解除en_US.UTF-8 UTF-8
的注释。如果需要中文,同时解除zh_CN.UTF-8 UTF-8
的注释:
1 | vim /etc/locale.gen |
然后执行以下命令生成locale信息:
1 | locale-gen |
然后还需要设置LANG
环境变量:
1 | vim /etc/locale.conf |
在该文件中添加以下内容:
1 | LANG=en_US.UTF-8 |
设置主机名
我的主机名设置的是archlinux
。编辑hostname
文件,写入主机名:
1 | vim /etc/hostname |
修改Root用户密码
执行passwd
,并输入两次密码:
1 | passwd |
创建新用户
非常不建议使用root用户登录!因此有必要创建一个其他用户:
1 | useradd -m -G wheel -s /bin/bash acris |
-G
参数将该用户加到额外的wheel
组中,稍后可以给这个组执行sudo
命令的权限。-s
参数制定了默认的shell为bash
,其实无所谓,因为我一般会很快切换到zsh
。
修改新创建用户的密码,照样是输入两次:
1 | passwd acris |
接下来需要允许该用户所在的wheel
组有执行sudo
命令的权限,此时请不要直接修改/etc/sudoers
文件,而是要使用这个命令:
1 | visudo |
然后解除wheel
组前面的注释:
1 | # Uncomment to allow members of group wheel to execute any command |
配置Bootloader
由于Deepin提供了GRUB2的主题,所以这次bootloader使用的是grub
,注意这里的gurb
版本是2,不是GRUB Legacy。同时,因为我是使用的Intel的CPU,所以一并安装并配置了intel-ucode
:
1 | pacman -S intel-ucode grub efibootmgr |
接下来配置grub
:
1 | grub-mkconfig -o /boot/grub/grub.cfg |
至此,bootloader已经安装完成了,接下来开始安装Deepin桌面环境。
安装Deepin桌面环境
安装LightDM显示管理器
安装LightDM
:
1 | pacman -S lightdm |
然后修改LightDM
配置文件,指定greeter-session
为lightdm-deepin-greeter
,不然无法启动Deepin:
1 | vim /etc/lightdm/lightdm.conf |
取消注释并修改greeter-session
:
1 | [Seat:*] |
安装完成记得设置LightDM为开机自启:
1 | systemctl enable lightdm.service |
安装Deepin和必要软件
安装完Display Manager以后,接下来就可以安装Deepin桌面了:
1 | pacman -S deepin deepin-extra networkmanager file-roller p7zip |
除了Deepin桌面,还安装了解压相关软件和Network Manager,然后需要将Network Manager设置为开机自启,否则无法使用网络管理相关功能:
1 | systemctl enable NetworkManager.service |
安装NVIDIA显卡驱动,如果是其他显卡,此处则需要换成对应的驱动:
1 | pacman -S nvidia nvidia-settings |
如果你的电脑有蓝牙,则安装蓝牙相关驱动并设置开机自启:
1 | pacman -S bluez |
安装Deepin Terminal需要用到的软件包:
1 | pacman -S zssh lrzsz |
安装一些常用工具,如OpenSSH等:
1 | pacman -S openssh |
如果需要Arch Linux官方提供的资源包,可以安装下面软件,安装完成后所有资源都在/usr/share/archlinux
目录下:
1 | pacman -S archlinux-wallpaper |
然后安装一些好看的字体:
1 | pacman -S ttf-liberation ttf-dejavu ttf-roboto ttf-droid adobe-source-han-sans-otc-fonts adobe-source-han-serif-otc-fonts adobe-source-code-pro-fonts adobe-source-sans-pro-fonts adobe-source-serif-pro-fonts noto-fonts noto-fonts-extra noto-fonts-emoji ttf-fira-code |
如果想安装Windows字体,可以稍后使用yay
安装ttf-ms-win10
,需要挂载Windows安装镜像,详见Arch Linux Wiki,此处不再赘述。
切换到桌面用户
接下来安装一些常用工具,此处先切换到之前创建的桌面用户,不要使用root
用户:
1 | acris替换为你自己的用户名 |
安装yay
yay,Yet Another Yogurt - An AUR Helper Written in Go,在我看来它就是一个AUR的包管理器,是pacman
的包装,并且完全可以替代pacman
。
要安装它很简单,只要几行命令即可:
1 | 安装Git |
yay
以非root用户使用时,无需加sudo
命令,需要管理员权限时,会自动弹出输入密码的提示。
生成用户文件夹
先安装xdg-user-dirs
,用于生成用户目录下的 Documents
、Downloads
、Music
、Pictures
等等文件夹:
1 | yay -S xdg-user-dirs |
不出意外的话,使用ls
命令应该可以看到生成的那些文件夹了。这里我们使用了之前安装的yay
命令。用法和pacman
基本一致。
安装oh-my-zsh
最好先安装oh-my-zsh
,否则安装其他软件后再安装它,会出现很多奇怪的问题,比如.bashrc
里面的配置没有同步到.zshrc
等,反正早安装不会吃亏就对了。安装oh-my-zsh
需要先安装一些必要软件:
1 | yay -S zsh |
然后安装oh-my-zsh
:
1 | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
安装过程中会让你输入密码,然后你就会发现已经切换到zsh
了。
然后安装bash-completion
和zsh-completions
:
1 | yay -S bash-completion zsh-completions |
退出安装环境
至此,基本系统的安装以及完成了。不出意外的话,一会儿重新开机就能看到登录界面了。在此之前,先退出安装环境,并卸载挂载的分区:
1 | 退出zsh |
接下来关机,并且移除掉安装介质,然后重新开机即可,希望重启以后能看到漂亮的登录界面:
1 | poweroff |
安装常用软件以及其他优化
如果你的Deepin桌面已经安装完毕,那么可以继续往下,否则,还是认真看看上面哪一步做错了。
系统美化
主题、字体、菜单图标、登录界面等,都可以按照你的个人喜好去调整,我也不再细说。
安装Rime输入法
首先,输入法是必不可少的。对于我来说,我比较喜欢使用Rime输入法:
1 | yay -S fcitx-im fcitx-configtool fcitx-rime |
安装完成后,可以在Menu
里面找到Fcitx
启动,然后打开Fcitx Configuration
,添加Rime即可。下次开机时,Fcitx
会自动启动。
装完输入法,还需要进行一些额外的配置,否则在有些地方(如Intellij IDEA,Telegram等)无法输入中文:
1 | vim ~/.pam_environment |
然后写入以下内容:
1 | Fcitx |
安装并启用Shadowsocks代理
除了输入法,当然还有重要软件要装:
1 | yay -S shadowsocks-libev shadowsocks-v2ray-plugin |
然后新建配置文件:
1 | sudo mkdir /etc/shadowsocks |
编辑好配置文件后,启用代理,并设置开机自启:
1 | sudo systemctl start [email protected] |
启动代理后,除了在Chrome上安装Switch Omega等软件外使用代理,还可以设置系统代理,这里需要使用genpac
来根据gfwlist.txt
生成PAC文件:
1 | yay -S python-pip |
genpac
的使用方法可以参考官方文档。
生成PAC文件后,还需要将文件托管到web服务(可以使用caddy或者nginx等web服务器),然后更改网络代理设置,Method
选择Automatic,Configuration URL
填写PAC文件的网页地址。如http://127.0.0.1:2015/proxy.pac
。注意,填写本地路径(如file:///home/your/pac/path/proxy.pac)将不会生效
shadowsocks-libev整合v2ray-plugin的服务的部署可以使用此docker镜像。
开发工具
对于一个程序猿来说,常用软件当然是一些开发工具了。我个人用的较多的开发工具主要是JetBrains家族的,这些软件AUR都有提供,直接使用yay
安装即可,例如安装JetBrains Toolbox:
1 | yay -S jetbrains-toolbox |
需要提一下的是,Deepin默认很多快捷键会和JetBrains家族的IDE冲突,我的做法是把系统的快捷键更改或取消。另外Fcitx
的一些默认快捷键也会和IDE冲突,例如Ctrl + Space
,所以我改成了Super + Space
,这些地方都需要自己去慢慢配置。
其他的像FileZilla、Postman、Open JDK、Node.js等工具AUR也有提供,可以直接使用yay安装:
1 | yay -S jdk11-openjdk nodejs filezilla postman-bin |
文本编辑器的话,大神们喜欢用Vim,但是我觉得Deepin自带的editor也蛮好用的。
当然,你若是喜欢Atom、VS Code、Sublime Text等工具的话,AUR也可以满足你。
安装其他常用软件
浏览器个人钟爱Chrome:
1 | yay -S google-chrome |
Markdown编辑器,首选Typora:
1 | yay -S typora pandoc |
如果需要办公,可以安装LibreOffice:
1 | yay -S libreoffice-fresh |
邮件客户端可以用Mozilla出品的Thunderbird:
1 | yay -S thunderbird |
音乐客户端当然是Spotify了,当然也可以安装网易云音乐:
1 | Spotify |
思维导图软件使用Xmind ZEN:
1 | yay -S xmind-zen |
偶尔有图片编辑需求的话,当然是Linux下大名鼎鼎的GIMP了:
1 | yay -S gimp |
还有更多更多软件,AUR基本上都可以满足你。除了滚动更新的特性和丰富的Wiki以外,Arch Linux的另一大特点就是强大的AUR仓库。
最后,献上两张成品图,图片为2017年第一次安装Arch Linux和DDE桌面的图,现在的Deepin更美观了,不过我没截图,留给你们自己体验:
总结
安装Arch Linux和Deepin桌面环境的教程到此便结束了,如果安装过程遇到其他问题,可以去Arch Wiki或者通过谷歌寻找答案,当然也可以在下面留言,如果我会的话当然乐意解答。
本文虽为我自己的电脑安装Arch Linux Deepin的教程,但是应该同样适用于其他配置,只需将安装NVIDIA驱动等地方,换成安装其他显卡的驱动即可(未经测试,出错勿怪哈)。
由于Arch Linux的Wiki更新较为频繁,建议用此文章结合官方Wiki一起安装。文章虽然写的不太好,但是希望有了我的前车之鉴,以及我不断填坑总结出来的这份安装教程,大家能够少走弯路,一次成功~
参考资料: