summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--x11-misc/bumblebee/ChangeLog13
-rw-r--r--x11-misc/bumblebee/bumblebee-3.0.1-r1.ebuild (renamed from x11-misc/bumblebee/bumblebee-3.0-r2.ebuild)23
-rw-r--r--x11-misc/bumblebee/files/99-remove-nvidia-dev.rules3
-rw-r--r--x11-misc/bumblebee/files/bumblebee-3.0.1-remove-wait.patch12
4 files changed, 43 insertions, 8 deletions
diff --git a/x11-misc/bumblebee/ChangeLog b/x11-misc/bumblebee/ChangeLog
index 2cfa3c23655d..092fca36c6a4 100644
--- a/x11-misc/bumblebee/ChangeLog
+++ b/x11-misc/bumblebee/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for x11-misc/bumblebee
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/bumblebee/ChangeLog,v 1.9 2012/09/14 20:24:21 pacho Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/bumblebee/ChangeLog,v 1.10 2013/01/03 20:37:21 pacho Exp $
+
+*bumblebee-3.0.1-r1 (03 Jan 2013)
+
+ 03 Jan 2013; Pacho Ramos <pacho@gentoo.org> +bumblebee-3.0.1-r1.ebuild,
+ +files/99-remove-nvidia-dev.rules, +files/bumblebee-3.0.1-remove-wait.patch,
+ -bumblebee-3.0-r2.ebuild:
+ kmod-11 deprecates --wait rmmod option, causing issues (#447014 by Philipp
+ Leonhardt). See https://github.com/Bumblebee-Project/Bumblebee/issues/283 for
+ reference. Remove old.
*bumblebee-3.0.1 (14 Sep 2012)
diff --git a/x11-misc/bumblebee/bumblebee-3.0-r2.ebuild b/x11-misc/bumblebee/bumblebee-3.0.1-r1.ebuild
index 2ad0c5a3b4f1..bb151726d90c 100644
--- a/x11-misc/bumblebee/bumblebee-3.0-r2.ebuild
+++ b/x11-misc/bumblebee/bumblebee-3.0.1-r1.ebuild
@@ -1,10 +1,9 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/bumblebee/bumblebee-3.0-r2.ebuild,v 1.3 2012/06/20 12:49:22 scarabeus Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/bumblebee/bumblebee-3.0.1-r1.ebuild,v 1.1 2013/01/03 20:37:21 pacho Exp $
-EAPI="4"
-
-inherit multilib systemd user
+EAPI=5
+inherit eutils multilib systemd user
DESCRIPTION="Service providing elegant and stable means of managing Optimus graphics chipsets"
HOMEPAGE="https://github.com/Bumblebee-Project/Bumblebee"
@@ -16,7 +15,7 @@ KEYWORDS="~amd64 ~x86"
IUSE="+bbswitch video_cards_nouveau video_cards_nvidia"
-RDEPEND="x11-misc/virtualgl
+RDEPEND="x11-misc/virtualgl:=
bbswitch? ( sys-power/bbswitch )
virtual/opengl
x11-base/xorg-drivers[video_cards_nvidia?,video_cards_nouveau?]"
@@ -31,6 +30,12 @@ DEPEND=">=sys-devel/autoconf-2.68
REQUIRED_USE="|| ( video_cards_nouveau video_cards_nvidia )"
+src_prepare() {
+ # --wait option for rmmod is deprecated:
+ # https://github.com/Bumblebee-Project/Bumblebee/issues/283
+ epatch "${FILESDIR}/${P}-remove-wait.patch"
+}
+
src_configure() {
if use video_cards_nvidia ; then
# Get paths to GL libs for all ABIs
@@ -54,6 +59,12 @@ src_install() {
newinitd "${FILESDIR}"/bumblebee.initd bumblebee
newenvd "${FILESDIR}"/bumblebee.envd 99bumblebee
systemd_dounit scripts/systemd/bumblebeed.service
+
+ # Install udev rule to handle nvidia card switching,
+ # https://github.com/Bumblebee-Project/Bumblebee/issues/283
+ insinto /usr/lib/udev/rules.d
+ doins "${FILESDIR}"/99-remove-nvidia-dev.rules
+
default
}
diff --git a/x11-misc/bumblebee/files/99-remove-nvidia-dev.rules b/x11-misc/bumblebee/files/99-remove-nvidia-dev.rules
new file mode 100644
index 000000000000..3f7f67f48c5b
--- /dev/null
+++ b/x11-misc/bumblebee/files/99-remove-nvidia-dev.rules
@@ -0,0 +1,3 @@
+# Put this file in /lib/udev/rules.d or /etc/udev/rules.d
+# Prevent the nvidia card from "randomly" turning on
+DEVPATH=="/module/nvidia", ACTION=="remove", RUN+="/bin/rm -f /dev/nvidiactl /dev/nvidia0 /dev/nvidia1"
diff --git a/x11-misc/bumblebee/files/bumblebee-3.0.1-remove-wait.patch b/x11-misc/bumblebee/files/bumblebee-3.0.1-remove-wait.patch
new file mode 100644
index 000000000000..06adda989458
--- /dev/null
+++ b/x11-misc/bumblebee/files/bumblebee-3.0.1-remove-wait.patch
@@ -0,0 +1,12 @@
+diff --git a/src/module.c b/src/module.c
+index 06f8872..55fa70e 100644
+--- a/src/module.c
++++ b/src/module.c
+@@ -96,7 +96,6 @@ int module_unload(char *driver) {
+ bb_log(LOG_INFO, "Unloading %s driver\n", driver);
+ char *mod_argv[] = {
+ "rmmod",
+- "--wait",
+ driver,
+ NULL
+ }; \ No newline at end of file