Bumblebee-SlackBuilds icon indicating copy to clipboard operation
Bumblebee-SlackBuilds copied to clipboard

SlackBuilds (Slackware build scripts) for Bumblebee and related dependencies

This set of SlackBuilds should get Bumblebee up and running on a Slackware based NVIDIA Optimus setup.

Slackware Docs: A wiki page on the Slackware docs has been put to gether by another slacker, TommyC. I recommend you follow the wiki page for a more in-depth guide.

http://docs.slackware.com/howtos:hardware:nvidia_optimus

HowTo: If you have never used a SlackBuild before, please refer to the HowTo on SlackBuilds.org: http://slackbuilds.org/howto/

Note: Several of these SlackBuilds support a COMPAT32 option which allows 32-bit binaries to be built and packaged. This does require that the system is multilibbed, otherwise the SlackBuilds will fail.

For more information on multilibbing, visit AlienBOB's wiki: http://alien.slackbook.org/dokuwiki/doku.php?id=slackware:multilib

  1. Download the sources: $ ./download.sh

  2. Create group: bumblebee:

    groupadd bumblebee

    Add users to the group:

    usermod -G bumblebee -a USERNAME

    Note: you will need to re-login as the user for this to take effect

  3. Build and install: libbsd

  4. Build and install: bumblebee

  5. Build and install: bbswitch (Optional)

    This in an optional requirement. If you do not need power management or the ability to turn off the nVidia chip, you can skip this.

  6. Build and install: libvdpau (Optional, if using nouveau)

  7. Build and install: nvidia-bumblebee (Optional, if using nouveau)

    If the system is x86_64 based, 32-bit compatible binaries and libraries can be built via:

    COMPAT32=yes ./nvidia-bumblebee.SlackBuild

  8. Build and install: nvidia-kernel (Optional, if using nouveau)

  9. Build and install: primus, VirtualGL, or both

    Primus:

    1. Rebuild and reinstall: mesa

      Slackware 14.0 mesa does not come with libglapi which is needed by primus during runtime.

      Slackware-current does now include the libglapi.

      If the system is x86_64 based, a 32-bit compatible package can be built via:

      ./mesa-compat32.SlackBuild

    2. Build and install: primus

      If the system is x86_64 based, 32-bit compatible binaries and libraries can be built via:

      COMPAT32=yes ./primus.SlackBuild

      primus speeds can be much improved by running: vblank_mode=0 primusrun

    VirtualGL:

    1. Build and install: libjpeg-turbo

      If the system is x86_64 based, 32-bit compatible binaries and libraries can be built via:

      COMPAT32=yes ./libjpeg-turbo.SlackBuild

    2. Build and install: VirtualGL

      If the system is x86_64 based, 32-bit compatible binaries and libraries can be built via:

      COMPAT32=yes ./VirtualGL.SlackBuild

  10. Run the rc.bumblebee script:

    chmod +x /etc/rc.d/rc.bumblebeed

    /etc/rc.d/rc.bumblebeed start

    If you'd like to have bumblebee autostart with the system, you will need to add the following lines to: /etc/rc.d/rc.local:

    if [ -x /etc/rc.d/rc.bumblebeed ]; then /etc/rc.d/rc.bumblebeed start fi

    You can also go a step further by having bumblebeed stop with your system by adding the following lines to: /etc/rc.d/rc.local_shutdown:

    if [ -x /etc/rc.d/rc.bumblebeed ]; then /etc/rc.d/rc.bumblebeed stop fi

    Now an application can run with optirun: $ optirun glxgears