跳过正文
Gentoo Linux 安装指南 (桌面配置篇)
  1. Posts/

Gentoo Linux 安装指南 (桌面配置篇)

·3805 字·8 分钟
作者
Zakk
Gentoo 中文社区现网站改版与内容维护
目录

文章特别说明

本文是 Gentoo Linux 安装指南 系列的第二部分:桌面配置

系列导航

  1. 基础安装:从零开始安装 Gentoo 基础系统
  2. 桌面配置(本文):显卡驱动、桌面环境、输入法等
  3. 进阶优化:make.conf 优化、LTO、系统维护

上一步基础安装

12. 重启后的配置
#

恭喜你!你已经完成了 Gentoo 的基础安装并成功进入了新系统(TTY 界面)。

接下来的章节是按需配置。你可以根据自己的需求(服务器、桌面办公、游戏等)选择性地进行配置和安装。

重要提示:检查 Profile 与更新系统 在开始配置之前,请再次确认 Profile 设置正确,并确保系统处于最新状态:

eselect profile list          # 列出所有可用 Profile
eselect profile set <编号>    # 设置选定的 Profile (例如 desktop/plasma/systemd)
emerge -avuDN @world          # 更新系统

现在我们来配置图形界面和多媒体功能。

12.0 网络检查 [必选]
#

登录后,请确保网络连接正常。

  • 有线网络:通常会自动连接。
  • 无线网络:使用 nmtui (NetworkManager) 或 iwctl (iwd) 连接 Wi-Fi。

12.1 全局配置 (make.conf) [必选]
#

可参考make.conf

/etc/portage/make.conf 是 Gentoo 的全局配置文件。在此阶段,我们只需配置显卡、输入设备和本地化选项。详细的编译优化配置将在 Section 13.0 中介绍。

vim /etc/portage/make.conf

添加或修改以下配置:

# 显卡驱动 (根据硬件选择)
VIDEO_CARDS="nvidia"        # NVIDIA
# VIDEO_CARDS="amdgpu radeonsi" # AMD
# VIDEO_CARDS="intel i965 iris" # Intel

# 输入设备
INPUT_DEVICES="libinput"

# 本地化设置
L10N="en zh zh-CN zh-TW"
LINGUAS="en zh_CN zh_TW"

# 桌面环境支持
USE="${USE} wayland X pipewire pulseaudio alsa"

12.2 应用配置与更新系统 [必选]
#

应用新的 USE flags:

emerge --ask --newuse --deep @world

12.3 显示卡驱动 [必选]
#

可参考NVIDIA/nvidia-drivers

  • NVIDIA 专有驱动emerge --ask x11-drivers/nvidia-drivers
  • AMD:设置 VIDEO_CARDS="amdgpu radeonsi"
  • Intel:设置 VIDEO_CARDS="intel i965 iris"

配置 VAAPI 视频加速

可参考VAAPInvidia-vaapi-driver

  1. 全局启用 VAAPI: 在 /etc/portage/make.confUSE 中添加 vaapi

    # 重新编译受影响的包
    emerge --ask --changed-use --deep @world
    
  2. 安装驱动与工具

    emerge --ask media-video/libva-utils # 安装 vainfo 用于验证
    

    NVIDIA 用户特别步骤

    emerge --ask media-libs/nvidia-vaapi-driver
    

    注意nvidia-vaapi-driver 在 Wayland 下可能存在不稳定性(如 CUDA/OpenGL 互操作问题)。 详情参考:NVIDIA ForumsRedditGitHub Issue。 NVIDIA 用户还需要在内核参数中启用 DRM KMS: 编辑 /etc/default/grub,在 GRUB_CMDLINE_LINUX_DEFAULT 中添加 nvidia_drm.modeset=1

    grub-mkconfig -o /boot/grub/grub.cfg
    

    Intel/AMD 用户: 通常安装好显卡驱动后即可直接支持。

  3. 验证: 运行 vainfo 查看输出,若无错误且显示支持的 Profile 即为成功。

关于 Firefox 与硬件加速

  • 系统中的 ffmpeg 主要提供 H.264, AAC, HEVC, MP3 等格式的软件解码支持。
  • Firefox (特别是 firefox-bin) 自带了 FFmpeg 库,不会自动利用系统 FFmpeg 提供的 NVDEC/NVENC 进行硬件解码。
  • 请访问 about:support 页面查看 Firefox 的实际硬件加速状态。
NVIDIA Chromium 硬件加速配置 (X11/XWayland)(无需 VAAPI,点击展开)

提示:以下配置适用于 Chromium、Chrome、Edge、Electron 应用(如 VSCode)。

1. 环境变量/etc/environment~/.bashrc 中添加:

export __GLX_VENDOR_LIBRARY_NAME=nvidia
export __VK_LAYER_NV_optimus=NVIDIA_only
export GBM_BACKEND=nvidia-drm

2. 启动参数

请在启动命令或 .desktop 文件中添加以下参数:

--enable-features=VulkanVideoDecoder,Vulkan,VulkanFromANGLE,DefaultANGLEVulkan \
--ozone-platform=x11 \
--use-vulkan=native \
--enable-zero-copy \
--enable-gpu-rasterization \
--ignore-gpu-blocklist \
--enable-native-gpu-memory-buffers

.desktop 文件示例

[Desktop Entry]
Version=1.0
Type=Application
Name=Google Chrome
GenericName=Web Browser
Comment=Access the Internet with Vulkan Video Hardware Acceleration
Exec=/usr/bin/google-chrome-stable %U --enable-features=VulkanVideoDecoder,Vulkan,VulkanFromANGLE,DefaultANGLEVulkan --ozone-platform=x11 --use-vulkan=native --enable-zero-copy --enable-gpu-rasterization --ignore-gpu-blocklist --enable-native-gpu-memory-buffers
Icon=google-chrome
Terminal=false
Categories=Network;WebBrowser;
StartupNotify=true
StartupWMClass=google-chrome
Actions=new-window;new-private-window;
Keywords=web;browser;internet;
X-GNOME-UsesNotifications=true

[Desktop Action new-window]
Name=New Window
Exec=/usr/bin/google-chrome-stable --enable-features=VulkanVideoDecoder,Vulkan,VulkanFromANGLE,DefaultANGLEVulkan --ozone-platform=x11 --use-vulkan=native --enable-zero-copy --enable-gpu-rasterization --ignore-gpu-blocklist --enable-native-gpu-memory-buffers

[Desktop Action new-private-window]
Name=New Incognito Window
Exec=/usr/bin/google-chrome-stable --incognito --enable-features=VulkanVideoDecoder,Vulkan,VulkanFromANGLE,DefaultANGLEVulkan --ozone-platform=x11 --use-vulkan=native --enable-zero-copy --enable-gpu-rasterization --ignore-gpu-blocklist --enable-native-gpu-memory-buffers
MimeType=x-scheme-handler/unknown;x-scheme-handler/about;text/html;text/xml;application/xhtml+xml;application/xhtml_xml;image/webp;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;

验证:访问 chrome://gpu/,查看 Vulkan 是否显示为 Enabled

12.4 音频与蓝牙 [可选]
#

可参考PipeWireBluetooth

# 安装 PipeWire 音频系统与 WirePlumber 会话管理器
emerge --ask media-video/pipewire media-video/wireplumber


# 安装蓝牙协议栈、工具与管理器 (Blueman 为 GUI 管理器)
emerge --ask net-wireless/bluez net-wireless/bluez-tools net-wireless/blueman

启动服务 (OpenRC)

rc-update add bluetooth default 
/etc/init.d/bluetooth start

启动服务 (Systemd)

# 设定蓝牙服务 (系统级):
sudo systemctl enable --now bluetooth
# 启用 PipeWire 核心与 PulseAudio 兼容层
systemctl --user enable --now pipewire pipewire-pulse
# 启用 WirePlumber 会话管理器
systemctl --user enable --now wireplumber

12.5 桌面环境与显示管理器 [可选]
#

KDE Plasma(Wayland)
#

可参考KDE

echo "kde-plasma/plasma-meta wayland" >> /etc/portage/package.use/plasma
emerge --ask kde-plasma/plasma-meta # 安装 Plasma 桌面
emerge --ask kde-apps/kde-apps-meta # (可选) 安装全套 KDE 应用
emerge --ask x11-misc/sddm # 安装 SDDM 显示管理器

# OpenRC 配置 (SDDM 没有独立的 init 脚本)
# 参考:https://wiki.gentoo.org/wiki/Display_manager#OpenRC
emerge --ask gui-libs/display-manager-init # 安装通用显示管理器 init 脚本

# 编辑 /etc/conf.d/display-manager
# 设置 DISPLAYMANAGER="sddm" 和 CHECKVT=7
sed -i 's/^DISPLAYMANAGER=.*/DISPLAYMANAGER="sddm"/' /etc/conf.d/display-manager
sed -i 's/^CHECKVT=.*/CHECKVT=7/' /etc/conf.d/display-manager

rc-update add display-manager default
rc-service display-manager start  # 立即启动 (可选)

# Systemd 配置
systemctl enable sddm
systemctl start sddm  # 立即启动 (可选)

GNOME
#

可参考GNOME

emerge --ask gnome-base/gnome # 安装 GNOME 核心组件
emerge --ask gnome-base/gdm # 安装 GDM 显示管理器
rc-update add gdm default # OpenRC
systemctl enable gdm # 启用 GDM 显示管理器 (systemd)

Hyprland (Wayland 动态平铺窗口管理器)
#

可参考Hyprland

emerge --ask gui-wm/hyprland

提示:Hyprland 需要较新的显卡驱动支持,建议阅读 Wiki 进行详细配置。

其他选项
#

如果你需要轻量级桌面,可以考虑 Xfce 或 LXQt:

  • Xfce: emerge --ask xfce-base/xfce4-meta (Wiki)
  • LXQt: emerge --ask lxqt-base/lxqt-meta (Wiki)
  • Budgie: emerge --ask gnome-extra/budgie-desktop (Wiki)

更多选择:如需查看其他桌面环境,请参考 Desktop environment

12.6 本地化与字体 [可选]
#

可参考Localization/GuideFonts

为了正常显示中文,我们需要安装中文字体。

# 安装 Noto CJK (思源) 字体
emerge --ask media-fonts/noto-cjk

# 安装 Emoji 字体
emerge --ask media-fonts/noto-emoji

# (可选) 文泉驿微米黑
emerge --ask media-fonts/wqy-microhei

刷新字体缓存:

fc-cache -fv

12.7 输入法配置 (Fcitx5 & Rime) [可选]
#

可参考Fcitx5

Rime 是一款强大的输入法引擎,支持朙月拼音 (简体/繁体)、注音、地球拼音等多种输入方案。

为了在 Wayland 下获得最佳体验,我们需要配置环境变量。

方案 A:Fcitx5 + Rime (KDE/通用推荐)

适合 KDE Plasma、Hyprland 等环境。

  1. 安装

    emerge --ask app-i18n/fcitx app-i18n/fcitx-rime app-i18n/fcitx-configtool
    
  2. 配置环境变量 (Wayland)

    可参考Using Fcitx 5 on Wayland

    编辑 /etc/environment

    vim /etc/environment
    

    写入:

    # 强制 XWayland 程序使用 Fcitx5
    XMODIFIERS=@im=fcitx
    
    # (可选) 针对非 KDE 环境或特定程序
    GTK_IM_MODULE=fcitx
    QT_IM_MODULE=fcitx
    

    KDE 用户提示:在 KDE Plasma 5.27+ 中,建议直接在“系统设置” -> “键盘” -> “虚拟键盘”中选择 Fcitx 5,而不需要手动设置上述环境变量(除了 XMODIFIERS)。

  3. 启动

    • KDE/GNOME 通常会自动启动。
    • Hyprland/Sway 需要在配置文件中添加 exec-once = fcitx5 -d

方案 B:IBus + Rime (GNOME 推荐)

可参考IBus

GNOME 对 IBus 集成最好,建议优先使用。

  1. 安装

    emerge --ask app-i18n/ibus-rime
    
  2. 启用 进入 GNOME 设置 -> 键盘 -> 添加输入源 -> 选择 “Chinese (Rime)"。

Rime 配置提示

  • 切换方案:按 F4 键。
  • 支持方案:朙月拼音 (简体/繁体)、注音、地球拼音等。
  • 用户配置目录:~/.local/share/fcitx5/rime (Fcitx5) 或 ~/.config/ibus/rime (IBus)。

12.8 安全启动 (Secure Boot) [可选]
#

可参考Secure Boot

如果你需要开启 Secure Boot,Gentoo 推荐使用 sbctl 来简化配置。

  1. 安装 sbctl
    emerge --ask app-crypt/sbctl
    
  2. 进入 BIOS 设置:重启电脑进入 BIOS,将 Secure Boot 模式设为 “Setup Mode” (清除原有密钥) 并开启 Secure Boot。
  3. 创建并注册密钥: 进入系统后执行:
    sbctl create-keys
    sbctl enroll-keys -m # -m 包含 Microsoft 密钥 (推荐,否则可能无法引导 Windows 或加载某些固件)
    
  4. 签名内核与引导程序
    # 自动查找并签名所有已知文件 (包括内核、systemd-boot 等)
    sbctl sign-all
    
    # 或者手动签名 (例如 GRUB)
    # sbctl sign -s /efi/EFI/Gentoo/grubx64.efi
    
  5. 验证
    sbctl verify
    

12.9 Portage Git Sync & Overlay [可选]
#

为什么需要这一步? 默认的 rsync 同步较慢。使用 Git 同步不仅速度更快,而且方便管理。

1. 安装 Git

emerge --ask dev-vcs/git

2. 配置 Git 同步

mkdir -p /etc/portage/repos.conf
cp /usr/share/portage/config/repos.conf /etc/portage/repos.conf/gentoo.conf

编辑 /etc/portage/repos.conf/gentoo.conf

[DEFAULT]
main-repo = gentoo

[gentoo]
sync-type = git
sync-uri = https://mirrors.bfsu.edu.cn/git/gentoo-portage.git
sync-depth = 1          # 只拉最新 commit,减小体积

3. 添加 Gentoo-zh Overlay/etc/portage/repos.conf/ 目录下创建 gentoo-zh.conf 文件,内容如下:

[gentoo-zh]
location = /var/db/repos/gentoo-zh
sync-type = git
sync-uri = https://github.com/gentoo-zh/gentoo-zh.git
auto-sync = yes

重要提示(更新时间:2025-10-07)

根据 Gentoo 官方公告,Gentoo 已停止为第三方仓库提供缓存镜像支持。从 2025-10-30 起,所有第三方仓库(包括 gentoo-zh)的镜像配置将从官方仓库列表中移除。

这意味着什么?

  • eselect repositorylayman 等工具仍可正常使用。
  • 官方将不再提供缓存镜像,改为直接从上游源(GitHub)同步。
  • 官方仓库(::gentoo::guru::kde::science)不受影响,仍可使用镜像。

如果您之前已新增 gentoo-zh overlay,请更新同步 URI

# 查看已安装的仓库
eselect repository list -i

# 移除旧配置
eselect repository remove gentoo-zh

# 重新启用(将自动使用正确的上游源)
eselect repository enable gentoo-zh

4. 执行同步

emerge --sync

5. 软件安装演示

例如安装 flclash-bin

emerge -pv flclash-bin

输出示例:

These are the packages that would be merged, in order:

Calculating dependencies  
    ... done!
Dependency resolution took 0.45 s (backtrack: 0/20).

[ebuild  N     ] dev-libs/keybinder-0.3.2-r300:3::gentoo  USE="introspection" 371 KiB
[ebuild  N     ] x11-apps/xmessage-1.0.7::gentoo  126 KiB
[ebuild  N     ] net-proxy/flclash-bin-0.8.90::gentoo-zh  39,565 KiB

Total: 3 packages (3 new), Size of downloads: 40,061 KiB

确认无误后,执行安装:

emerge --ask flclash-bin

12.10 Flatpak 支持与软件中心 [可选]
#

可参考Flatpak

如果你需要使用 Flatpak 或希望在软件中心管理 Flatpak 应用:

  1. 安装 Flatpak

    emerge --ask sys-apps/flatpak
    
  2. 启用软件中心支持 为了让 GNOME Software 或 KDE Discover 支持 Flatpak,需要启用相应的 USE flag。

    GNOME 用户: 在 /etc/portage/package.use/gnome (或新建文件) 中添加:

    gnome-extra/gnome-software flatpak
    

    KDE 用户: 在 /etc/portage/package.use/kde (或新建文件) 中添加:

    kde-plasma/discover flatpak
    
  3. 更新软件中心

    # GNOME
    emerge --ask --newuse gnome-extra/gnome-software
    
    # KDE
    emerge --ask --newuse kde-plasma/discover
    

使用提示:Flatpak 非常适合安装专有软件 (如 QQ, WeChat)。它的沙盒隔离机制可以保证主系统的安全与整洁。

# 搜索应用
flatpak search qq
flatpak search wechat

# 安装 QQ 和 WeChat
flatpak install com.qq.QQ
flatpak install com.tencent.WeChat

12.11 系统维护 (SSD TRIM & 电源管理) [可选]
#

1. SSD TRIM (延长 SSD 寿命)

可参考SSD

定期执行 TRIM 可以保持 SSD 性能。

检查支持:运行 lsblk --discard。如果 DISC-GRAN 列非 0,则支持 TRIM。

  • Systemd 用户
    systemctl enable --now fstrim.timer
    
  • OpenRC 用户: 建议每周手动运行一次 fstrim -av,或配置 cron 任务。

2. 电源管理 (笔记本用户推荐)

可参考Power management/Guide

请在以下方案中二选一 (不要同时安装):

方案 A:TLP (推荐,极致省电) 自动优化电池寿命,适合大多数用户。

emerge --ask sys-power/tlp
# OpenRC
rc-update add tlp default
/etc/init.d/tlp start
# Systemd
systemctl enable --now tlp

配置提示:TLP 默认配置已足够优秀。如需微调,配置文件位于 /etc/tlp.conf。修改后需运行 tlp start 生效。

方案 B:power-profiles-daemon (桌面集成) 适合 GNOME/KDE 用户,可在系统菜单中直接切换"性能/平衡/省电"模式。

emerge --ask sys-power/power-profiles-daemon
# OpenRC
rc-update add power-profiles-daemon default
/etc/init.d/power-profiles-daemon start
# Systemd
systemctl enable --now power-profiles-daemon

3. Zram (内存压缩)

可参考Zram 推荐:Zram 可以创建压缩的内存交换分区,有效防止编译大型软件时内存不足 (OOM)。

OpenRC 用户

emerge --ask sys-block/zram-init
rc-update add zram-init default

配置位于 /etc/conf.d/zram-init

Systemd 用户: 推荐使用 zram-generator

emerge --ask sys-apps/zram-generator
# 创建默认配置 (自动使用 50% 内存作为 Swap)
echo '[zram0]' > /etc/systemd/zram-generator.conf
systemctl daemon-reload
systemctl start dev-zram0.swap

下一步进阶优化

相关文章

网站从 Jekyll 迁移至 Hugo

·1142 字·3 分钟
经过多年使用 Jekyll 作为静态站点生成器,Gentoo 中文社区网站现已成功迁移至 Hugo。本文介绍此次迁移的背景、原因和主要改进。