# 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.1-r2.ebuild,v 1.1 2013/01/21 21:19:16 pacho Exp $ EAPI=5 inherit eutils multilib readme.gentoo systemd udev user DESCRIPTION="Service providing elegant and stable means of managing Optimus graphics chipsets" HOMEPAGE="https://github.com/Bumblebee-Project/Bumblebee" SRC_URI="mirror://github/Bumblebee-Project/${PN/bu/Bu}/${P}.tar.gz" SLOT="0" LICENSE="GPL-3" KEYWORDS="~amd64 ~x86" IUSE="+bbswitch video_cards_nouveau video_cards_nvidia" RDEPEND="x11-misc/virtualgl:= bbswitch? ( sys-power/bbswitch ) virtual/opengl x11-base/xorg-drivers[video_cards_nvidia?,video_cards_nouveau?]" DEPEND=">=sys-devel/autoconf-2.68 sys-devel/automake sys-devel/gcc virtual/pkgconfig dev-libs/glib:2 x11-libs/libX11 dev-libs/libbsd sys-apps/help2man" REQUIRED_USE="|| ( video_cards_nouveau video_cards_nvidia )" src_prepare() { DOC_CONTENTS="In order to use Bumblebee, add your user to 'bumblebee' group. You may need to setup your /etc/bumblebee/bumblebee.conf" # --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 local nvlib="" for i in $(get_all_libdirs) ; do nvlib="${nvlib}:/usr/${i}/opengl/nvidia/lib" done local nvpref="/usr/$(get_libdir)/opengl/nvidia" local xorgpref="/usr/$(get_libdir)/xorg/modules" ECONF_PARAMS="CONF_DRIVER=nvidia CONF_DRIVER_MODULE_NVIDIA=nvidia \ CONF_LDPATH_NVIDIA=${nvlib#:} \ CONF_MODPATH_NVIDIA=${nvpref}/lib,${nvpref}/extensions,${xorgpref}/drivers,${xorgpref}" fi econf \ --docdir=/usr/share/doc/"${PF}" \ ${ECONF_PARAMS} } src_install() { newconfd "${FILESDIR}"/bumblebee.confd bumblebee 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 udev_dorules "${FILESDIR}"/99-remove-nvidia-dev.rules readme.gentoo_create_doc default } pkg_preinst() { use video_cards_nvidia || rm "${ED}"/etc/bumblebee/xorg.conf.nvidia use video_cards_nouveau || rm "${ED}"/etc/bumblebee/xorg.conf.nouveau enewgroup bumblebee }