前言 重要数据·务必备份 !固态硬盘报废,连带 Linux 无了,只能重装。恐将来也会频繁装机,故写一篇笔记,希望一劳永逸。
进入桌面前 准备装机盘
在 archlinux 找到镜像源,下载 ISO。
用 Rufus 之类的刷 U 盘。
引导进装机盘 华硕主板的快捷键是 F11
。如果黑屏,将 DP 线换成 HDMI。
archinstall
进临时操作系统之后,连网线,运行 archinstall
。
选镜像源(mirror region)
选择格式化硬盘
创建 superuser。
其他选项都检查一下。archinstall 可能会有大幅的更新。
install!
最后提示 chroot,在里面 systemctl enable sddm
。
卡 wayland N 卡 + nvidia 专有驱动 + wayland = 黑屏
在 ~/.local/share/sddm/wayland-session.log
可查看 log。
先用 X11 登陆,把环境都配置好再回来。
添加内核参数:nvidia-drm.modeset=1
。这是 wayland 要求的。
适用于 systemd-boot:kate /boot/loader/entries/xxxx.conf
。追加参数。
已经能用了,但是 BUG 很多又卡顿,Fuck Nvidia。遂放弃,或者参考
进入桌面后 添加 sudo 免密 1 2 3 4 su vim /etc/sudoers.d/00_codesire codesire ALL=(ALL:ALL) NOPASSWD: ALL
调整快捷键
Konsole
System Settings
KRunner
(后面安装的)Flameshot: /usr/bin/flameshot gui
安装 yay 利用 git 下载预编译版安装。
1 2 3 4 sudo pacman -S git cd ~ && mkdir -p .local /opt && cd .local /optgit clone https://aur.archlinux.org/yay-bin.git cd yay-bin && makepkg -si
安装中文字体 1 2 3 sudo pacman -S noto-fonts noto-fonts-cjk noto-fonts-emoji cd ~ && mkdir -p .config/fontconfigkate .config/fontconfig/fonts.conf
配置如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE fontconfig SYSTEM 'urn:fontconfig:fonts.dtd' > <fontconfig > <alias > <family > serif</family > <prefer > <family > Noto Serif</family > <family > Noto Color Emoji</family > <family > Noto Sans CJK SC</family > <family > Noto Sans CJK TC</family > <family > Noto Sans CJK JP</family > </prefer > </alias > <alias > <family > sans-serif</family > <prefer > <family > Noto Sans</family > <family > Noto Color Emoji</family > <family > Noto Sans CJK SC</family > <family > Noto Sans CJK TC</family > <family > Noto Sans CJK JP</family > </prefer > </alias > <alias > <family > monospace</family > <prefer > <family > Noto Sans Mono</family > <family > Noto Color Emoji</family > <family > Noto Sans Mono CJK SC</family > <family > Noto Sans Mono CJK TC</family > <family > Noto Sans Mono CJK JP</family > </prefer > </alias > <match target ="font" > <edit mode ="assign" name ="antialias" > <bool > true</bool > </edit > <edit mode ="assign" name ="autohint" > <bool > true</bool > </edit > <edit mode ="assign" name ="dpi" > <double > 96</double > </edit > <edit mode ="assign" name ="hinting" > <bool > true</bool > </edit > <edit mode ="assign" name ="hintstyle" > <const > hintslight</const > </edit > <edit mode ="assign" name ="lcdfilter" > <const > lcdlight</const > </edit > <edit mode ="assign" name ="rgba" > <const > rgb</const > </edit > <edit mode ="assign" name ="size" > <int > 15</int > </edit > </match > <dir > ~/.fonts</dir > </fontconfig >
刷新字体缓存:
可能需要重启生效,但是先不重启。
安装常用软件 谜之 CPU 软件包,不要全装:
1 2 sudo pacman -S amd-ucode sudo pacman -S intel-ucode
man,浏览器,输入法,vscode,openssh,firacode,flameshot:
1 yay -S man-db man-pages google-chrome-stable fcitx5-im fcitx5-qt fcitx5-gtk fcitx5-chinese-addons fcitx5-pinyin-zhwiki visual-studio-code-bin openssh ttf-fira-code nerd-fonts-fira-code flameshot
在 System Settings 添加 Pinyin 输入。修改切换输入法的快捷键。
如果需要开启启动 sshd:systemctl enable --now sshd
网络自由,Fuck Timeout:
1 2 3 4 5 curl -Ls https://mirrors.v2raya.org/go.sh | sudo bash sudo systemctl disable v2ray --now yay -S v2raya-bin sudo systemctl start v2raya.service sudo systemctl enable v2raya.service
进浏览器管理 127.0.0.1:2017
。
还原 zsh 参考 Codesire-Deng/rc
1 2 3 4 yay -S zsh chsh -s $(which zsh) sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh) " yay -S zsh-syntax-highlighting-git
开发环境 C++ 相关 1 yay -S linux-headers cmake clang mimalloc boost cloc
perf 相关 1 2 3 4 yay -S perf cd ~/Downloads && git clone https://github.com/brendangregg/FlameGraph.gitsudo ln -s ~/Downloads/FlameGraph/stackcollapse-perf.pl /usr/bin/stackcollapse-perf.pl sudo ln -s ~/Downloads/FlameGraph/flamegraph.pl /usr/bin/flamegraph.pl
Node 相关 1 2 3 4 5 6 curl -L https://raw.githubusercontent.com/tj/n/master/bin/n -o n sudo bash n lts sudo npm install -g n rm nsudo npm install -g cnpm --registry=https://registry.npmmirror.com sudo npm install -g hexo-cli
编译 Clang 套件
若已有 yay clang-git
则可忽略此步。但是 clang-git
的质量堪忧。
参考 Clang Docs
1 2 3 4 5 6 7 git clone --depth=1 https://github.com/llvm/llvm-project.git cd llvm-projectcmake -B build -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;compiler-rt" -DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles" ./llvm cmake --build build -j 14 cmake --install build which clang-formatclang-format --version
可在 llvm-project/llvm/CMakeLists.txt 中搜索 LLVM_ALL_PROJECTS
查看所有项目。
生成 SSH key 参考 Github Docs
1 2 3 ssh-keygen -t ed25519 -C "oi_dzf@qq.com" eval "$(ssh-agent -s) " ssh-add ~/.ssh/id_ed25519
将公钥添加到 Github SSH keys 。
systemd-boot 追加 Windows
找到 Windows EFI 分区:
lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT
挂载这个分区:
sudo mkdir /mnt/win-efi
sudo mount /dev/sdb1xxx /mnt/win-efi
拷贝 Windows EFI 到当前硬盘的 EFI(/boot/EFI
在不同系统下可能不同,例如可能是/boot/efi/EFI
)
sudo cp -r /mnt/win-efi/EFI/Microsoft /boot/EFI
修改 bootloader 的配置,例如倒计时
重启即可。在选择界面按 d
即可指定默认项。
开机挂载硬盘
确认设备文件名
找到 UUID 和文件系统类型
条目追加至 /etc/fstab
例如:UUID=3A848F25848EE32D /run/media/codesire/3A848F25848EE32D ntfs defaults 0 0
附:Windows 改为 UTC 时间 新建UTC.reg
,内容如下:
1 2 3 4 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation] "RealTimeIsUniversal"=dword:00000001
用管理员运行之即可。
结语 珍爱生命,珍惜时间。