My scenario: I am running openSUSE 13.1 on an Optimus laptop and would like to be able to turn the discrete graphics adapter on and off. Either (a) I have a clean install of openSUSE 13.1 or (b) I have already done things like install bumblebee, NVIDIA drivers, etc. in the past.
N.B.: These notes apply to my Dell Latitude E6430 laptop.
If I am in group (b), I will need to get rid of the old setup. If I have a clean install of 13.1, this part is not necessary.
- Make sure that I am running openSUSE 13.1
$ cat /etc/SuSE-release
- Make sure that my system is fully updated
# zypper ref # zypper up
- Reboot to make sure I'm running the latest standard kernel
- While rebooting, make sure Optimus is *enabled* in the laptop's BIOS setting
- Get rid of all NVIDIA-related packages:
# zypper se nvidia # zypper rm ...
- Get rid of bumblebee, primus, dkms, dkms-nvidia, dkms-bbswitch:
# zypper rm bumblebee primus dkms dkms-nvidia dkms-bbswitch
- Delete all mentions of nvidia in
- Delete Overman79 repository (and thank Overman79 for the good work!)
# rm /etc/zypp/repos.d/Overman79.repo # zypper ref
- Make sure
xf86-video-intelpackage is installed
zypper if xf86-video-intel
- Rebuild the initrd
- reboot and pray
After the system comes back up in its pristine state (without possibility to influence the discrete adapter), I may want to check how much power the system is drawing. For this, I install
- Install 'powertop' package and note power consumption (must be on battery for power consumption to be shown)
# zypper in powertop # powertop
To actually install bumblebee, I refer to the up-to-date instructions at openSUSE wiki SDB:NVIDIA Bumblebee page.
- If I don't plan to use the NVIDIA discrete graphics adapter at all (i.e., I want to run the Intel driver 100% of the time), I can safely ignore the "Install NVIDIA Driver" section. Bumblebee will use the
nouveaudriver for its own internal purposes.
Thanks to Scarabeus and the rest of the openSUSE team for bringing bumblebee into the official distro, and thanks to Overman79 for maintaining all the bumblebee-related packages in his home repository before that!
Once I have the system back up with bumblebee installed, I can verify its status and that of the discrete graphics adapter like so:
- When the system comes back, log in as my normal user and verify that I am still in the
$ groups users wheel dialout video vboxusers bumblebeeThis should not be a problem anymore, but if "bumblebee" is not shown, I will have to add it again, log out, and then log back in
- Follow the instructions in the "Verify installation" section of the openSUSE wiki SDB:NVIDIA Bumblebee page
- As root, check that the following commands produce the output shown:
# ls /proc/acpi/bbswitch /proc/acpi/bbswitch # cat /proc/acpi/bbswitch 0000:01:00.0 OFF # systemctl status bumblebeed bumblebeed.service - Bumblebee C Daemon Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled) Active: active (running) since Fri 2014-06-04 11:09:27 CET; 7min ago Main PID: 1390 (bumblebeed) CGroup: /system.slice/bumblebeed.service └─1390 /usr/sbin/bumblebeed Jun 04 11:09:27 wilbur systemd: Started Bumblebee C Daemon. Jun 04 11:09:28 wilbur bumblebeed: [ 39.375112] [INFO]/usr/sbin/bumblebeed 3.2.1 started
- While on battery, verify power consumption using 'powertop' again -- in my case, it was 12 - 16W compared to 25W before performing these steps. This translates into a 10-degree (Celsius) reduction in running temperature and, of course, much longer battery life