The lack of full Nvidia Optimus support has proved to be the only major stumbling block in installing Linux Mint on my Dell XPS. While the proprietary driver does allow you to switch between the Intel graphics and the Nvidia, each time you do so you have to re-login for the change to take effect. Bumblebee comes closer to creating the same experience Windows gives, allowing you to call upon the dedicated graphics processor when a specific program is launched. Installation and set-up isn’t tricky, but I wasn’t able to find a specific guide for Bumblebee on Linux Mint.
Removing existing proprietary drivers
If you have already installed a Nvidia driver (i.e. one other than the default) it’s probably a good idea to remove it before setting up Bumblebee. To do so, open up a terminal window and type / paste:
sudo apt-get purge nvidia-current
Installing Bumblebee on Linux Mint
The installation instructions you want for Bumblebee on Linux Mint are those which are written for the Ubuntu, the operating system on which Linux Mint is based. In Linux Mint, which is less stubborn about non-free software than Ubuntu, there’s no need to enable any additional repositories. You need only type / paste:
sudo apt-get install bumblebee bumblebee-nvidia primus linux-headers-generic
Post installation set-up
At this point the Ubuntu guide skips straight to usage, but there’s a post installation step you need to do before Bumblebee will work. As per Bumblebee project’s own installation and usage guide, the commands you need are:
# groupadd bumblebee # gpasswd -a $USER bumblebee
You’ll need to log out and back in again for these changes to take effect.
Testing Bumblebee on Linux Mint
Bumblebee should now be successfully installed and working on your system. A good way to test that everything is set-up correctly is to run glxgears via the terminal, requesting that some output be made in order to confirm which graphics are being used. You could compare the framerate, or simply have the driver vendor displayed.
The following should run glxgears using the Intel graphics, reporting “Intel Open Source Technology Center” as the vendor:
glxgears -info | grep "GL_VENDR"
To run a program with the Nvidia graphics instead, just prefix the launch command with primusrun and the vendor should change to “NVIDIA Corporation”:
primusrun glxgears -info | grep "GL_VENDOR"
If you replace primusrun with
optirun the result should be pretty much the same as the above. My understanding is that primusrun and optirun are different clients / bridges which perform the same task, but that primusrun gives slightly better performance and is therefore the preferred option.
HDMI / Mini DisplayPort support
Despite my best efforts I have not been able to get either the HDMI output or the Mini DisplayPort output on my laptop to work in Linux Mint. I gather that if your laptop has a port connected to the on-board graphics then it should work without any problems, but that video output via the dedicated card is not currently supported by Bumblebee.
On my Dell XPS the Mini DisplayPort should work, but it doesn’t. I suspect that Linux Mint is not at fault here, and that the problem instead lies with the mini DisplayPort to HDMI adapter I bought cheaply on ebay. There appears to be several slightly different standards of Mini DisplayPort, and I presumably got the wrong one.