diff options
author | 2007-10-26 15:28:44 +0000 | |
---|---|---|
committer | 2007-10-26 15:28:44 +0000 | |
commit | 48ecbbc8cab8d914fe2d09e2fecf0c18468ee46e (patch) | |
tree | e97824b00de7e70a61f5efb8429ad101dd7f5218 /media-sound/pulseaudio | |
parent | Add an experimental revision of pulseaudio depending on baselayout 2. (diff) | |
download | gentoo-2-48ecbbc8cab8d914fe2d09e2fecf0c18468ee46e.tar.gz gentoo-2-48ecbbc8cab8d914fe2d09e2fecf0c18468ee46e.tar.bz2 gentoo-2-48ecbbc8cab8d914fe2d09e2fecf0c18468ee46e.zip |
Add a new revision with an experimental init script with dynamic dependencies. With this script, disabling HAL or Avahi support on the configuration file will not require them to be started even if PulseAudio was built with their support enabled. Similarly ALSA is no more a requirement if no ALSA sink or source is defined and no autodetect modules are loaded.
(Portage version: 2.1.3.16)
Diffstat (limited to 'media-sound/pulseaudio')
-rw-r--r-- | media-sound/pulseaudio/ChangeLog | 13 | ||||
-rw-r--r-- | media-sound/pulseaudio/files/digest-pulseaudio-0.9.6-r2 | 3 | ||||
-rw-r--r-- | media-sound/pulseaudio/files/pulseaudio.init.d-3 | 61 | ||||
-rw-r--r-- | media-sound/pulseaudio/pulseaudio-0.9.6-r2.ebuild | 140 |
4 files changed, 216 insertions, 1 deletions
diff --git a/media-sound/pulseaudio/ChangeLog b/media-sound/pulseaudio/ChangeLog index e09402124d38..9f17c08ce2ad 100644 --- a/media-sound/pulseaudio/ChangeLog +++ b/media-sound/pulseaudio/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for media-sound/pulseaudio # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/ChangeLog,v 1.63 2007/09/10 19:11:37 josejx Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/ChangeLog,v 1.64 2007/10/26 15:28:43 flameeyes Exp $ + +*pulseaudio-0.9.6-r2 (26 Oct 2007) + + 26 Oct 2007; Diego Pettenò <flameeyes@gentoo.org> + +files/pulseaudio.init.d-3, +pulseaudio-0.9.6-r2.ebuild: + Add a new revision with an experimental init script with dynamic + dependencies. With this script, disabling HAL or Avahi support on the + configuration file will not require them to be started even if PulseAudio + was built with their support enabled. Similarly ALSA is no more a + requirement if no ALSA sink or source is defined and no autodetect modules + are loaded. 10 Sep 2007; Joseph Jezak <josejx@gentoo.org> pulseaudio-0.9.6-r1.ebuild: Marked ~ppc/~ppc64 for bug #181234. diff --git a/media-sound/pulseaudio/files/digest-pulseaudio-0.9.6-r2 b/media-sound/pulseaudio/files/digest-pulseaudio-0.9.6-r2 new file mode 100644 index 000000000000..347bd6651446 --- /dev/null +++ b/media-sound/pulseaudio/files/digest-pulseaudio-0.9.6-r2 @@ -0,0 +1,3 @@ +MD5 669d52a70fb9a7a83c2507005bfa2a6f pulseaudio-0.9.6.tar.gz 1157647 +RMD160 04de5538d6f4530f90163ba52b6f077878f1297b pulseaudio-0.9.6.tar.gz 1157647 +SHA256 b7a5f14eb8cf7076f1df8fb78d4a05c83e1e655474688c48364fa1b96f478d64 pulseaudio-0.9.6.tar.gz 1157647 diff --git a/media-sound/pulseaudio/files/pulseaudio.init.d-3 b/media-sound/pulseaudio/files/pulseaudio.init.d-3 new file mode 100644 index 000000000000..76dd277e0877 --- /dev/null +++ b/media-sound/pulseaudio/files/pulseaudio.init.d-3 @@ -0,0 +1,61 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/files/pulseaudio.init.d-3,v 1.1 2007/10/26 15:28:44 flameeyes Exp $ + +depend() { + use net + + local script="/etc/pulse/default.pa" + + for opt in ${PA_OPTS}; do + case "$opt" in + --file=*) script="${opt#*=}" ;; + -F*) script="${opt#-F}" ;; + esac + done + + config "$script" + + local needs="$(get_options need)" + if [ -n "${needs}" ]; then + need ${needs} + return + fi + +#ifdef HAL + if egrep -q '^[[:space:]]*load-module[[:space:]]+module-hal-detect' "$script"; then + needs="${needs} hald" + fi +#endif + +#ifdef AVAHI + if egrep -q '[[:space:]]*load-module[[:space:]]+module-zeroconf-publish' "$script"; then + needs="${needs} avahi-daemon" + fi +#endif + +#ifdef ALSA + if egrep -q '[[:space:]]*load-module[[:space:]]+module-alsa-(sink|source)' "$script" || + egrep -q '[[:space:]]*load-module[[:space:]]+module-(hal-)?detect' "$script" || + egrep -q '[[:space:]]*add-autoload-source[[:space:]]+(input|output)[[:space:]]+module-alsa-(sink|source)' "$script"; then + needs="${needs} alsasound" + fi +#endif + + need "${needs}" + save_options need "${needs}" +} + +start() { + ebegin "Starting pulseaudio" + PA_ALL_OPTS="${PA_OPTS} --fail=1 --daemonize=1 --system" + start-stop-daemon --start --exec /usr/bin/pulseaudio -- ${PA_ALL_OPTS} + eend $? +} + +stop() { + ebegin "Stopping pulseaudio" + start-stop-daemon --stop --quiet --exec /usr/bin/pulseaudio --pidfile /var/run/pulse/pid + eend $? +} diff --git a/media-sound/pulseaudio/pulseaudio-0.9.6-r2.ebuild b/media-sound/pulseaudio/pulseaudio-0.9.6-r2.ebuild new file mode 100644 index 000000000000..50c5b4d0aab7 --- /dev/null +++ b/media-sound/pulseaudio/pulseaudio-0.9.6-r2.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/pulseaudio-0.9.6-r2.ebuild,v 1.1 2007/10/26 15:28:43 flameeyes Exp $ + +inherit eutils libtool # autotools + +DESCRIPTION="A networked sound server with an advanced plugin system" +HOMEPAGE="http://0pointer.de/lennart/projects/pulseaudio/" +SRC_URI="http://0pointer.de/lennart/projects/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2 GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="alsa avahi caps jack lirc oss tcpd X hal" + +RDEPEND="X? ( x11-libs/libX11 ) + caps? ( sys-libs/libcap ) + >=media-libs/audiofile-0.2.6-r1 + >=media-libs/libsamplerate-0.1.1-r1 + >=media-libs/libsndfile-1.0.10 + >=dev-libs/liboil-0.3.6 + alsa? ( >=media-libs/alsa-lib-1.0.10 ) + >=dev-libs/glib-2.4.0 + avahi? ( >=net-dns/avahi-0.6.12 ) + >=dev-libs/liboil-0.3.0 + jack? ( >=media-sound/jack-audio-connection-kit-0.100 ) + tcpd? ( sys-apps/tcp-wrappers ) + lirc? ( app-misc/lirc ) + hal? ( >=sys-apps/hal-0.5.7 ) + >=sys-apps/baselayout-2.0_rc5 + app-admin/eselect-esd + sys-devel/libtool" # it's a valid RDEPEND, libltdl.so is used +DEPEND="${RDEPEND} + dev-libs/libatomic_ops + dev-util/pkgconfig + dev-util/unifdef" + +# This is for the alsasound init.d script (see bug #155707) +RDEPEND="${RDEPEND} + alsa? ( media-sound/alsa-utils )" + +pkg_setup() { + if use avahi && ! built_with_use net-dns/avahi dbus ; then + echo + eerror "In order to compile pulseaudio with avahi support, you need to have" + eerror "net-dns/avahi emerged with 'dbus' in your USE flag. Please add that" + eerror "flag, re-emerge avahi, and then emerge pulseaudio again." + die "net-dns/avahi is missing the D-Bus bindings." + fi + + enewgroup audio 18 # Just make sure it exists + enewgroup realtime + enewgroup pulse-access + enewgroup pulse + enewuser pulse -1 -1 /var/run/pulse pulse,audio +} + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}/${P}-build.patch" + + # eautoreconf + elibtoolize +} + +src_compile() { + econf \ + --enable-largefile \ + --enable-glib2 \ + --disable-solaris \ + --disable-asyncns \ + $(use_enable oss) \ + $(use_enable alsa) \ + $(use_enable lirc) \ + $(use_enable tcpd tcpwrap) \ + $(use_enable jack) \ + $(use_enable lirc) \ + $(use_enable avahi) \ + $(use_enable hal) \ + $(use_with caps) \ + $(use_with X x) \ + --disable-ltdl-install \ + --localstatedir=/var \ + --with-realtime-group=realtime \ + || die "econf failed" + emake || die "emake failed" +} + +src_install() { + emake -j1 DESTDIR="${D}" install || die "make install failed" + + newconfd "${FILESDIR}/pulseaudio.conf.d" pulseaudio + + use_define() { + local define=${2:-$(echo $1 | tr '[:lower:]' '[:upper:]')} + + use "$1" && echo "-D$define" || echo "-U$define" + } + + unifdef "${FILESDIR}/pulseaudio.init.d-3" \ + $(use_define hal) \ + $(use_define avahi) \ + $(use_define alsa) \ + > "${T}/pulseaudio" + doinitd "${T}/pulseaudio" + + if ! use hal; then + sed -i -e '/module-hal-detect/s:^:#: ; /module-detect/s:^#::' "${D}/etc/pulse/default.pa" + fi + use avahi && sed -i -e '/module-zeroconf-publish/s:^#::' "${D}/etc/pulse/default.pa" + + dohtml -r doc + dodoc README + + # Create the state directory + diropts -o pulse -g pulse -m0755 + keepdir /var/run/pulse +} + +pkg_postinst() { + elog "PulseAudio in Gentoo can use a system-wide pulseaudio daemon." + elog "This support is enabled by starting the pulseaudio init.d ." + elog "To be able to access that you need to be in the group pulse-access." + elog "For more information about system-wide support, please refer to" + elog " http://pulseaudio.org/wiki/SystemWideInstance" + elog + elog "To use the ESounD wrapper while using a system-wide daemon, you also" + elog "need to enable auth-anonymous for the esound-unix module, or to copy" + elog "/var/run/pulse/.esd_auth into each home directory." + elog + elog "If you want to make use of realtime capabilities of PulseAudio" + elog "you should follow the realtime guide to create and set up a realtime" + elog "user group: http://www.gentoo.org/proj/en/desktop/sound/realtime.xml" + elog "Make sure you also have baselayout installed with pam USE flag" + elog "enabled, if you're using the rlimit method." + + eselect esd update --if-unset +} |