Ubuntu / Linux news and application reviews.

Bumblebee 3.1 has been released today with support for Primus as an alternative to the VirtualGL optirun backend, along with other enhancements and fixes.

Bumblebee is a (unofficial) tool that brings Nvidia Optimus GPU switching to Linux. Nvidia Optimus is a technology used to increase battery life by switching the dedicated GPU (Nvidia) off when it's not needed; when the dedicated GPU is off, the integrated graphics chip (Intel) is used. Bumblebee also supports legacy Nvidia hybrid graphics.

Bumblebee optirun glxspheres

Changes in Bumblebee 3.1:
  • support for Primus as an alternative to VirtualGL as optirun backend. This is configurable through a new "Bridge" option in bumblebee.conf that by default is set to "auto" - it selects VirtualGL if installed and if not, it uses Primus. In Bumblebee 4.0, Primus may be used as the default option;
  • optirun has gained an option for on-the-fly back-end choice: --bridge;
  • use of non-blocking sockets, replacing former 3.0.1 hotfix for socket polling;
  • added an udev rule to fix nvidia card randomly turning on;
  • fix for Kepler generation cards was added in xorg.conf.nvidia;
  • fix for dual nvidia hybrid systems;
  • fixed nouveau not working under X.org 1.13+;
  • fixed available drivers detection by supporting module aliases;
  • other fixes.

For the complete Bumblebee 3.1 release notes, see THIS page.

Bumblebee isn't useful just for those who want to use the Nvidia graphics card for gaming, but also to improve battery life because by default, Bumblebee disables the Nvidia card which is always turned on unless you disable it some other way. To use the Nvidia card for an application or game, you can launch it with "optirun" (e.g.: "optirun firefox").

Install Bumblebee in Ubuntu

To add the stable Bumblebee PPA and install Bumblebee in Ubuntu Raring, Quantal, Precise, Oneiric or Lucid, use the following commands:
sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia

Update: initially, Bumblebee 3.1 was only available in the testing PPA, but it's now available in the stable Bumblebee PPA.

Once installed, log out and log back in, then try it out by running "optirun glxspheres". You may need to edit the Bumblebee configuration file if you're not using nvidia-current (/etc/bumblebee/bumblebee.conf).

Then, if you want an application or game to use the Nvidia graphics card, launch it with "optirun", e.g.: "optirun steam".

Primus is now available in the Bumblebee Stable PPA. However, please note that if you were using the Primus PPA and want to only use the packages in the Bumblebee PPA, you'll have to purge primus ("sudo apt-get purge primus*") before installing Primus from the Bumblebee PPA.

To use the new Primus backend, you'll also have to install Primus:
sudo apt-get install primus
64bit: you also need to install "primus-libs-ia32:i386" (note that if you're using the Primus PPA, the package you need to install is "primus-lib:i386"):
sudo apt-get install primus-libs-ia32:i386

Then, change the "Bridge" option in /etc/bumblebee/bumblebee.conf to "primus". You can also directly call Primus from optirun via command line, like this:
optirun -b primus APP
Where "APP" is the application you want to launch.

For other Linux distributions, see the Bumblebee installation page or get the code via GitHub.

If you encounter issues with Bumblebee, report them @ GitHub.