1. Home
  2. Linux

How To Enable Nvidia Optimus Support On Linux

Nvidia Hybrid graphics are a notoriously sore subject for Linux users. Many Linux distributions don’t specifically outline how to enable support for Optimus. As a result, many laptop owners with both an Intel GPU and Nvidia GPU don’t have it enabled and don’t know the first thing about getting it working. As it turns out you can easily enable Nvidia Optimus support on Linux with a piece of software called Bumblebee.

Ubuntu

As far as enabling Nvidia Optimus support on Linux goes, Ubuntu users arguably have it the best. There’s no need to fiddle with third-party software sources, PPAs, downloadable Deb packages or anything of the sort. Instead, users just need to enable a proprietary Ubuntu software source (that Canonical maintains), install some packages, and restart your system.

The software sources that need to be enabled in order for Bumblebee to work on Ubuntu are Universe and Multiverse. To turn them on, open up a terminal and enter the following commands:

sudo apt-add-repository multiverse 

sudo apt-add-repository universe

Using apt-add-repository will instantly enable these software sources on your Ubuntu PC. Next, run the apt update command to check for any updates.

sudo apt update

After running an update check, you’ll need to install any software upgrades that appear. Installing these upgrades will ensure that Bumblebee runs at it’s best.

sudo apt upgrade -y

After upgrading your software, it’s safe to install Bumblebee.

sudo apt-get install bumblebee bumblebee-nvidia primus linux-headers-generic

When the installation completes, restart your Ubuntu PC. Upon logging back in, Nvidia Optimus support should be ready to go!

Debian

Much like Ubuntu, Debian users do not need to do any special tweaking to get Nvidia Optimus support. Instead, if you’d like your Intel/Nvidia hybrid laptop to work, it’s just a matter of installing a few packages.

Note: need to use Bumblebee with the Proprietary Nvidia driver? You’ll need to enable non-free and contrib in /etc/apt/sources.list, and install the Nvidia proprietary driver included in Debian first.

Bumblebee With Open Source Nvidia Drivers

sudo dpkg --add-architecture i386

sudo apt-get update

sudo apt-get upgrade -y

sudo apt-get install bumblebee primus primus-libs:i386

Bumblebee With Proprietary Nvidia Drivers

sudo dpkg --add-architecture i386

sudo apt-get update

sudo apt-get upgrade -y

sudo apt-get install bumblebee-nvidia primus primus-libs:i386

Once all the packages are installed, restart your Debian Linux PC, then log back in and Optimus support should work just fine!

Arch Linux

Getting Bumblebee on Arch Linux isn’t as simple as other Linux distributions. Instead of everything being pre-configured, you’ll need to do some manual setup. The first step is to install the necessary Bumblebee packages on Arch with Pacman.

Note: be sure to enable Multilib in /etc/pacman.conf before continuing, otherwise 32-bit applications will not work.

sudo pacman -S bumblebee mesa nvidia xf86-video-intel lib32-virtualgl lib32-nvidia-utils

Next, add your user to the Bumblebee system group.

su -
gpasswd -a yourusername bumblebee

Enable the Bumblebee systemd service using systemctl.

systemctl enable bumblebeed.service

Finally, finish up the setup process by restarting your Arch Linux PC. When it finishes rebooting, Bumblebee and Nvidia Optimus will be working correctly!

Fedora

Unlike many other Linux distributions, Fedora doesn’t include Bumblebee in the main software sources. Instead, to enjoy Optimus support on the Fedora operating system, you’ll need to enable a few third-party software sources. To enable the software repos, open up a terminal and enter the following command.

sudo dnf config-manager --add-repo=https://negativo17.org/repos/fedora-nvidia.repo

Now that the Negativo17 repo is enabled in Fedora, install the necessary Nvidia drivers:

sudo dnf install nvidia-driver kernel-devel akmod-nvidia dkms acpi

Next, enable the Bumblebee Copr repo.

sudo dnf copr enable chenxiaolong/bumblebee

Install the Bumblebee software in Fedora, using DNF.

sudo dnf install akmod-bbswitch bumblebee primus

Add your user to the Bumblebee group:

sudo gpasswd -a $USER bumblebee

Lastly, enable the Bumblebee systemd service, and disable the Nvidia fallback one.

sudo systemctl enable bumblebeed
sudo systemctl disable nvidia-fallback

Finish up the process be rebooting your Fedora PC. When it comes back online, your Fedora Linux machine will have Optimus support!

Generic Instructions

Need Nvidia Optimus support on Linux but not running any of the distributions mentioned above? Your only option is to build everything from source. Start off by opening up a terminal and installing the latest Nvidia drivers for Linux. Then install the Wget tool, and use it to clone the latest Bumblebee code from the website.

wget bumblebee-project.org/bumblebee-3.2.1.tar.gz

Extract the Bumblebee Tar archive:

tar xf bumblebee-3.2.1.tar.gz

Run the configure script to generate Makefiles, and anything else necessary to build the software.

cd bumblebee*
./configure CONF_DRIVER=nvidia CONF_DRIVER_MODULE_NVIDIA=nvidia-current \
CONF_LDPATH_NVIDIA=/usr/lib/nvidia-current:/usr/lib32/nvidia-current \
CONF_MODPATH_NVIDIA=/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules

Finally, compile the code and install it:

make

sudo make install

Once Bumblebee is installed, refer to the official walkthrough page to learn how to get it working on your distribution.

Leave a comment