[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
howtos:hardware:nvidia_optimus [2013/08/19 22:13 (UTC)] – tommyc | howtos:hardware:nvidia_optimus [2014/12/23 20:55 (UTC)] – tommyc | ||
---|---|---|---|
Line 10: | Line 10: | ||
You should also note the terminal commands used on this page. The code lines that begin with '' | You should also note the terminal commands used on this page. The code lines that begin with '' | ||
- | Also please note the differences between Bumblebee and bumblebeed. bumblebeed | + | Also please note the differences between Bumblebee and bumblebee. bumblebee |
</ | </ | ||
Line 20: | Line 20: | ||
==== Installing Bumblebee ==== | ==== Installing Bumblebee ==== | ||
---- | ---- | ||
+ | === The Automated Way === | ||
+ | There is a new, automated way of installing Bumblebee thanks to Slacker: Ryan McQuen. | ||
+ | <note warning> | ||
+ | If you have modified the SlackBuilds in any way, this script may not be for you.</ | ||
+ | |||
+ | You can run this as root: | ||
+ | < | ||
+ | curl https:// | ||
+ | </ | ||
+ | |||
+ | Alternatively you can download the script and run it as root on your system directly. | ||
+ | |||
+ | This script detects multilib, creates the necessary group, adds users and applies the necessary / | ||
+ | |||
+ | It also uses upgradepkg' | ||
+ | === The Manual Way === | ||
=== Getting the SlackBuilds === | === Getting the SlackBuilds === | ||
- | A fellow Slacker, jgeboski, | + | A fellow Slacker, jgeboski, |
< | < | ||
- | $ git clone https:// | + | $ git clone https:// |
$ cd Bumblebee-SlackBuilds | $ cd Bumblebee-SlackBuilds | ||
</ | </ | ||
Line 29: | Line 45: | ||
Or you can download the full tarball containing the SlackBuilds instead: | Or you can download the full tarball containing the SlackBuilds instead: | ||
< | < | ||
- | $ wget --content-disposition https:// | + | $ wget --content-disposition https:// |
- | $ tar xf jgeboski-Bumblebee-SlackBuilds-< | + | $ tar -xf whitewolf1776-Bumblebee-SlackBuilds-< |
- | $ cd jgeboski-Bumblebee-SlackBuilds | + | $ cd whitewolf1776-Bumblebee-SlackBuilds |
</ | </ | ||
There is a README file, but you probably won't be reading it as you're reading this instead, so we're basically going to post it here. | There is a README file, but you probably won't be reading it as you're reading this instead, so we're basically going to post it here. | ||
- | === Getting the Dependencies | + | === Getting the Source Files === |
- | The dependencies, as with all SlackBuilds, | + | The source files, as with all SlackBuilds, |
<code sh> | <code sh> | ||
./ | ./ | ||
Line 50: | Line 66: | ||
=== Building and Installing Bumblebee' | === Building and Installing Bumblebee' | ||
- | 1. Build and install: bbswitch (optional but highly recommended), libbsd and bumblebeed in order as you go. | + | 1. Build and install: bbswitch (optional but highly recommended). |
< | < | ||
# cd bbswitch # You don't actually need to '' | # cd bbswitch # You don't actually need to '' | ||
# ./ | # ./ | ||
# upgradepkg --install-new bbswitch-*.t? | # upgradepkg --install-new bbswitch-*.t? | ||
+ | </ | ||
+ | |||
+ | 2. Build and install: libbsd (required). | ||
+ | < | ||
# cd ../libbsd | # cd ../libbsd | ||
# ./ | # ./ | ||
# upgradepkg --install-new libbsd-*.t? | # upgradepkg --install-new libbsd-*.t? | ||
- | # cd ../bumblebeed | + | </ |
- | # ./bumblebeed.SlackBuild | + | |
+ | 3. Build and install: bumblebee (obviously required). | ||
+ | < | ||
+ | # cd ../bumblebee | ||
+ | # ./bumblebee.SlackBuild | ||
# upgradepkg --install-new bumblebee-*.t? | # upgradepkg --install-new bumblebee-*.t? | ||
</ | </ | ||
Line 71: | Line 95: | ||
=== VirtualGL === | === VirtualGL === | ||
+ | <note warning> | ||
+ | Although VirtualGL (and its dependency libjpeg-turbo) are still supported by the Bumblebee project and maintained by their developers, the new github repo does not include SlackBuild scripts for these packages. This section is for the old github repository that was once maintained by jgeboski. If you would like to use VirtualGL (e.g. you're in one of the rare cases where VirtualGL provides better performance than primus) then you can use your own personal SlackBuilds or the old ones (although the old SlackBuilds will be out-of-date). | ||
+ | </ | ||
1. Build and install: libjpeg-turbo (32-bit compatibility available) | 1. Build and install: libjpeg-turbo (32-bit compatibility available) | ||
< | < | ||
Line 100: | Line 127: | ||
Primus is another program designed to be used much like optirun. However, primus does not require VirtualGL (and therefore will not require libjpeg-turbo as well) but only requires mesa with %%--%%enable-shared-glapi (Slackware 14.0 and below must have mesa rebuilt). Primus also comes with a COMPAT32 option as well. | Primus is another program designed to be used much like optirun. However, primus does not require VirtualGL (and therefore will not require libjpeg-turbo as well) but only requires mesa with %%--%%enable-shared-glapi (Slackware 14.0 and below must have mesa rebuilt). Primus also comes with a COMPAT32 option as well. | ||
- | 1. Rebuild | + | <note warning> |
+ | The new github repository does not offer a SlackBuild for mesa to support | ||
< | < | ||
+ | # # For the old repository, one would have done: | ||
# cd ../mesa | # cd ../mesa | ||
# ./ | # ./ | ||
</ | </ | ||
- | + | mesa does not have a COMPAT32 option because it is an official | |
- | mesa does not have a COMPAT32 option because it is a Slackware | + | |
< | < | ||
- | # ./ | + | # ./ |
</ | </ | ||
+ | </ | ||
- | 2. Build and install: primus | + | 1. Build and install: primus |
< | < | ||
# cd ../primus | # cd ../primus | ||
Line 124: | Line 153: | ||
If you want to use the nVidia proprietary drivers, you must not use nouveau, as the drivers interfere with each other. This can be prevented by removing nouveau, installing xf86-video-nouveau-blacklist from /extra, or blacklisting nouveau manually. | If you want to use the nVidia proprietary drivers, you must not use nouveau, as the drivers interfere with each other. This can be prevented by removing nouveau, installing xf86-video-nouveau-blacklist from /extra, or blacklisting nouveau manually. | ||
- | < | ||
This part is entirely optional. Slackware 13.37 and above comes with xf86-video-nouveau, | This part is entirely optional. Slackware 13.37 and above comes with xf86-video-nouveau, | ||
<note warning> | <note warning> | ||
- | Some nvidia driver versions are incompatible with certain kernel versions. One example is nvidia's 319.32 | + | Some nvidia driver versions are incompatible with certain kernel versions |
</ | </ | ||
- | 1. Build and install: libvdpau | + | < |
< | < | ||
# cd ../libvdpau | # cd ../libvdpau | ||
Line 137: | Line 165: | ||
# upgradepkg --install-new libvdpau-*.t? | # upgradepkg --install-new libvdpau-*.t? | ||
</ | </ | ||
+ | </ | ||
- | 2. Build and install: nvidia-bumblebee | + | 1. Build and install: nvidia-bumblebee |
<code sh> | <code sh> | ||
# cd ../ | # cd ../ | ||
Line 148: | Line 177: | ||
</ | </ | ||
- | 3. Build and install: nvidia-kernel | + | 2. Build and install: nvidia-kernel |
<code sh> | <code sh> | ||
# cd ../ | # cd ../ | ||
Line 157: | Line 186: | ||
# COMPAT32=yes ./ | # COMPAT32=yes ./ | ||
</ | </ | ||
- | </ | ||
- | Now that we have those 32-bit compatible and optional packages out of the way, let us build what remains. | ||
==== Post-Installation ==== | ==== Post-Installation ==== | ||
- | Excellent. Now we're ready to do some post-installation setup. The bumblebeed | + | Excellent. Now we're ready to do some post-installation setup. The bumblebee |
< | < | ||
# chmod +x / | # chmod +x / | ||
Line 171: | Line 198: | ||
</ | </ | ||
- | You can even go a step further by having | + | You can even go a step further by having |
<code sh> | <code sh> | ||
[ -x / | [ -x / | ||
Line 242: | Line 269: | ||
* Bumblebee Project Wiki: [[https:// | * Bumblebee Project Wiki: [[https:// | ||
* For making this page possible: [[https:// | * For making this page possible: [[https:// | ||
- | * SlackBuilds: | + | * Original |
+ | * New SlackBuilds: | ||
* Originally written by [[wiki: | * Originally written by [[wiki: | ||
- | * Another repo you can use: [[https:// | ||
<!-- Please do not modify anything below, except adding new tags.--> | <!-- Please do not modify anything below, except adding new tags.--> | ||
{{tag> | {{tag> |