Set up Bumblebee for NVIDIA Optimus on Fedora

This post is obsolete. Please check the new manual at this post

If you don’t care to battery and want to use NVIDIA card fulltime, check this post.

Install Bumblebee and NVIDIA driver

Add RPMFusion repositories

$ sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Enable the copr chenxiaolong/bumblebee to get Bumblebee

$ sudo dnf copr enable chenxiaolong/bumblebee

Install packages

$ sudo dnf install akmod-nvidia acpi akmod-bbswitch bumblebee primus

Add your user to the bumblebee group

$ sudo gpasswd -a $USER bumblebee

Enable service bumblebeed on boot and disable nvidia-fallback

$ sudo systemctl enable bumblebeed
$ sudo systemctl mask nvidia-fallback

Reboot.

.
Check if NVIDIA is correctly loaded with Bumblebee

$ primusrun glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
...

Usage

Run from command

  • Add primusrun before the command.
    $ primusrun <command>
    
    # For example
    $ primusrun glxgears
    

Desktop entry

  • Open .desktop file of application you want to start with the discrete card. It is often put in /usr/share/applications or ~/.local/share/applications.
  • Find the line start with Exec= and add primusrun before its command.
    Ex:
    ...
    Exec=primusrun blender
    ...
    

Steam game

  • From the Library page, right click on game > Properties > SET LAUNCH OPTIONS…
  • Specify primusrun %command% for the command line and save it.

.
Reference: https://docs.fedoraproject.org/en-US/quick-docs/bumblebee/

See also

comments powered by Disqus