Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=71b7a453e08eeb0864f0f374215d5a50f8d0744a
commit 71b7a453e08eeb0864f0f374215d5a50f8d0744a Author: bouleetbil <bouleet...@frogdev.info> Date: Tue Aug 4 21:39:38 2009 +0200 pulseaudio-0.9.15-1-i686 *new package diff --git a/source/multimedia-extra/pulseaudio/FrugalBuild b/source/multimedia-extra/pulseaudio/FrugalBuild new file mode 100644 index 0000000..307f056 --- /dev/null +++ b/source/multimedia-extra/pulseaudio/FrugalBuild @@ -0,0 +1,103 @@ +# Compiling Time: 0.96 SBU +# Maintainer: bouleetbil <bouleet...@frogdev.info> + +pkgname=pulseaudio +pkgver=0.9.15 +pkgrel=1 +pkgdesc="PulseAudio is a sound server with an advanced plugin system" +url="http://pulseaudio.org/" +depends=('speex' 'liboil' 'audiofile' 'libsndfile' 'libtool' 'libatomic_ops' 'libsamplerate' 'flac' 'glib2' \ + 'alsa-lib' 'libtool' 'libasyncns') +makedepends=('avahi' 'gnome-audio' 'bluez-utils' 'lirc' 'jack' 'intltool' 'hal' 'gconf' \ + 'libsm' 'libx11' 'libice' 'libxtst') +groups=('multimedia-extra') +archs=('i686') +up2date="Flasttar http://pulseaudio.org/wiki/DownloadPulseAudio#Sourcecode" +source=(http://0pointer.de/lennart/projects/$pkgname/$pkgname-$pkgver.tar.gz \ + rc.pulseaudio pulseaudio.sysconfig README.Frugalware \ + pulseaudio-0.9.15-CVE-2009-1894.patch automake111.diff) +sha1sums=('56fb71e4e88c901d9941d85bfe142612c30e5c8e' \ + '484a26a79dc9c66807fcd3edb91ea98513cc95cb' \ + 'e95d0cd97ae6b68029487080ba460c412afa0ca0' \ + '6d77f76a4d5566001b8a3214232b19f037c751d7' \ + '1b9106e52c063e83b8577434360edaf3be81351d' \ + 'd59ff20515cb3109bed4e1b30ca7eb93f411d6a9') + +subpkgs=("pulseaudio-hal" "pulseaudio-lirc" "pulseaudio-esd" "pulseaudio-bluetooth" "pulseaudio-x11" \ + "pulseaudio-avahi" "pulseaudio-jack" "pulseaudio-gconf") +subdescs=('HAL device detection module for PulseAudio sound server' 'lirc module for PulseAudio sound server' \ + 'PulseAudio ESD compatibility layer' 'PulseAudio bluetooth' 'x11 module for PulseAudio sound server' \ + 'avahi module for PulseAudio sound server' 'jack module for PulseAudio sound server' \ + 'gconf module for PulseAudio sound server') +subrodepends=("pulseaudio=$pkgver hal" "pulseaudio=$pkgver lirc" "pulseaudio=$pkgver" \ + "pulseaudio=$pkgver bluez-utils" "pulseaudio=$pkgver libx11 libxtst" "pulseaudio=$pkgver avahi" \ + "pulseaudio=$pkgver jack" "pulseaudio=$pkgver gconf") +subgroups=('multimedia-extra' 'multimedia-extra' 'multimedia-extra' 'multimedia-extra' \ + 'xmultimedia-extra' 'multimedia-extra' 'multimedia-extra' 'gnome-extra') +subarchs=('i686' 'i686' 'i686' 'i686' 'i686' 'i686' 'i686' 'i686') + +Fconfopts="$Fconfopts --with-system-user=pulse --with-realtime-group=realtime \ + --with-access-group=pulse-access \ + --with-system-group=pulse --disable-polkit --localstatedir=/var \ + --disable-per-user-esound-socket --disable-solaris --enable-largefile \ + --disable-static --enable-x11" + +install=$pkgname.install +backup=(etc/pulse/client.conf etc/pulse/daemon.conf \ + etc/pulse/default.pa etc/pulse/system.pa) + +build() { + Fcd + Fpatchall + Fautoreconf + libtoolize --copy --force --install || Fdie + Fmake || Fdie + Fmakeinstall + + Fsplit $pkgname-hal usr/lib/pulse-$pkgver/modules/module-hal-detect.so + + Fsplit $pkgname-lirc usr/lib/pulse-$pkgver/modules/module-lirc.so + + Fsplit $pkgname-esd usr/bin/esdcompat + Fsplit $pkgname-esd usr/lib/pulse-$pkgver/modules/libprotocol-esound.so + Fsplit $pkgname-esd usr/lib/pulse-$pkgver/modules/module-esound-compat-spawnfd.so + Fsplit $pkgname-esd usr/lib/pulse-$pkgver/modules/module-esound-compat-spawnpid.so + Fsplit $pkgname-esd usr/lib/pulse-$pkgver/modules/module-esound-protocol-tcp.so + Fsplit $pkgname-esd usr/lib/pulse-$pkgver/modules/module-esound-protocol-unix.so + Fsplit $pkgname-esd usr/lib/pulse-$pkgver/modules/module-esound-sink.so + + Fsplit $pkgname-bluetooth usr/lib/pulse-$pkgver/modules/libbluetooth-ipc.so + Fsplit $pkgname-bluetooth usr/lib/pulse-$pkgver/modules/libbluetooth-sbc.so + Fsplit $pkgname-bluetooth usr/lib/pulse-$pkgver/modules/module-bluetooth-device.so + Fsplit $pkgname-bluetooth usr/lib/pulse-$pkgver/modules/module-bluetooth-discover.so + Fsplit $pkgname-bluetooth usr/lib/pulse-$pkgver/modules/module-bluetooth-proximity.so + Fsplit $pkgname-bluetooth usr/libexec/pulse/proximity-helper + + Fsplit $pkgname-x11 usr/lib/pulse-$pkgver/modules/module-x11-xsmp.so + Fsplit $pkgname-x11 usr/lib/pulse-$pkgver/modules/module-x11-publish.so + Fsplit $pkgname-x11 usr/lib/pulse-$pkgver/modules/module-x11-cork-request.so + Fsplit $pkgname-x11 usr/lib/pulse-$pkgver/modules/module-x11-bell.so + Fsplit $pkgname-x11 usr/bin/pax11publish + Fsplit $pkgname-x11 usr/bin/start-pulseaudio-x11 + Fsplit $pkgname-x11 etc/xdg + + Fsplit $pkgname-avahi usr/lib/pulse-$pkgver/modules/libavahi-wrap.so + Fsplit $pkgname-avahi usr/lib/pulse-$pkgver/modules/module-zeroconf-discover.so + Fsplit $pkgname-avahi usr/lib/pulse-$pkgver/modules/module-zeroconf-publish.so + Fsplit $pkgname-avahi usr/lib/pulse-$pkgver/modules/libraop.so + Fsplit $pkgname-avahi usr/lib/pulse-$pkgver/modules/module-raop-discover.so + Fsplit $pkgname-avahi usr/lib/pulse-$pkgver/modules/module-raop-sink.so + Fsplit $pkgname-avahi usr/lib/libpulse-browse.so.* + + Fsplit $pkgname-jack usr/lib/pulse-$pkgver/modules/module-jack-sink.so + Fsplit $pkgname-jack usr/lib/pulse-$pkgver/modules/module-jack-source.so + + Fsplit $pkgname-gconf usr/lib/pulse-$pkgver/modules/module-gconf.so + Fsplit $pkgname-gconf usr/libexec/pulse/gconf-helper + + Fmkdir etc/sysconfig + Ffile pulseaudio.sysconfig /etc/sysconfig/pulseaudio + Frcd2 pulseaudio +} + +# optimization OK diff --git a/source/multimedia-extra/pulseaudio/README.Frugalware b/source/multimedia-extra/pulseaudio/README.Frugalware new file mode 100644 index 0000000..7136a49 --- /dev/null +++ b/source/multimedia-extra/pulseaudio/README.Frugalware @@ -0,0 +1,10 @@ +Because PulseAudio can be used as drop-in replacement +for ESD you can fool GNOME to load the PulseAudio +daemon just like the traditional ESD daemon. To achieve +this use the esdcompat script shipped with PulseAudio. +Install pulseaudio-esd : `pacman -S pulseaudio-esd` +Create a symlink from /usr/bin/esd to /usr/bin/esdcompat +For more information on `pulseaudio`, please +refer to http://www.pulseaudio.org/wiki/PerfectSetup + +// vim: ft=asciidoc diff --git a/source/multimedia-extra/pulseaudio/automake111.diff b/source/multimedia-extra/pulseaudio/automake111.diff new file mode 100644 index 0000000..5191ffa --- /dev/null +++ b/source/multimedia-extra/pulseaudio/automake111.diff @@ -0,0 +1,30 @@ +commit da6b15671aaeaffcf56f013e643b7fe0ca994a3f +Author: Lennart Poettering <lennart at poettering.net> +Date: Tue Jun 23 00:55:31 2009 +0200 + + builds-sys: work around automake 1.11 borkage + + As suggested on: + + http://lists.gnu.org/archive/html/automake/2009-06/msg00059.html + +diff --git a/configure.ac b/configure.ac +index 253ade9..2a32c83 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1305,8 +1305,8 @@ fi + + AC_ARG_WITH( + [module-dir], +- AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINORMICRO}/modules/]), +- [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINORMICRO}/modules/"]) ++ AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINORMICRO}/modules]), ++ [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINORMICRO}/modules"]) + + AC_SUBST(modlibexecdir) + + +-- +hooks/post-receive +PulseAudio Sound Server + diff --git a/source/multimedia-extra/pulseaudio/pulseaudio-0.9.15-CVE-2009-1894.patch b/source/multimedia-extra/pulseaudio/pulseaudio-0.9.15-CVE-2009-1894.patch new file mode 100644 index 0000000..729ed91 --- /dev/null +++ b/source/multimedia-extra/pulseaudio/pulseaudio-0.9.15-CVE-2009-1894.patch @@ -0,0 +1,49 @@ +Index: pulseaudio-0.9.15/src/daemon/main.c +=================================================================== +--- pulseaudio-0.9.15.orig/src/daemon/main.c ++++ pulseaudio-0.9.15/src/daemon/main.c +@@ -399,28 +399,6 @@ int main(int argc, char *argv[]) { + pa_log_set_level(PA_LOG_NOTICE); + pa_log_set_flags(PA_LOG_COLORS|PA_LOG_PRINT_FILE|PA_LOG_PRINT_LEVEL, PA_LOG_RESET); + +-#if defined(__linux__) && defined(__OPTIMIZE__) +- /* +- Disable lazy relocations to make usage of external libraries +- more deterministic for our RT threads. We abuse __OPTIMIZE__ as +- a check whether we are a debug build or not. +- */ +- +- if (!getenv("LD_BIND_NOW")) { +- char *rp; +- +- /* We have to execute ourselves, because the libc caches the +- * value of $LD_BIND_NOW on initialization. */ +- +- pa_set_env("LD_BIND_NOW", "1"); +- +- if ((rp = pa_readlink("/proc/self/exe"))) +- pa_assert_se(execv(rp, argv) == 0); +- else +- pa_log_warn("Couldn't read /proc/self/exe, cannot self execute. Running in a chroot()?"); +- } +-#endif +- + #ifdef HAVE_GETUID + real_root = getuid() == 0; + suid_root = !real_root && geteuid() == 0; +Index: pulseaudio-0.9.15/src/Makefile.am +=================================================================== +--- pulseaudio-0.9.15.orig/src/Makefile.am ++++ pulseaudio-0.9.15/src/Makefile.am +@@ -153,9 +153,9 @@ PREOPEN_LIBS = $(modlibexec_LTLIBRARIES) + endif + + if FORCE_PREOPEN +-pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -dlpreopen force $(foreach f,$(PREOPEN_LIBS),-dlpreopen $(f)) ++pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -Wl,-z,now -dlpreopen force $(foreach f,$(PREOPEN_LIBS),-dlpreopen $(f)) + else +-pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -dlopen force $(foreach f,$(PREOPEN_LIBS),-dlopen $(f)) ++pulseaudio_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS) -Wl,-z,now -dlopen force $(foreach f,$(PREOPEN_LIBS),-dlopen $(f)) + endif + + if HAVE_POLKIT diff --git a/source/multimedia-extra/pulseaudio/pulseaudio.sysconfig b/source/multimedia-extra/pulseaudio/pulseaudio.sysconfig new file mode 100644 index 0000000..a71fd38 --- /dev/null +++ b/source/multimedia-extra/pulseaudio/pulseaudio.sysconfig @@ -0,0 +1,6 @@ +# For more see "pulseaudio -h". + +PULSEVERBOSE=0 + +# Startup options +PULSE_OPTS="--log-target=syslog --disallow-module-loading=1 --daemonize --high-priority --log-target=syslog" diff --git a/source/multimedia-extra/pulseaudio/rc.pulseaudio b/source/multimedia-extra/pulseaudio/rc.pulseaudio new file mode 100644 index 0000000..6eb3f46 --- /dev/null +++ b/source/multimedia-extra/pulseaudio/rc.pulseaudio @@ -0,0 +1,51 @@ +#!/bin/bash + +# (c) 2008 bouleetbil <bouleet...@frogdev.info> +# rc.pulseaudio for FrugalWare +# distributed under GPL License + +# chkconfig: 2345 99 02 +# description: sound server with an advanced plugin system. + +source /lib/initscripts/functions +TEXTDOMAIN=pulseaudio +TEXTDOMAINDIR=/lib/initscripts/messages +daemon="pulseaudio" + +actions=(restart start status stop) + +pid="pidof pulseaudio 2> /dev/null" + +#pulseaudio -nC for see the module and configuration +[ -e /etc/sysconfig/pulseaudio ] && . /etc/sysconfig/pulseaudio + + +rc_start() +{ + start_msg + if [ -z "$(eval $pid)" ]; then + /usr/bin/pulseaudio $PULSE_OPTS --verbose=$PULSEVERBOSE -- 2>/dev/null 1>/dev/null + if [ -e /var/run/pulse/.esd_auth ]; then + chmod 640 /var/run/pulse/.esd_auth + fi + if [ -e /var/run/pulse/.pulse-cookie ]; then + chmod 640 /var/run/pulse/.pulse-cookie + fi + ok $? + else + ok 999 + fi +} + +rc_stop() +{ + stop_msg + if [ ! -z "$(eval $pid)" ] ;then + /usr/bin/pulseaudio -k 2>/dev/null 1>/dev/null + ok $? + else + ok 999 + fi +} + +rc_exec $1 _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git