Manjaro Bumblebee 显卡驱动安装以及 X11 配置

前言

Manjaro 的 mhwd 命令提供了 Bumblebee 的集成驱动安装,不过在我的笔记本上 ( Nvidia 960m + Intel HD Graphics 530 ) 无法正常启动,且 Bumblebee 的集成驱动版本只到 430xx 。 所以不使用 Manjaro 提供的集成驱动,而是分开安装两个驱动。

准备

为了避免修改驱动重启后无法显示桌面,有以下方法可以尝试。

  • 如果有另外一台电脑,让本机的 ssh 开机自启。无法显示桌面时,用另外一台电脑连接修改配置文件。

  • 制作一个 live 启动盘,使用 manajaro-chroot 进入系统修改配置文件。

  • 开机后尝试使用 Ctrl + Alt + F2 进入另外一个没有使用图形界面的 tty

安装显卡驱动

# 列出可安装的驱动
mhwd -l

# 安装需要的驱动
mhwd -i pci <driver name>

intel

Intel 集显可用的驱动有

  • video-linux
  • video-modesetting
  • video-vesa

建议使用前两个。

nvidia

选用闭源驱动 video-nvidia-xxx

不用选择 hybrid 显卡驱动

安装 Bumblebee

sudo pacman -Syu
sudo pacman -S bumblebee mesa lib32-virtualgl lib32-nvidia-utils

将用户添加进 bumblebee 组

sudo usermod -aG bumblebee <username>

配置 X Window Server

Manjaro 一般会以最后一个安装的驱动程序为准,创建 X Window 的配置文件。
都用上 Bumblebee 了,肯定是想以集显启动 X Window 。特别是像我的笔记本一样,不支持独显直接输出到屏幕。
X11 的配置文件位置是 /etc/X11/ , Manjaro 自动生成的文件一般是 /etc/X11/mhwd.d 和 /etc/X11/xorg.conf.d/90-mhwd.conf 。 如果安装的 video-linux 驱动,可以直接将这些文件删掉(建议还是备份一下),X11将默认以 video-linux 驱动启动。
如果使用的 video-modesetting 驱动,可以将 90-mhwd.conf 文件中 Driver 配置修改为 modesetting 。 笔者未尝试 vesa 驱动,但根据 Arch wiki,Driver 修改为 vesa 。 重启

检查

如果使用的 Manjaro KDE 桌面版,可以在 System Information 中查看 X11 使用的驱动。 安装 mesa-demo 后,使用

optirun glxgears -info

检查独显驱动是否正常。

在需要使用独显启动应用时,使用

optirun <command>
# 和
primusrun <command>

(大多数 Steam 游戏只支持后者)

参考

  1. https://wiki.archlinux.org/index.php/Bumblebee
  2. https://wiki.archlinux.org/index.php/Xorg