SEN YUE IS A LIE

Linux 图形使用踩坑指北

这里是一些简单的 Linux DE 问题的解决方法。

最开始写的时候用的是 Manjaro Gnome,本想着记录安装的过程,后来踩了不少的坑,便把解决方法写了进去。 到现在,它也不只是用于 Manjaro 了, 于是就把标题改成了Linux 图形使用踩坑指北,也许能解决一些困难吧。

基础

安装

这里的内容等待完善!

在 Manjaro 官网下载 Manjaro。 注意在安装系统前需要进行 PGP 校验,以确保镜像未被修改。

安装前配置

为确保系统安装使用正常,需要在 BIOS 里关闭Secure Boot,如果使用 Windows 系统,则还要在 Windows 里关闭快速启动,否则可能会导致网卡无法驱动,或无法正确挂载 ntfs 的问题。

启动到 Live CD

你可以使用 Ventoy 来从 iso 文件启动,或者用 Etcher 或者 Rufus 写入到 U 盘。 *注意备份 U 盘数据!

从 Live CD 安装

启动菜单里选择 U 盘启动,然后你就会看到启动菜单。

正常来说直接按Enter键进入 LiveCD 系统。

打开 Install Manjaro 程序,可以设置安装程序和安装后系统的语言。

接下来就一直点击下一步按钮,直到分区选项。

选择手动分区,来自定系统分区。

在我的机器上我分了这几个分区,就像这样:

分区 大小 文件系统 挂载点 标记
boot 分区 大于 500 MB fat32 /boot bios-grub
交换分区 8192 MB linuxswap 无 swap
根目录 102400 MB btrfs / 无
家目录 剩下的全部 ext4 /home 无

对于根目录,推荐使用 btrfs 文件系统是因为可以方便地备份,防止滚炸系统。

如果有需要同时对家目录拍摄快照,那么也可以不分出家目录。

配置完成后,一直点击下一步,直到系统安装完成。 安装完成后便可点击现在重启按钮,来离开 LiveCD。

至此,Manjaro 就安装完成。

配置

更换软件源

这里的内容等待完善!

重启后进入系统,连接网络,然后更换软件源。 启动终端,输入

sudo pacman-mirrors -i -c China -m rank

在弹出的窗口选择最快的源,只需要选择一个。

对于 archlinuxcn 源,那是专为 arch 的,不建议在 Manjaro 上使用,否则可能会出现依赖错误。

然后更新系统,在终端中输入命令

sudo pacman -Syyu

或者

yay

Manjaro Linux 已经安装好了 aur 工具,所以不需要再进行配置了。

把用户目录改成英文

默认的用户文件夹下的中文目录,就是这样:

.
├── 桌面
├── 文档
├── 下载

...

在使用时要频繁切换输入法,造成不便。 所以我们用下面的命令来切换到英文:

export LANG=en_US
xdg-user-dirs-gtk-update
export LANG=zh_CN

如果提示未找到命令,可以这样来安装:

sudo pacman -S xdg-user-dirs-gtk

在弹出的窗口点击右边的转换按钮来切换到英文,再次切换到中文后勾选不要再提醒,就把家目录下的文件夹改变成英文了。

软件包管理器

Arch 系发行版使用 pacman 来管理软件包。 但因为其软件包不够多,所以就有了 AUR。 AUR 全称 archlinux user repository,这给 arch 系发行版带来了海量的包。

yay 为安装 aur 包的工具。

在 Manjaro 自带的软件商店 Pamac 中也可以启用 aur 支持。

以下是一些 pacman 和 yay 的命令:

# yay的用法与pacman相同
pacman -S package_name        # 安装软件
pacman -S extra/package_name  # 安装不同仓库中的版本
pacman -Syu                   # 升级整个系统,y 是更新数据库,yy 是强制更新,u 是升级软件
pacman -Ss string             # 在包数据库中查询软件
pacman -Si package_name       # 显示软件的详细信息
pacman -Sc                    # 清除软件缓存,即 /var/cache/pacman/pkg 目录下的文件
pacman -R package_name        # 删除单个软件
pacman -Rs package_name       # 删除指定软件及其没有被其他已安装软件使用的依赖关系
pacman -Qs string             # 查询已安装的软件包
pacman -Qi package_name       # 查询本地安装包的详细信息
pacman -Ql package_name       # 获取已安装软件所包含的文件的列表
pacman -U package.tar.zx      # 从本地文件安装
pactree package_name          # 显示软件的依赖树

yay -c  # 卸载所有无用的依赖,类似 apt autoremove,谨慎使用!

显卡驱动

使用自带工具管理

这里的内容等待完善!

参考自知乎和知乎

一般来说,使用 Manjaro 的驱动管理程序,或是在终端输入:

sudo mhwd -r pci video-linux
sudo mhwd -a pci nonfree 0300
其他情况

以上的内容应该能解决问题了,但如果有其他情况,可以在这里看看。

备份

系统备份

Manjaro 系统自带 timeshift 备份软件。

如果根目录使用 btrfs ,那么在执行系统更新时,timeshift 会自动创建备份。

在配置 timeshift 时,如果安装用了 btrfs 分区,那么快照类型就可以选择 btrfs 快照。 如果安装时未分出/home 分区,在用户一栏可以选中在备份中包含@home子卷,这样在备份时就能备份用户分区。

如果系统炸了,那么就可以启动到 LiveCD 系统里,打开 timeshift,选择备份所在的分区,选择好你要恢复的备份,点击恢复按钮,一瞬间你的系统就能恢复好。

在恢复系统的同时,目前使用的系统也会得到一个备份。

文件备份

建议安装deja-dup软件备份。

输入法

Linux 下的输入法分为输入法框架和输入法引擎。

中文输入法的框架有 ibus 和 fcitx ,但在这里还是推荐 fcitx5。

这里简单介绍输入简体中文的配置。

配置 Fcitx5

终端输入以下命令来安装:

sudo pacman -S fcitx5 fcitx5-configtool fcitx5-qt fcitx5-gtk  fcitx5-material-color

为了正常使用,需要配置环境变量。 ArchWiki 的教程有改动,且简中翻译与英文配置也有所不同,经过测试以下的方法仍能正常使用,所以就照着下面的做吧。

用文本编辑器创建并打开这个文件 ~/.pam_environment,输入以下内容:

GTK_IM_MODULE DEFAULT=fcitx
QT_IM_MODULE  DEFAULT=fcitx
XMODIFIERS    DEFAULT=\@im=fcitx
SDL_IM_MODULE DEFAULT=fcitx

重新登录使环境变量生效。

对于配置 fcitx5 的按键或切换主题,打开 fcitx5 设置 以具体更改。

若更换 fcitx5 的主题,打开 fcitx5设置> 配置附加组件 >经典用户界面>主题以更改。

若更换 fcitx5 的快捷键,打开 fcitx5设置> 配置全局选项 以更改。

对于 KDE Plasma 用户来说,应该可以在 系统设置>区域设置>输入法里找到 fcitx5 的设置选项。

使用 Fcitx5 引擎进行输入

以上安装的只是其框架,需要正常使用还需要安装引擎。 fcitx5-chinese-addons 是其支持的引擎之一,且配置较为方便,支持云拼音。

终端输入以下命令来安装:

sudo pacman -S fcitx5-chinese-addons

随后在 Fcitx5 配置里添加即可。

使用 Rime 进行输入

或者也可以使用 rime 来输入。

RIME 中州韵输入法引擎(英语: Rime Input Method Engine,又称 Rime 输入法)是由佛振编写的开源中文输入法,目前项目网站、源代码均托管在 GitHub。 基于同一个核心架构,该输入法分为三个官方发行版: Linux 发行版中州韵(ibus-rime)、Windows 发行版小狼毫(Weasel)、macOS 发行版鼠须管(Squirrel)。 另有数个第三方发行版: Linux 发行版 fcitx-rime、Windows 发行版 PRIME、macOS 发行版 XIME、Android 发行版同文输入法(Trime)、iOS 发行版 iRime。

这里的教程比较简陋,如果有需要可以到 ArchWiki 查看详细教程。

终端输入以下命令来安装:

sudo pacman -S fcitx5-rime
Rime 配置

Rime 的配置很复杂,这里介绍下自用的 rime 配置:

下载 这份配置 并把所有的文件放到~/.local/share/fcitx5/rime目录下,并对 fcitx5 重新启动。

如果一切正常,就可以在百分之九九的应用里进行中文输入了。

进阶

软件及配置

这里是些常用软件

# 直接复制命令到终端运行即可
# 在命令行看系统信息 neofetch
yay -S neofetch
# 谷歌浏览器 Google Chrome
yay -S google-chrome
# Edge浏览器
yay -S microsoft-edge-dev-bin
# 深度截图 截图工具
sudo pacman -S deepin-screenshot
# WPS Office Office文档
yay -S  wps-office wps-office-mui-zh-cn wps-office-fonts ttf-wps-fonts
# gimp 开源图片编辑工具
sudo pacman -S gimp
# obs 直播录屏工具
yay -S obs-studio
# motrix 下载工具
yay -S motrix-appimage
# vlc 视频播放器
yay -S vlc
# 网易云音乐
sudo pacman -S netease-cloud-music
# remmina 远程桌面,需要安装拓展
sudo pacman -S remmina
# solaar 罗技控制
yay -S solaar
# geary 邮件
yay -S geary
# typora 优雅的 markdown 编辑器
## 免费版本
yay -S typora-free-cn
## 付费版本
yay -S typora

ZSH

最新的 manjaro 版本默认使用 zsh 和 oh-my-zsh。

Java

在 aur 里安装zulu-jdk-fx-bin,这是一个 openjdk 的发行版,带着 javafx。

系统环境变量也已经配置好,终端输入java -version查看详细信息。

VSCode

这里简单介绍,完整可看 ArchWiki.

微软的最完整的 VSCode 是专有软件,也只有这个版本支持同步。 使用 yay 安装visual-studio-code-bin。

在 Arch 上还有两个开源版本,分别为 code 和 vscodium,它们的插件库并不完全相通。 如果需要最完整的体验,还是需要安装专有版本。

使用同步需要使用 Gnome 的钥匙串,对于 KDE Plasma 用户来说,可能需要安装gnome-keyring来解决。

对于gnome-keyring的一些问题,文末有解决方法。

用 Wine 曲线救国

这里的内容等待完善!

找到一个叫 Bottles 的应用,可以代替一部分的 Crossover 的功能。

字体

在系统里,有些字体需要安装,有的适用于终端,有的适用于系统界面,这里扔几个链接: 思源黑体,Hack,DejaVu Fonts,微软雅黑,Nerd-fonts。

当然,还有些字体直接从 win 下复制就好,从 win 的系统文件夹下的字体文件夹/Windows/Fonts复制.ttf和.ttc字体到/usr/share/fonts/Windows文件夹,就添加了 win 下的字体。

对于 Emoji 来说,建议安装 noto-fonts-emoji-apple软件包。

魔法上网

这里的内容等待完善!

给 Gnome 的一些教程

界面缩放

对于 Gnome 来说,缩放议设置仅缩放字体。

在优化程序里的字体一栏,设置缩放比例即可。

而在其他应用中,就像 firefox 之类的网页浏览器,可以在该程式设置里自行调整缩放。

系统字体与 GTK 应用字体

系统字体与 GTK 应用的字体在优化程式里配置。

QT 程式字体

使用 qt5ct 进行调整。

Gnome Terminal

*Gnome 42 好像更换了终端应用,这里的教程可能无法适用。

系统默认的终端在某个版本之后就没法设置透明度了,所以我们要使用另一个版本。

安装gnome-terminal-transparency来替换掉默认的gnome-terminal,注意二者不能共存,在安装gnome-terminal-transparency之前需要将gnome-terminal卸载。

Manjaro Gnome 自带 oh-my-zsh 和 p10k 主题,但是配置 p10k 主题可能会有一些问题。

当在终端里输入p10k configure来配置时,可能会遇到 [ERROR] p10k configure: cannot create /usr/share/zsh/p10k.zsh because /usr/share/zsh is readonly 的问题,在 manjaro forum 上有解决方法:

用你喜爱的文本编辑器打开/usr/share/zsh/manjaro-zsh-prompt文件,可能需要管理员权限。

找到第 15 行的[[ ! -f /usr/share/zsh/p10k.zsh ]] || source /usr/share/zsh/p10k.zsh,把这行注释掉。

保存后重新打开终端,应该就能进入 p10k 的配置界面。 如果没有进入配置界面,尝试输入p10k configure。

系统托盘

对于扩展应用,需要注意的是,开启系统托盘是AppIndicator and KSatusNotifierItem Support扩展的功能,如果在托盘中找不到 fcitx5 的菜单,可以把这个扩展打开。

系统 GTK 主题

在完全使用主题之前,需要将扩展里的User Themes打开。

如果你喜欢material design的话,推荐在包管理器里下载安装materia-gtk-theme主题,并在优化里将shell和应用程序选成Materia,随后重新登录系统。

QT 程式的主题

打开 qt5ct,简单配置下即可。

给 KDE 的教程

推荐这个教程

这里的所有KDE 均指KDE Plasma。

缩放

KDE 的桌面有的地方缩放不正常,这时可以在 /etc/environment 里添加:

PLASMA_USE_QT_SCALING=2

其中2为系统缩放倍数。 (如果非整数会工作吗? 我不知道。)

对于非整数倍缩放来说,GTK 里的部分控件可能过小,那么便可以在环境变量中添加如下内容以解决:

export GDK_SCALE=2
export GDK_DPI_SCALE=0.5

主题

KDE 中的微风主题观感还不错,如果需要修改也可以很方便地在设置中获取。

对于 GTK 应用来说,推荐安装 materia-gtk-theme ,并在系统设置中的GNOME/GTK 应用程序风格中修改。

默认的微风图标看上去可能不大好,这里推荐在包管理器中安装papirus-icon-theme并选用。

Wayland or X11

这里的内容等待翻新!

游戏

Minecraft

在 manjaro 上玩 mc 的最佳方式是使用 multimc 启动器

在 pacman 里安装multimc-native以确保拥有较新的特性。

根据之前的 java 安装,应该可以在启动器里识别到 java 版本。

若按照之前的独显配置,既想启动 mc 使用独显,需要在终端里输入prime-run multimc来使用独显启动 multimc 启动使用独显启动的 mc。

若想直接在桌面图标启动使用独显驱动的游戏,便可以在/usr/share/applications里修改multimc.desktop文件,把Exec=multimc改成Exec=prime-run multimc,注销系统后便可以在桌面图标启动独显版游戏。

Steam

使用 steam 版本的 wine 来游玩仅支持 win 下的游戏。 具体详细配置看这支视频。

虚拟机

在 linux 下的虚拟机推荐 vmware,用 pacman 下载安装vmware-workstation,貌似只有英文。

第一次启动时会要求输入密钥,自己查找输入。

安装完成后一般是启动不了的,会报错could not open /dev/vmmon:????????。 看到有人说在 bios 里关闭安全启动,但不起效果,最终是安装了linux513-headers解决了问题。 需要注意'513’为内核版本号,安装时要与系统内核版本相对应。

相关问题

KDE 下 GTK4 程序缩放问题

某些时候 GTK4 应用的缩放会不正确(本应缩放 2 倍却错误缩放成 4 倍),解决方案转自KDE 社区。

将/home/sen/.config/gtk-4.0/settings.ini里的字体大小( gtk-font-name=Noto Sans, 10 中的数字)减半即可。

KDE 下动画速度无法调节

删除 ~/.config/kwinrc即可,但会丢失某些桌面特效设置。

某些 71 键键盘的 Fn 键配置

转自叶寻的博客

某些 71 键键盘在 KDE 下的组合 Fn 键只是媒体键,而无法正常使用其功能。 临时解决方法:

echo 2 | sudo tee /sys/module/hid_apple/parameters/fnmode

但重启后会失效。

要想其永久生效,则需要终端输入:

echo options hid_apple fnmode=2 | sudo tee -a /etc/modprobe.d/hid_apple.conf
sudo mkinitcpio --allpresets

KDE 下的 Gnome Keyring 自动解锁

GNOME Keyring (密钥环) 是 GNOME 用来存储密码,密钥,证书,并提供给应用程序使用的组件集合。 它让密码存储安全且便捷。 GNOME Keyring (密钥环) 和用户登录集成,因此在用户登录会话之后,密码存储会自动解锁,无需再为应用程序输入密码。 GNOME Keyring (密钥环) 基于 PKCS#11 标准,是应用程序在智能卡和安全存储中管理证书和密钥的标准方法。

在 GTK 应用读取密钥环时,会提示需要输入密码,根据 OpenSUSEWIKI 的介绍,编辑 /etc/pam.d/sddm 并添加 pam_gnome_keyring.so:

auth     optional       pam_gnome_keyring.so
session  optional       pam_gnome_keyring.so auto_start

完成后应该是这样的:

#%PAM-1.0
auth     include        common-auth
auth     optional       pam_gnomexport GDK_SCALE=2
export GDK_DPI_SCALE=0.5e_keyring.so
account  include        common-account
password include        common-password
session  required       pam_loginuid.so
session  include        common-session
session  optional       pam_gnome_keyring.so auto_start

然后就可以了。

*这篇文章中代码块的高亮无法被正常显示,若有需要请到源 Wiki 查看!

在 Dolphin 里挂载磁盘需要输入密码

解决方法转自元素碎语。

在 KDE 下用 Dolphin 挂载本地分区回要求输入密码,查看自己所在的用户组已经处在 storage 下。 解决方法就是再输入

gpasswd -a 你的用户名 storage

即可。

最后

推荐很棒的这两篇 ArchLinux 入门教程: