--- bluez-4.39-r2.ebuild 2009-10-12 10:00:33.000000000 -0500 +++ bluez-4.57.ebuild 2009-11-04 09:30:14.000000000 -0600 @@ -11,9 +11,9 @@ SRC_URI="mirror://kernel/linux/bluetooth/${P}.tar.gz" LICENSE="GPL-2 LGPL-2.1" SLOT="0" -KEYWORDS="amd64 arm ~hppa ~ppc ~ppc64 ~sh ~sparc x86" +KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~sparc ~x86" -IUSE="alsa +consolekit cups debug doc gstreamer old-daemons test-programs usb" +IUSE="alsa +consolekit cups debug gstreamer old-daemons pcmcia test-programs usb" CDEPEND="alsa? ( media-libs/alsa-lib ) gstreamer? ( @@ -30,23 +30,21 @@ !net-wireless/bluez-utils" DEPEND="sys-devel/flex >=dev-util/pkgconfig-0.20 - doc? ( dev-util/gtk-doc ) ${CDEPEND}" RDEPEND="${CDEPEND} - consolekit? ( sys-auth/pambase[consolekit] )" + consolekit? ( sys-auth/pambase[consolekit] ) + test-programs? ( + dev-python/dbus-python + dev-python/pygobject )" src_prepare() { - epatch \ - "${FILESDIR}/4.31-as_needed.patch" \ - "${FILESDIR}/4.34-conditional_libsbc.patch" - if ! use consolekit; then # No consolekit for at_console etc, so we grant plugdev the rights epatch "${FILESDIR}/bluez-plugdev.patch" fi if use cups; then - epatch "${FILESDIR}/4.18/cups-location.patch" + epatch "${FILESDIR}/4.50-cups-location.patch" fi # needed for both patches @@ -54,13 +52,7 @@ } src_configure() { - # the order is the same as ./configure --help - - # we don't need the other daemons either with the new - # service architechture - econf \ - $(use_enable doc gtk-doc) \ --enable-network \ --enable-serial \ --enable-input \ @@ -79,10 +71,9 @@ $(use_enable old-daemons dund) \ $(use_enable cups) \ $(use_enable test-programs test) \ - --enable-manpages \ + --enable-udevrules \ --enable-configfiles \ - --disable-initscripts \ - --disable-pcmciarules \ + $(use_enable pcmcia) \ $(use_enable debug) \ --localstatedir=/var } @@ -92,6 +83,9 @@ dodoc AUTHORS ChangeLog README || die + # don't install useless .la files + find "${D}" -type f -name '*.la' -delete || die "failed to remove .la files" + if use test-programs ; then cd "${S}/test" dobin simple-agent simple-service monitor-bluetooth @@ -105,47 +99,30 @@ cd "${S}" fi - newinitd "${FILESDIR}/4.18/bluetooth-init.d" bluetooth || die - newconfd "${FILESDIR}/4.18/bluetooth-conf.d" bluetooth || die - if use old-daemons; then newconfd "${FILESDIR}/4.18/conf.d-hidd" hidd || die newinitd "${FILESDIR}/4.18/init.d-hidd" hidd || die fi - # bug #84431 - insinto /etc/udev/rules.d/ - newins "${FILESDIR}/${PN}-4.18-udev.rules" 70-bluetooth.rules || die - newins "${S}/scripts/bluetooth.rules" 70-bluetooth-pcmcia.rules || die - - exeinto /$(get_libdir)/udev/ - newexe "${FILESDIR}/${PN}-4.18-udev.script" bluetooth.sh || die - doexe "${S}/scripts/bluetooth_serial" || die - insinto /etc/bluetooth doins \ input/input.conf \ audio/audio.conf \ - network/network.conf + network/network.conf \ + serial/serial.conf \ + || die } pkg_postinst() { - udevadm control --reload_rules && udevadm trigger + udevadm control --reload-rules && udevadm trigger --subsystem-match=bluetooth elog elog "To use dial up networking you must install net-dialup/ppp." elog "" - elog "Since 3.0 bluez has changed the passkey handling to use a dbus based" - elog "API so please remember to update your /etc/bluetooth/hcid.conf." - elog "For a password agent, there are for example net-wireless/bluez-gnome" - elog "and net-wireless/gnome-bluetooth:2 for GNOME. For KDE, see bug 246381" - elog "" - elog "Since 3.10.1 we don't install the old style daemons any more but rely" - elog "on the new service architechture:" - elog " http://wiki.bluez.org/wiki/Services" + elog "For a password agent, there is for example net-wireless/bluez-gnome" + elog "for gnome and net-wireless/kdebluetooth for kde." elog "" - elog "3.15 adds support for the audio service. See" - elog "http://wiki.bluez.org/wiki/HOWTO/AudioDevices for configuration help." + elog "For registering devices that don't pair, use net-wireless/blueman" elog "" elog "Use the old-daemons use flag to get the old daemons like hidd" elog "installed. Please note that the init script doesn't stop the old" @@ -153,21 +130,28 @@ elog " /etc/init.d/bluetooth stop" elog "before updating your configuration files or you can manually kill" elog "the extra daemons you previously enabled in /etc/conf.d/bluetooth." - elog "" - elog "If you want to use rfcomm as a normal user, you need to add the user" - elog "to the uucp group." - elog "" + + if use consolekit; then + elog "" + elog "If you want to use rfcomm as a normal user, you need to add the user" + elog "to the uucp group." + else + elog "" + ewarn "Since you have the consolekit use flag disabled for this package, you will only be " + ewarn "able to run bluetooth clients as root. If you want to be able to run bluetooth " + ewarn "clients as a regular user, you must enable the consolekit use flag for this package." + fi + if use old-daemons; then + elog "" elog "The hidd init script was installed because you have the old-daemons" elog "use flag on. It is not started by default via udev so please add it" - elog "to the required runleves using rc-update add hidd. If" + elog "to the required runlevels using rc-update add hidd. If" elog "you need init scripts for the other daemons, please file requests" elog "to https://bugs.gentoo.org." else + elog "" elog "The bluetooth service should be started automatically by udev" elog "when the required hardware is inserted next time." fi - elog - ewarn "On first install you need to run /etc/init.d/dbus reload or hcid" - ewarn "will fail to start." }