This repository has been archived by the owner on Nov 8, 2017. It is now read-only.
forked from MrMEEE/bumblebee-Old-and-abbandoned
-
Notifications
You must be signed in to change notification settings - Fork 2
/
INSTALL
114 lines (92 loc) · 5.91 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
AUTOMATIC INSTALLATION
With Debian or LinuxMint based on Debian you may run install.sh under root user
to get everything working. This script is completely tested and working on 64
bit Sid. Also there is several reports that installation worked on Testing.
Stable isn't supported due to lack of multiarch support, check the manual
installation instructions. Though it's a bit outdated and better read the
installation script.
MANUAL INSTALLATION
1) Install proprietary nVidia graphics driver in distro's preferred way (under
Debian it's "apt-get install nvidia-kernel-dkms").
- Additionally you may need package with nvidia-xconfig, if it isn't provided
with default installation;
- If you are running 64 bit arch and want to use 32 bit apps (mostly through
wine), install additional 32 bit nVidia libraries (on Debian it can be
archived via "apt-get install libgl1-nvidia-glx-ia32");
2) You need to alter libGL.so.1 library, libglx.so Xorg module and any other
libraries replaced by nVidia back to free versions, but keep nVidia versions
somewhere (usually they are placed in /usr/lib/nvidia). In Debian based
distros it should be done via alternatives mechanism, please check
update-alternatives manual page and /etc/alternatives folder.
3) Install the VirtualGL package from http://www.virtualgl.org/.
4) Prepare additional nVidia X server init script and special xorg.conf for it.
You may check install-files/debian/debumblebee init script and
install-files/debian/xorg.conf.nvidia for configuration. The main points are:
- init script should start after any nvidia initializations (nvidia-kernel
init script on Debian) and after kdm/gdm;
- nVidia X server should use nVidia's libraries libGL.so.1 and libglx.so. The
libGL.so.1 library could be loaded via LD_LIBRARY_PATH and the Xorg module
should be loaded via X command line option -modulepath (at least it should
be loaded BEFORE the free libglx.so module). To archive this in Debian
create a /usr/local/lib/debumblebee folder, symlink nVidia libglx.so there
and launch X server with the following option:
"-modulepath /usr/local/lib/debumblebee,/usr/lib/xorg/modules";
- X server should use separate screen, e.g. ":8";
- X server should use custom xorg configuration for nVidia card:
"-config /etc/X11/xorg.conf.nvidia";
- in xorg.conf.nvidia:
- replace BusID with nVidia card PCI ID. You can obtain it from lspci or
"nvidia-xconfig --query-gpu-info" output, in xorg.conf.nvidia it should
be something like "PCI:1:0:0";
- you may need to add proper ConnectedMonitor option into Device section if
the nVidia module fails to autodetect it. The option should be DFP-0 or
CRT-0. Usually autodetection fails with DFP-0, so try it first.
6) Copy install-files/debian/debumblebee.default to /etc/default/debumblebee,
install-files/debian/debumblebee.sudoers to /etc/sudoers.d/debumblebee. This
is required to enable on demand support. Also you need to make sure that sudo
package is installed.
7) Copy optirun from install-files/debian folder somewhere into your system wide
PATH, /usr/local/bin is recommended place.
8) If you followed this instruction closely, everything should be working. You
may check outputs of "glxgears -info" and "optirun glxgears -info" for
confirmation.
CONFIGURATION
Configuration file is /etc/default/debumblebee.
By default we are using method xv from vglrun for OpenGL transfer. You can switch
to another method, if this one unsatisfies you. Please check the output of
"vglrun -h". Also note that some methods require vglclient to be running.
By default debumblebee configured to start only on demand invoked from optirun
script. You can change this behavior in configuration file.
Disable screensaver option is off by default. To make it work correctly you
need to set HEARTBEAT_CMD option depending on your DE. I've provided several
variants (tested only with KDE right now), but it's up to you to find which is
working with your DE.
MODULE OPTION
Originally debumblebee supported only closed source nVidia module. But starting
from version 0.6 nouveau support was added. Still it's very experimental and not
suitable for daily use as nouveau lacks support of modern hardware. So right now
this is just PoC which might be extended later.
POWERSAVE OPTION
There is POWER_SAVE option in configuration file. If you set it to "yes", than
the debumblebee init script will disable nVidia when it isn't used. This should
lower your power consumption and increase battery's life. Before enabling this
option you need to do two things.
First is to build and install acpi_call module, you can find it in
install-files/contrib/acpi_call folder. Installation script requires root rights
and dkms (it was installed with nVidia module). This module is used for passing
command strings to acpi subsystem.
Second is to prepare enablecard and disablecard shell scripts. You can find
samples in install-files/contrib/power_off_on/K53SJ folder. Copy them to
/usr/local/bin folder. You MUST change command strings passed in those scripts
depending on your laptop. How do you find them? There are several ways. First
check the http://hybrid-graphics-linux.tuxfamily.org/index.php?title=ACPI_calls
page. Then you can check original bumblebee repo, it already has a bunch of
confirmed scripts. Also you may use test_off.sh script from acpi_call.
After preparation is completed you may enable POWER_SAVE option.
ADDING POWERSAVE SUPPORT FOR YOUR LAPTOP INTO INSTALLER
If you have acpi_call's which are tested and successfully working, than spend
some time and prepare update for installer. First take enable/disablecard
scripts form install-files/contrib/power_off_on/K53SJ and replace acpi_call's
there with yours. Then provide me those files with output of
"dmidecode --string system-product-name". Pastebin and github are strongly
recommended. Also you may create own fork, add support and submit pull request.