[arch-commits] Commit in xmms2/repos (18 files)

Anatol Pomozov anatolik at archlinux.org
Mon Dec 29 15:26:22 UTC 2014


    Date: Monday, December 29, 2014 @ 16:26:22
  Author: anatolik
Revision: 124844

archrelease: copy trunk to community-staging-i686, community-staging-x86_64

Added:
  xmms2/repos/community-staging-i686/
  xmms2/repos/community-staging-i686/PKGBUILD
    (from rev 124843, xmms2/trunk/PKGBUILD)
  xmms2/repos/community-staging-i686/ffmpeg2.0.patch
    (from rev 124843, xmms2/trunk/ffmpeg2.0.patch)
  xmms2/repos/community-staging-i686/vorbis-albumart.patch
    (from rev 124843, xmms2/trunk/vorbis-albumart.patch)
  xmms2/repos/community-staging-i686/xmms2-helpers.patch
    (from rev 124843, xmms2/trunk/xmms2-helpers.patch)
  xmms2/repos/community-staging-i686/xmms2-ruby-1.9.patch
    (from rev 124843, xmms2/trunk/xmms2-ruby-1.9.patch)
  xmms2/repos/community-staging-i686/xmms2.install
    (from rev 124843, xmms2/trunk/xmms2.install)
  xmms2/repos/community-staging-i686/xmms2d.conf
    (from rev 124843, xmms2/trunk/xmms2d.conf)
  xmms2/repos/community-staging-i686/xmms2d.service
    (from rev 124843, xmms2/trunk/xmms2d.service)
  xmms2/repos/community-staging-x86_64/
  xmms2/repos/community-staging-x86_64/PKGBUILD
    (from rev 124843, xmms2/trunk/PKGBUILD)
  xmms2/repos/community-staging-x86_64/ffmpeg2.0.patch
    (from rev 124843, xmms2/trunk/ffmpeg2.0.patch)
  xmms2/repos/community-staging-x86_64/vorbis-albumart.patch
    (from rev 124843, xmms2/trunk/vorbis-albumart.patch)
  xmms2/repos/community-staging-x86_64/xmms2-helpers.patch
    (from rev 124843, xmms2/trunk/xmms2-helpers.patch)
  xmms2/repos/community-staging-x86_64/xmms2-ruby-1.9.patch
    (from rev 124843, xmms2/trunk/xmms2-ruby-1.9.patch)
  xmms2/repos/community-staging-x86_64/xmms2.install
    (from rev 124843, xmms2/trunk/xmms2.install)
  xmms2/repos/community-staging-x86_64/xmms2d.conf
    (from rev 124843, xmms2/trunk/xmms2d.conf)
  xmms2/repos/community-staging-x86_64/xmms2d.service
    (from rev 124843, xmms2/trunk/xmms2d.service)

------------------------------------------------+
 community-staging-i686/PKGBUILD                |   98 +++++++++++
 community-staging-i686/ffmpeg2.0.patch         |   37 ++++
 community-staging-i686/vorbis-albumart.patch   |  200 +++++++++++++++++++++++
 community-staging-i686/xmms2-helpers.patch     |   13 +
 community-staging-i686/xmms2-ruby-1.9.patch    |   59 ++++++
 community-staging-i686/xmms2.install           |    3 
 community-staging-i686/xmms2d.conf             |   31 +++
 community-staging-i686/xmms2d.service          |   12 +
 community-staging-x86_64/PKGBUILD              |   98 +++++++++++
 community-staging-x86_64/ffmpeg2.0.patch       |   37 ++++
 community-staging-x86_64/vorbis-albumart.patch |  200 +++++++++++++++++++++++
 community-staging-x86_64/xmms2-helpers.patch   |   13 +
 community-staging-x86_64/xmms2-ruby-1.9.patch  |   59 ++++++
 community-staging-x86_64/xmms2.install         |    3 
 community-staging-x86_64/xmms2d.conf           |   31 +++
 community-staging-x86_64/xmms2d.service        |   12 +
 16 files changed, 906 insertions(+)

Copied: xmms2/repos/community-staging-i686/PKGBUILD (from rev 124843, xmms2/trunk/PKGBUILD)
===================================================================
--- community-staging-i686/PKGBUILD	                        (rev 0)
+++ community-staging-i686/PKGBUILD	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,98 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch at gmail.com>
+
+pkgname=xmms2
+pkgver=0.8DrO_o
+pkgrel=32
+pkgdesc="complete rewrite of the popular music player"
+arch=('i686' 'x86_64')
+url="http://xmms2.org/"
+license=('LGPL')
+backup=('etc/conf.d/xmms2d.conf')
+depends=('sqlite' 'libmad')
+makedepends=('alsa-lib' 'boost' 'curl' 'faad2' 'ffmpeg' 'fftw' 'flac' 'glib2'
+	'jack' 'libao' 'libmms' 'libmpcdec' 'libofa' 'libsamplerate' 'libshout'
+	'libdiscid' 'libcdio-paranoia'
+	'libvorbis' 'libxml2' 'mpg123' 'perl' 'pulseaudio' 'pyrex'
+	'ruby' 'smbclient' 'speex' 'wavpack' 'libmodplug' 'python' 'python2' 'libgme' 'avahi')
+optdepends=('alsa-lib: ALSA audio output'
+	    'avahi: announce xmms2d via bonjour/mDNS/zeroconf'
+	    'boost: C++ language bindings'
+	    'curl: play HTTP streams'
+	    'faad2: AAC support'
+	    'ffmpeg: WMA, avcodec & avformat support'
+	    'fftw: calculations for visualization'
+	    'flac: FLAC support'
+	    'jack: JACK audio output'
+	    'libao: liboa audio output'
+	    'libgme: game-music-emu support'
+	    'libdiscid: cdda support'
+	    'libcdio-paranoia: cdda support'
+	    'libofa: MusicDNS fingerprinting'
+	    'libmms: play MMS streams'
+	    'libmodplug: to play MOD files'
+	    'libmpcdec: Musepack support'
+	    'libsamplerate: vocoder support'
+	    'libshout: Icecast audio output'
+	    'libvorbis: Ogg Vorbis support'
+	    'libxml2: XSPF and podcast support'
+	    'mpg123: alternative MP3 plugin'
+	    'perl: Perl language bindings'
+	    'pulseaudio: PulseAudio audio output'
+	    'pyrex: Python language bindings'
+	    'ruby: Ruby language bindings'
+	    'smbclient: direct CIFS/SMB access'
+	    'speex: Speex support'
+	    'wavpack: WavPack support')
+#	    'sidplay: to play a Commodore 64 music files AKA zaks'
+# we do not have sidplay 2 series in repos; also it's
+# somehow connected with resid i guess(not in repos also)
+conflicts=('xmms2-devel')
+install=xmms2.install
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2"
+	"xmms2d.conf"
+	"xmms2d.service"
+	"ffmpeg2.0.patch")
+md5sums=('84d5c05a70bfd31ed392a4e3f701eaa3'
+         'af13c937bf3c86b77ae6820107aab9b8'
+         '47e68461589578e8a99857746c5b6f29'
+         'da84ec58c5711f3c4ecd932c3e6642d6')
+
+prepare() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  patch -Np1 -i ../ffmpeg2.0.patch
+
+  # python2 fix
+  # sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' waf
+  sed -i 's|#include <cdio/cdda.h>|#include <cdio/paranoia/cdda.h>|' src/plugins/cdda/cdda.c
+  sed -i 's|libsmbclient.h|samba-4.0/libsmbclient.h|' src/plugins/samba/{samba.c,wscript}
+  sed -i 's|modplug.h|libmodplug/modplug.h|' src/plugins/modplug/modplug.c
+
+  # patch waf checks for ruby 2.2
+  # https://code.google.com/p/waf/issues/detail?id=1524
+  ./waf --help > /dev/null # an ugly way to unpack/patch waf bundle
+  sed -i 's| Config::| RbConfig::|' .waf*/waflib/Tools/ruby.py
+}
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  ./waf configure --prefix=/usr \
+	--with-optionals=python,launcher,xmmsclient++,xmmsclient++-glib,perl,ruby,nycli,pixmaps,et,mdns,medialib-updater \
+	--with-ruby-archdir=`ruby -e 'puts RbConfig::CONFIG["vendorarchdir"]'` \
+	--with-ruby-libdir=`ruby -e 'puts RbConfig::CONFIG["vendorlibdir"]'` \
+	--with-perl-archdir=`perl -V:installvendorarch | cut -f2 -d\'`
+  ./waf build
+}
+
+package() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+
+  ./waf --destdir=${pkgdir} install
+
+  PYTHON=/usr/bin/python2 ./waf configure --prefix=/usr --with-optionals=python --without-xmms2d
+  ./waf build
+  ./waf --destdir=${pkgdir} install
+
+  install -Dm0644 $srcdir/xmms2d.conf ${pkgdir}/etc/conf.d/xmms2d.conf
+  install -Dm0644 $srcdir/xmms2d.service $pkgdir/usr/lib/systemd/system/xmms2d.service
+}

Copied: xmms2/repos/community-staging-i686/ffmpeg2.0.patch (from rev 124843, xmms2/trunk/ffmpeg2.0.patch)
===================================================================
--- community-staging-i686/ffmpeg2.0.patch	                        (rev 0)
+++ community-staging-i686/ffmpeg2.0.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,37 @@
+diff -rupN a/src/plugins/avcodec/avcodec.c b/src/plugins/avcodec/avcodec.c
+--- a/src/plugins/avcodec/avcodec.c	2011-10-20 21:26:08.000000000 +0200
++++ b/src/plugins/avcodec/avcodec.c	2013-07-22 17:17:53.098385978 +0200
+@@ -134,7 +134,6 @@ xmms_avcodec_init (xmms_xform_t *xform)
+ 
+ 	xmms_xform_private_data_set (xform, data);
+ 
+-	avcodec_init ();
+ 	avcodec_register_all ();
+ 
+ 	mimetype = xmms_xform_indata_get_str (xform,
+@@ -200,7 +199,7 @@ xmms_avcodec_init (xmms_xform_t *xform)
+ 		}
+ 	}
+ 
+-	data->codecctx = avcodec_alloc_context ();
++	data->codecctx = avcodec_alloc_context3 (NULL);
+ 	data->codecctx->sample_rate = data->samplerate;
+ 	data->codecctx->channels = data->channels;
+ 	data->codecctx->bit_rate = data->bitrate;
+@@ -211,7 +210,7 @@ xmms_avcodec_init (xmms_xform_t *xform)
+ 	data->codecctx->codec_id = codec->id;
+ 	data->codecctx->codec_type = codec->type;
+ 
+-	if (avcodec_open (data->codecctx, codec) < 0) {
++	if (avcodec_open2 (data->codecctx, codec, NULL) < 0) {
+ 		XMMS_DBG ("Opening decoder '%s' failed", codec->name);
+ 		goto err;
+ 	} else {
+diff -rupN a/src/plugins/avcodec/avcodec_compat.h b/src/plugins/avcodec/avcodec_compat.h
+--- a/src/plugins/avcodec/avcodec_compat.h	2011-10-20 21:26:08.000000000 +0200
++++ b/src/plugins/avcodec/avcodec_compat.h	2013-07-22 17:16:15.841723560 +0200
+@@ -65,3 +65,4 @@ typedef struct AVPacket {
+ # define AVMEDIA_TYPE_AUDIO CODEC_TYPE_AUDIO
+ #endif
+ 
++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000

Copied: xmms2/repos/community-staging-i686/vorbis-albumart.patch (from rev 124843, xmms2/trunk/vorbis-albumart.patch)
===================================================================
--- community-staging-i686/vorbis-albumart.patch	                        (rev 0)
+++ community-staging-i686/vorbis-albumart.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,200 @@
+From f38882beb1c9b4f3e3c63ac7d65603ad5917cd9d Mon Sep 17 00:00:00 2001
+From: Brad Jorsch <anomie at users.sourceforge.net>
+Date: Tue, 09 Mar 2010 15:41:33 +0000
+Subject: OTHER: Add support for METADATA_BLOCK_PICTURE in Vorbis plugin
+
+Bug-Debian: http://bugs.debian.org/565479
+---
+diff --git a/src/plugins/vorbis_common/common.c b/src/plugins/vorbis_common/common.c
+index c1f4ef9..fc4ff1b 100644
+--- a/src/plugins/vorbis_common/common.c
++++ b/src/plugins/vorbis_common/common.c
+@@ -243,6 +243,74 @@ get_replaygain (xmms_xform_t *xform, vorbis_comment *vc)
+ 	}
+ }
+ 
++static void
++handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
++{
++	guint32 typ, mime_len, desc_len, img_len;
++	guchar *pos, *end, *mime_data, *img_data;
++	gchar hash[33];
++
++	pos = value;
++	end = value + len;
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	typ = GUINT32_FROM_BE (*(guint32 *)pos);
++	if (typ != 0 && typ != 3) {
++		XMMS_DBG ("Picture type %d not handled", typ);
++		return;
++	}
++	pos += 4;
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	mime_len = GUINT32_FROM_BE (*(guint32 *)pos);
++	pos += 4;
++	mime_data = pos;
++	pos += mime_len;
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	desc_len = GUINT32_FROM_BE (*(guint32 *)pos);
++	pos += 4;
++	pos += desc_len;
++
++	pos += 4; /* width */
++	pos += 4; /* height */
++	pos += 4; /* depth */
++	pos += 4; /* indexed palette length */
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	img_len = GUINT32_FROM_BE (*(guint32 *)pos);
++	pos += 4;
++	img_data = pos;
++
++	if (img_data + img_len > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++
++	if (xmms_bindata_plugin_add ((const guchar *)img_data, img_len, hash)) {
++		const gchar *metakey;
++
++		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT;
++		xmms_xform_metadata_set_str (xform, metakey, hash);
++
++		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT_MIME;
++		mime_data[mime_len] = '\0';
++		xmms_xform_metadata_set_str (xform, metakey, mime_data);
++	}
++}
++
+ /* note that "key" is NOT NUL-terminated here,
+  * but "value" is.
+  */
+@@ -253,6 +321,14 @@ handle_comment (xmms_xform_t *xform,
+ {
+ 	gint i;
+ 
++	if (!g_ascii_strncasecmp (key, "METADATA_BLOCK_PICTURE", key_len)) {
++		gsize dlen;
++		gchar *dvalue = g_base64_decode (value, &dlen);
++		handle_image_comment (xform, dvalue, dlen);
++		g_free (dvalue);
++		return;
++	}
++
+ 	for (i = 0; i < G_N_ELEMENTS (properties); i++) {
+ 		if (key_len != strlen (properties[i].vname))
+ 			continue;
+--
+cgit v0.8.3.4
+
+
+From d8273630bd92ecea581240ae93c6795cc538d076 Mon Sep 17 00:00:00 2001
+From: Erik Massop <e.massop at hccnet.nl>
+Date: Tue, 09 Mar 2010 15:45:03 +0000
+Subject: OTHER: Add Brad Jorsch to AUTHORS, disable Vorbis albumart for glib < 2.12
+
+(Name found using e-mail address at http://sourceforge.net/users/anomie )
+---
+diff --git a/AUTHORS b/AUTHORS
+index f2ef9af..7331d4b 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -146,6 +146,10 @@ N: Johannes Jordan
+ E: ypnos at lanrules.de
+ D: Visualization
+ 
++N: Brad Jorsch
++E: anomie at users.sourceforge.net
++D: Support for front picture from Vorbis.
++
+ N: Daniel Kamiński
+ E: maniel.rulez at gmail.com
+ D: mlib remove command in cli, Ruby fixes.
+diff --git a/src/plugins/vorbis_common/common.c b/src/plugins/vorbis_common/common.c
+index fc4ff1b..ab1dc75 100644
+--- a/src/plugins/vorbis_common/common.c
++++ b/src/plugins/vorbis_common/common.c
+@@ -27,6 +27,7 @@
+ #include "xmms/xmms_sample.h"
+ #include "xmms/xmms_log.h"
+ #include "xmms/xmms_medialib.h"
++#include "xmms/xmms_bindata.h"
+ 
+ #include <glib.h>
+ 
+@@ -244,12 +245,22 @@ get_replaygain (xmms_xform_t *xform, vorbis_comment *vc)
+ }
+ 
+ static void
+-handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
++handle_image_comment (xmms_xform_t *xform, const gchar *encoded_value)
+ {
++	gsize len;
++	guchar *value;
++
+ 	guint32 typ, mime_len, desc_len, img_len;
+ 	guchar *pos, *end, *mime_data, *img_data;
+ 	gchar hash[33];
+ 
++#if GLIB_CHECK_VERSION(2,12,0)
++	value = g_base64_decode (encoded_value, &len);
++#else
++	/* TODO: Implement/backport base64 decoding */
++	return;
++#endif
++
+ 	pos = value;
+ 	end = value + len;
+ 
+@@ -299,7 +310,7 @@ handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
+ 		return;
+ 	}
+ 
+-	if (xmms_bindata_plugin_add ((const guchar *)img_data, img_len, hash)) {
++	if (xmms_bindata_plugin_add (img_data, img_len, hash)) {
+ 		const gchar *metakey;
+ 
+ 		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT;
+@@ -307,8 +318,10 @@ handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
+ 
+ 		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT_MIME;
+ 		mime_data[mime_len] = '\0';
+-		xmms_xform_metadata_set_str (xform, metakey, mime_data);
++		xmms_xform_metadata_set_str (xform, metakey, (gchar *)mime_data);
+ 	}
++
++	g_free (value);
+ }
+ 
+ /* note that "key" is NOT NUL-terminated here,
+@@ -322,10 +335,7 @@ handle_comment (xmms_xform_t *xform,
+ 	gint i;
+ 
+ 	if (!g_ascii_strncasecmp (key, "METADATA_BLOCK_PICTURE", key_len)) {
+-		gsize dlen;
+-		gchar *dvalue = g_base64_decode (value, &dlen);
+-		handle_image_comment (xform, dvalue, dlen);
+-		g_free (dvalue);
++		handle_image_comment (xform, value);
+ 		return;
+ 	}
+ 
+--
+cgit v0.8.3.4
+
+

Copied: xmms2/repos/community-staging-i686/xmms2-helpers.patch (from rev 124843, xmms2/trunk/xmms2-helpers.patch)
===================================================================
--- community-staging-i686/xmms2-helpers.patch	                        (rev 0)
+++ community-staging-i686/xmms2-helpers.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,13 @@
+diff -wbBur xmms2-0.5DrLecter/src/include/xmmsclient/xmmsclient++/helpers.h xmms2-0.5DrLecter.my/src/include/xmmsclient/xmmsclient++/helpers.h
+--- xmms2-0.5DrLecter/src/include/xmmsclient/xmmsclient++/helpers.h	2008-06-15 21:31:38.000000000 +0400
++++ xmms2-0.5DrLecter.my/src/include/xmmsclient/xmmsclient++/helpers.h	2008-06-18 14:22:24.000000000 +0400
+@@ -33,6 +33,8 @@
+ #include <list>
+ #include <vector>
+ 
++#include <linux/limits.h>
++
+ namespace Xmms
+ {
+ 
+

Copied: xmms2/repos/community-staging-i686/xmms2-ruby-1.9.patch (from rev 124843, xmms2/trunk/xmms2-ruby-1.9.patch)
===================================================================
--- community-staging-i686/xmms2-ruby-1.9.patch	                        (rev 0)
+++ community-staging-i686/xmms2-ruby-1.9.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,59 @@
+diff -wbBur xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_collection.c xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_collection.c
+--- xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_collection.c	2009-04-21 17:51:11.000000000 +0000
++++ xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_collection.c	2009-09-14 09:13:19.000000000 +0000
+@@ -241,10 +241,10 @@
+ 	COLL_METHOD_HANDLER_HEADER
+ 
+ 	rb_ary = RARRAY (ids);
+-	ary = malloc (sizeof (unsigned int *) * (rb_ary->len + 1));
++	ary = malloc (sizeof (unsigned int *) * (RARRAYLEN(rb_ary) + 1));
+ 
+-	for (i = 0; i < rb_ary->len; i++)
+-		ary[i] = NUM2UINT (rb_ary->ptr[i]);
++	for (i = 0; i < RARRAYLEN(rb_ary); i++)
++		ary[i] = NUM2UINT (RARRAY_PTR(rb_ary)[i]);
+ 
+ 	ary[i] = 0;
+ 
+diff -wbBur xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_xmmsclient.c xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_xmmsclient.c
+--- xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_xmmsclient.c	2009-04-21 17:51:11.000000000 +0000
++++ xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_xmmsclient.c	2009-09-14 09:14:51.000000000 +0000
+@@ -1421,10 +1421,10 @@
+ 	if (!NIL_P (rb_check_array_type (value))) {
+ 		struct RArray *ary = RARRAY (value);
+ 
+-		ret = malloc (sizeof (char *) * (ary->len + 1));
++		ret = malloc (sizeof (char *) * (RARRAYLEN(ary) + 1));
+ 
+-		for (i = 0; i < ary->len; i++)
+-			ret[i] = StringValuePtr (ary->ptr[i]);
++		for (i = 0; i < RARRAYLEN(ary); i++)
++			ret[i] = StringValuePtr (RARRAY_PTR(ary)[i]);
+ 
+ 		ret[i] = NULL;
+ 	} else {
+@@ -1451,10 +1451,10 @@
+ 		struct RArray *ary = RARRAY (value);
+ 		int i;
+ 
+-		for (i = 0; i < ary->len; i++) {
++		for (i = 0; i < RARRAYLEN(ary); i++) {
+ 			xmmsv_t *elem;
+ 
+-			elem = xmmsv_new_string (StringValuePtr (ary->ptr[i]));
++			elem = xmmsv_new_string (StringValuePtr (RARRAY_PTR(ary)[i]));
+ 			xmmsv_list_append (list, elem);
+ 			xmmsv_unref (elem);
+ 		}
+diff -wbBur xmms2-0.6DrMattDestruction/src/include/xmmsclient/xmmsclient++/helpers.h xmms2-0.6DrMattDestruction.my/src/include/xmmsclient/xmmsclient++/helpers.h
+--- xmms2-0.6DrMattDestruction/src/include/xmmsclient/xmmsclient++/helpers.h	2009-04-21 17:51:11.000000000 +0000
++++ xmms2-0.6DrMattDestruction.my/src/include/xmmsclient/xmmsclient++/helpers.h	2009-09-14 09:00:11.000000000 +0000
+@@ -33,6 +33,8 @@
+ #include <list>
+ #include <vector>
+ 
++#include <linux/limits.h>
++
+ namespace Xmms
+ {
+ 

Copied: xmms2/repos/community-staging-i686/xmms2.install (from rev 124843, xmms2/trunk/xmms2.install)
===================================================================
--- community-staging-i686/xmms2.install	                        (rev 0)
+++ community-staging-i686/xmms2.install	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,3 @@
+pre_install() {
+  echo "-- DO NOT FORGET edit /etc/conf.d/xmms2.conf!"
+}

Copied: xmms2/repos/community-staging-i686/xmms2d.conf (from rev 124843, xmms2/trunk/xmms2d.conf)
===================================================================
--- community-staging-i686/xmms2d.conf	                        (rev 0)
+++ community-staging-i686/xmms2d.conf	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,31 @@
+#
+# xmms2-launcher cmdline parameters
+#
+XMMS2_PARAMETERS=""
+
+#
+# xmms2 user
+# You may want to add user to run xmms or use your username
+#
+XMMS2_USER="xmms2user"
+
+#
+# If you set XMMS2_USER to a different user than the one who will be controlling
+# xmms2d using xmms2 clients, make sure that the clients are aware of the path to
+# xmms2d's IPC socket, or they might not be able to connect. On failure to connect
+# some clients will try to run xmms2d themselves. These xmms2d instances will of
+# course run as the user running the client, and not as the one configured below.
+#
+# If an IPC path is specified on the command line to xmms2d (using
+# XMMS2_PARAMETERS="-i tcp://127.0.0.1:9667"
+# for instance) that will be used. If not, xmms2d will use the path from its
+# configuration file which is typically in ~/.config/xmms2/xmms2.conf. If this
+# fails, a unix socket at /tmp/xmms-ipc-[username] will be used, where username
+# is of the user starting xmms2d.
+#
+# Clients typically try to get the ipc path from the XMMS_PATH environment variable,
+# (which might be set by adding say 'export XMMS_PATH="tcp://127.0.0.1:9667"' to
+# ~/.profile). If this fails they can check their configuration file (if they have
+# one) and finally use unix:///tmp/xmms-ipc-[username], where username is of the user
+# starting the client. Upon failing to connect some will try to start xmms2d themselves.
+#

Copied: xmms2/repos/community-staging-i686/xmms2d.service (from rev 124843, xmms2/trunk/xmms2d.service)
===================================================================
--- community-staging-i686/xmms2d.service	                        (rev 0)
+++ community-staging-i686/xmms2d.service	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,12 @@
+[Unit]
+Description=XMMS2 daemon
+After=network.target remote-fs.target nss-lookup.target
+
+[Service]
+Type=forking
+EnvironmentFile=/etc/conf.d/xmms2d.conf
+ExecStart=/bin/su -c '/usr/bin/xmms2-launcher $XMMS2_PARAMETERS &>/dev/null' - $XMMS2_USER
+ExecStop=/bin/su -c '/usr/bin/xmms2 quit &>/dev/null' - $XMMS2_USER
+
+[Install]
+WantedBy=multi-user.target

Copied: xmms2/repos/community-staging-x86_64/PKGBUILD (from rev 124843, xmms2/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,98 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch at gmail.com>
+
+pkgname=xmms2
+pkgver=0.8DrO_o
+pkgrel=32
+pkgdesc="complete rewrite of the popular music player"
+arch=('i686' 'x86_64')
+url="http://xmms2.org/"
+license=('LGPL')
+backup=('etc/conf.d/xmms2d.conf')
+depends=('sqlite' 'libmad')
+makedepends=('alsa-lib' 'boost' 'curl' 'faad2' 'ffmpeg' 'fftw' 'flac' 'glib2'
+	'jack' 'libao' 'libmms' 'libmpcdec' 'libofa' 'libsamplerate' 'libshout'
+	'libdiscid' 'libcdio-paranoia'
+	'libvorbis' 'libxml2' 'mpg123' 'perl' 'pulseaudio' 'pyrex'
+	'ruby' 'smbclient' 'speex' 'wavpack' 'libmodplug' 'python' 'python2' 'libgme' 'avahi')
+optdepends=('alsa-lib: ALSA audio output'
+	    'avahi: announce xmms2d via bonjour/mDNS/zeroconf'
+	    'boost: C++ language bindings'
+	    'curl: play HTTP streams'
+	    'faad2: AAC support'
+	    'ffmpeg: WMA, avcodec & avformat support'
+	    'fftw: calculations for visualization'
+	    'flac: FLAC support'
+	    'jack: JACK audio output'
+	    'libao: liboa audio output'
+	    'libgme: game-music-emu support'
+	    'libdiscid: cdda support'
+	    'libcdio-paranoia: cdda support'
+	    'libofa: MusicDNS fingerprinting'
+	    'libmms: play MMS streams'
+	    'libmodplug: to play MOD files'
+	    'libmpcdec: Musepack support'
+	    'libsamplerate: vocoder support'
+	    'libshout: Icecast audio output'
+	    'libvorbis: Ogg Vorbis support'
+	    'libxml2: XSPF and podcast support'
+	    'mpg123: alternative MP3 plugin'
+	    'perl: Perl language bindings'
+	    'pulseaudio: PulseAudio audio output'
+	    'pyrex: Python language bindings'
+	    'ruby: Ruby language bindings'
+	    'smbclient: direct CIFS/SMB access'
+	    'speex: Speex support'
+	    'wavpack: WavPack support')
+#	    'sidplay: to play a Commodore 64 music files AKA zaks'
+# we do not have sidplay 2 series in repos; also it's
+# somehow connected with resid i guess(not in repos also)
+conflicts=('xmms2-devel')
+install=xmms2.install
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2"
+	"xmms2d.conf"
+	"xmms2d.service"
+	"ffmpeg2.0.patch")
+md5sums=('84d5c05a70bfd31ed392a4e3f701eaa3'
+         'af13c937bf3c86b77ae6820107aab9b8'
+         '47e68461589578e8a99857746c5b6f29'
+         'da84ec58c5711f3c4ecd932c3e6642d6')
+
+prepare() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  patch -Np1 -i ../ffmpeg2.0.patch
+
+  # python2 fix
+  # sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' waf
+  sed -i 's|#include <cdio/cdda.h>|#include <cdio/paranoia/cdda.h>|' src/plugins/cdda/cdda.c
+  sed -i 's|libsmbclient.h|samba-4.0/libsmbclient.h|' src/plugins/samba/{samba.c,wscript}
+  sed -i 's|modplug.h|libmodplug/modplug.h|' src/plugins/modplug/modplug.c
+
+  # patch waf checks for ruby 2.2
+  # https://code.google.com/p/waf/issues/detail?id=1524
+  ./waf --help > /dev/null # an ugly way to unpack/patch waf bundle
+  sed -i 's| Config::| RbConfig::|' .waf*/waflib/Tools/ruby.py
+}
+
+build() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+  ./waf configure --prefix=/usr \
+	--with-optionals=python,launcher,xmmsclient++,xmmsclient++-glib,perl,ruby,nycli,pixmaps,et,mdns,medialib-updater \
+	--with-ruby-archdir=`ruby -e 'puts RbConfig::CONFIG["vendorarchdir"]'` \
+	--with-ruby-libdir=`ruby -e 'puts RbConfig::CONFIG["vendorlibdir"]'` \
+	--with-perl-archdir=`perl -V:installvendorarch | cut -f2 -d\'`
+  ./waf build
+}
+
+package() {
+  cd ${srcdir}/${pkgname}-${pkgver}
+
+  ./waf --destdir=${pkgdir} install
+
+  PYTHON=/usr/bin/python2 ./waf configure --prefix=/usr --with-optionals=python --without-xmms2d
+  ./waf build
+  ./waf --destdir=${pkgdir} install
+
+  install -Dm0644 $srcdir/xmms2d.conf ${pkgdir}/etc/conf.d/xmms2d.conf
+  install -Dm0644 $srcdir/xmms2d.service $pkgdir/usr/lib/systemd/system/xmms2d.service
+}

Copied: xmms2/repos/community-staging-x86_64/ffmpeg2.0.patch (from rev 124843, xmms2/trunk/ffmpeg2.0.patch)
===================================================================
--- community-staging-x86_64/ffmpeg2.0.patch	                        (rev 0)
+++ community-staging-x86_64/ffmpeg2.0.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,37 @@
+diff -rupN a/src/plugins/avcodec/avcodec.c b/src/plugins/avcodec/avcodec.c
+--- a/src/plugins/avcodec/avcodec.c	2011-10-20 21:26:08.000000000 +0200
++++ b/src/plugins/avcodec/avcodec.c	2013-07-22 17:17:53.098385978 +0200
+@@ -134,7 +134,6 @@ xmms_avcodec_init (xmms_xform_t *xform)
+ 
+ 	xmms_xform_private_data_set (xform, data);
+ 
+-	avcodec_init ();
+ 	avcodec_register_all ();
+ 
+ 	mimetype = xmms_xform_indata_get_str (xform,
+@@ -200,7 +199,7 @@ xmms_avcodec_init (xmms_xform_t *xform)
+ 		}
+ 	}
+ 
+-	data->codecctx = avcodec_alloc_context ();
++	data->codecctx = avcodec_alloc_context3 (NULL);
+ 	data->codecctx->sample_rate = data->samplerate;
+ 	data->codecctx->channels = data->channels;
+ 	data->codecctx->bit_rate = data->bitrate;
+@@ -211,7 +210,7 @@ xmms_avcodec_init (xmms_xform_t *xform)
+ 	data->codecctx->codec_id = codec->id;
+ 	data->codecctx->codec_type = codec->type;
+ 
+-	if (avcodec_open (data->codecctx, codec) < 0) {
++	if (avcodec_open2 (data->codecctx, codec, NULL) < 0) {
+ 		XMMS_DBG ("Opening decoder '%s' failed", codec->name);
+ 		goto err;
+ 	} else {
+diff -rupN a/src/plugins/avcodec/avcodec_compat.h b/src/plugins/avcodec/avcodec_compat.h
+--- a/src/plugins/avcodec/avcodec_compat.h	2011-10-20 21:26:08.000000000 +0200
++++ b/src/plugins/avcodec/avcodec_compat.h	2013-07-22 17:16:15.841723560 +0200
+@@ -65,3 +65,4 @@ typedef struct AVPacket {
+ # define AVMEDIA_TYPE_AUDIO CODEC_TYPE_AUDIO
+ #endif
+ 
++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000

Copied: xmms2/repos/community-staging-x86_64/vorbis-albumart.patch (from rev 124843, xmms2/trunk/vorbis-albumart.patch)
===================================================================
--- community-staging-x86_64/vorbis-albumart.patch	                        (rev 0)
+++ community-staging-x86_64/vorbis-albumart.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,200 @@
+From f38882beb1c9b4f3e3c63ac7d65603ad5917cd9d Mon Sep 17 00:00:00 2001
+From: Brad Jorsch <anomie at users.sourceforge.net>
+Date: Tue, 09 Mar 2010 15:41:33 +0000
+Subject: OTHER: Add support for METADATA_BLOCK_PICTURE in Vorbis plugin
+
+Bug-Debian: http://bugs.debian.org/565479
+---
+diff --git a/src/plugins/vorbis_common/common.c b/src/plugins/vorbis_common/common.c
+index c1f4ef9..fc4ff1b 100644
+--- a/src/plugins/vorbis_common/common.c
++++ b/src/plugins/vorbis_common/common.c
+@@ -243,6 +243,74 @@ get_replaygain (xmms_xform_t *xform, vorbis_comment *vc)
+ 	}
+ }
+ 
++static void
++handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
++{
++	guint32 typ, mime_len, desc_len, img_len;
++	guchar *pos, *end, *mime_data, *img_data;
++	gchar hash[33];
++
++	pos = value;
++	end = value + len;
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	typ = GUINT32_FROM_BE (*(guint32 *)pos);
++	if (typ != 0 && typ != 3) {
++		XMMS_DBG ("Picture type %d not handled", typ);
++		return;
++	}
++	pos += 4;
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	mime_len = GUINT32_FROM_BE (*(guint32 *)pos);
++	pos += 4;
++	mime_data = pos;
++	pos += mime_len;
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	desc_len = GUINT32_FROM_BE (*(guint32 *)pos);
++	pos += 4;
++	pos += desc_len;
++
++	pos += 4; /* width */
++	pos += 4; /* height */
++	pos += 4; /* depth */
++	pos += 4; /* indexed palette length */
++
++	if (pos + 4 > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++	img_len = GUINT32_FROM_BE (*(guint32 *)pos);
++	pos += 4;
++	img_data = pos;
++
++	if (img_data + img_len > end) {
++		XMMS_DBG ("Malformed picture comment");
++		return;
++	}
++
++	if (xmms_bindata_plugin_add ((const guchar *)img_data, img_len, hash)) {
++		const gchar *metakey;
++
++		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT;
++		xmms_xform_metadata_set_str (xform, metakey, hash);
++
++		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT_MIME;
++		mime_data[mime_len] = '\0';
++		xmms_xform_metadata_set_str (xform, metakey, mime_data);
++	}
++}
++
+ /* note that "key" is NOT NUL-terminated here,
+  * but "value" is.
+  */
+@@ -253,6 +321,14 @@ handle_comment (xmms_xform_t *xform,
+ {
+ 	gint i;
+ 
++	if (!g_ascii_strncasecmp (key, "METADATA_BLOCK_PICTURE", key_len)) {
++		gsize dlen;
++		gchar *dvalue = g_base64_decode (value, &dlen);
++		handle_image_comment (xform, dvalue, dlen);
++		g_free (dvalue);
++		return;
++	}
++
+ 	for (i = 0; i < G_N_ELEMENTS (properties); i++) {
+ 		if (key_len != strlen (properties[i].vname))
+ 			continue;
+--
+cgit v0.8.3.4
+
+
+From d8273630bd92ecea581240ae93c6795cc538d076 Mon Sep 17 00:00:00 2001
+From: Erik Massop <e.massop at hccnet.nl>
+Date: Tue, 09 Mar 2010 15:45:03 +0000
+Subject: OTHER: Add Brad Jorsch to AUTHORS, disable Vorbis albumart for glib < 2.12
+
+(Name found using e-mail address at http://sourceforge.net/users/anomie )
+---
+diff --git a/AUTHORS b/AUTHORS
+index f2ef9af..7331d4b 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -146,6 +146,10 @@ N: Johannes Jordan
+ E: ypnos at lanrules.de
+ D: Visualization
+ 
++N: Brad Jorsch
++E: anomie at users.sourceforge.net
++D: Support for front picture from Vorbis.
++
+ N: Daniel Kamiński
+ E: maniel.rulez at gmail.com
+ D: mlib remove command in cli, Ruby fixes.
+diff --git a/src/plugins/vorbis_common/common.c b/src/plugins/vorbis_common/common.c
+index fc4ff1b..ab1dc75 100644
+--- a/src/plugins/vorbis_common/common.c
++++ b/src/plugins/vorbis_common/common.c
+@@ -27,6 +27,7 @@
+ #include "xmms/xmms_sample.h"
+ #include "xmms/xmms_log.h"
+ #include "xmms/xmms_medialib.h"
++#include "xmms/xmms_bindata.h"
+ 
+ #include <glib.h>
+ 
+@@ -244,12 +245,22 @@ get_replaygain (xmms_xform_t *xform, vorbis_comment *vc)
+ }
+ 
+ static void
+-handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
++handle_image_comment (xmms_xform_t *xform, const gchar *encoded_value)
+ {
++	gsize len;
++	guchar *value;
++
+ 	guint32 typ, mime_len, desc_len, img_len;
+ 	guchar *pos, *end, *mime_data, *img_data;
+ 	gchar hash[33];
+ 
++#if GLIB_CHECK_VERSION(2,12,0)
++	value = g_base64_decode (encoded_value, &len);
++#else
++	/* TODO: Implement/backport base64 decoding */
++	return;
++#endif
++
+ 	pos = value;
+ 	end = value + len;
+ 
+@@ -299,7 +310,7 @@ handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
+ 		return;
+ 	}
+ 
+-	if (xmms_bindata_plugin_add ((const guchar *)img_data, img_len, hash)) {
++	if (xmms_bindata_plugin_add (img_data, img_len, hash)) {
+ 		const gchar *metakey;
+ 
+ 		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT;
+@@ -307,8 +318,10 @@ handle_image_comment (xmms_xform_t *xform, const gchar *value, gsize len)
+ 
+ 		metakey = XMMS_MEDIALIB_ENTRY_PROPERTY_PICTURE_FRONT_MIME;
+ 		mime_data[mime_len] = '\0';
+-		xmms_xform_metadata_set_str (xform, metakey, mime_data);
++		xmms_xform_metadata_set_str (xform, metakey, (gchar *)mime_data);
+ 	}
++
++	g_free (value);
+ }
+ 
+ /* note that "key" is NOT NUL-terminated here,
+@@ -322,10 +335,7 @@ handle_comment (xmms_xform_t *xform,
+ 	gint i;
+ 
+ 	if (!g_ascii_strncasecmp (key, "METADATA_BLOCK_PICTURE", key_len)) {
+-		gsize dlen;
+-		gchar *dvalue = g_base64_decode (value, &dlen);
+-		handle_image_comment (xform, dvalue, dlen);
+-		g_free (dvalue);
++		handle_image_comment (xform, value);
+ 		return;
+ 	}
+ 
+--
+cgit v0.8.3.4
+
+

Copied: xmms2/repos/community-staging-x86_64/xmms2-helpers.patch (from rev 124843, xmms2/trunk/xmms2-helpers.patch)
===================================================================
--- community-staging-x86_64/xmms2-helpers.patch	                        (rev 0)
+++ community-staging-x86_64/xmms2-helpers.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,13 @@
+diff -wbBur xmms2-0.5DrLecter/src/include/xmmsclient/xmmsclient++/helpers.h xmms2-0.5DrLecter.my/src/include/xmmsclient/xmmsclient++/helpers.h
+--- xmms2-0.5DrLecter/src/include/xmmsclient/xmmsclient++/helpers.h	2008-06-15 21:31:38.000000000 +0400
++++ xmms2-0.5DrLecter.my/src/include/xmmsclient/xmmsclient++/helpers.h	2008-06-18 14:22:24.000000000 +0400
+@@ -33,6 +33,8 @@
+ #include <list>
+ #include <vector>
+ 
++#include <linux/limits.h>
++
+ namespace Xmms
+ {
+ 
+

Copied: xmms2/repos/community-staging-x86_64/xmms2-ruby-1.9.patch (from rev 124843, xmms2/trunk/xmms2-ruby-1.9.patch)
===================================================================
--- community-staging-x86_64/xmms2-ruby-1.9.patch	                        (rev 0)
+++ community-staging-x86_64/xmms2-ruby-1.9.patch	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,59 @@
+diff -wbBur xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_collection.c xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_collection.c
+--- xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_collection.c	2009-04-21 17:51:11.000000000 +0000
++++ xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_collection.c	2009-09-14 09:13:19.000000000 +0000
+@@ -241,10 +241,10 @@
+ 	COLL_METHOD_HANDLER_HEADER
+ 
+ 	rb_ary = RARRAY (ids);
+-	ary = malloc (sizeof (unsigned int *) * (rb_ary->len + 1));
++	ary = malloc (sizeof (unsigned int *) * (RARRAYLEN(rb_ary) + 1));
+ 
+-	for (i = 0; i < rb_ary->len; i++)
+-		ary[i] = NUM2UINT (rb_ary->ptr[i]);
++	for (i = 0; i < RARRAYLEN(rb_ary); i++)
++		ary[i] = NUM2UINT (RARRAY_PTR(rb_ary)[i]);
+ 
+ 	ary[i] = 0;
+ 
+diff -wbBur xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_xmmsclient.c xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_xmmsclient.c
+--- xmms2-0.6DrMattDestruction/src/clients/lib/ruby/rb_xmmsclient.c	2009-04-21 17:51:11.000000000 +0000
++++ xmms2-0.6DrMattDestruction.my/src/clients/lib/ruby/rb_xmmsclient.c	2009-09-14 09:14:51.000000000 +0000
+@@ -1421,10 +1421,10 @@
+ 	if (!NIL_P (rb_check_array_type (value))) {
+ 		struct RArray *ary = RARRAY (value);
+ 
+-		ret = malloc (sizeof (char *) * (ary->len + 1));
++		ret = malloc (sizeof (char *) * (RARRAYLEN(ary) + 1));
+ 
+-		for (i = 0; i < ary->len; i++)
+-			ret[i] = StringValuePtr (ary->ptr[i]);
++		for (i = 0; i < RARRAYLEN(ary); i++)
++			ret[i] = StringValuePtr (RARRAY_PTR(ary)[i]);
+ 
+ 		ret[i] = NULL;
+ 	} else {
+@@ -1451,10 +1451,10 @@
+ 		struct RArray *ary = RARRAY (value);
+ 		int i;
+ 
+-		for (i = 0; i < ary->len; i++) {
++		for (i = 0; i < RARRAYLEN(ary); i++) {
+ 			xmmsv_t *elem;
+ 
+-			elem = xmmsv_new_string (StringValuePtr (ary->ptr[i]));
++			elem = xmmsv_new_string (StringValuePtr (RARRAY_PTR(ary)[i]));
+ 			xmmsv_list_append (list, elem);
+ 			xmmsv_unref (elem);
+ 		}
+diff -wbBur xmms2-0.6DrMattDestruction/src/include/xmmsclient/xmmsclient++/helpers.h xmms2-0.6DrMattDestruction.my/src/include/xmmsclient/xmmsclient++/helpers.h
+--- xmms2-0.6DrMattDestruction/src/include/xmmsclient/xmmsclient++/helpers.h	2009-04-21 17:51:11.000000000 +0000
++++ xmms2-0.6DrMattDestruction.my/src/include/xmmsclient/xmmsclient++/helpers.h	2009-09-14 09:00:11.000000000 +0000
+@@ -33,6 +33,8 @@
+ #include <list>
+ #include <vector>
+ 
++#include <linux/limits.h>
++
+ namespace Xmms
+ {
+ 

Copied: xmms2/repos/community-staging-x86_64/xmms2.install (from rev 124843, xmms2/trunk/xmms2.install)
===================================================================
--- community-staging-x86_64/xmms2.install	                        (rev 0)
+++ community-staging-x86_64/xmms2.install	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,3 @@
+pre_install() {
+  echo "-- DO NOT FORGET edit /etc/conf.d/xmms2.conf!"
+}

Copied: xmms2/repos/community-staging-x86_64/xmms2d.conf (from rev 124843, xmms2/trunk/xmms2d.conf)
===================================================================
--- community-staging-x86_64/xmms2d.conf	                        (rev 0)
+++ community-staging-x86_64/xmms2d.conf	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,31 @@
+#
+# xmms2-launcher cmdline parameters
+#
+XMMS2_PARAMETERS=""
+
+#
+# xmms2 user
+# You may want to add user to run xmms or use your username
+#
+XMMS2_USER="xmms2user"
+
+#
+# If you set XMMS2_USER to a different user than the one who will be controlling
+# xmms2d using xmms2 clients, make sure that the clients are aware of the path to
+# xmms2d's IPC socket, or they might not be able to connect. On failure to connect
+# some clients will try to run xmms2d themselves. These xmms2d instances will of
+# course run as the user running the client, and not as the one configured below.
+#
+# If an IPC path is specified on the command line to xmms2d (using
+# XMMS2_PARAMETERS="-i tcp://127.0.0.1:9667"
+# for instance) that will be used. If not, xmms2d will use the path from its
+# configuration file which is typically in ~/.config/xmms2/xmms2.conf. If this
+# fails, a unix socket at /tmp/xmms-ipc-[username] will be used, where username
+# is of the user starting xmms2d.
+#
+# Clients typically try to get the ipc path from the XMMS_PATH environment variable,
+# (which might be set by adding say 'export XMMS_PATH="tcp://127.0.0.1:9667"' to
+# ~/.profile). If this fails they can check their configuration file (if they have
+# one) and finally use unix:///tmp/xmms-ipc-[username], where username is of the user
+# starting the client. Upon failing to connect some will try to start xmms2d themselves.
+#

Copied: xmms2/repos/community-staging-x86_64/xmms2d.service (from rev 124843, xmms2/trunk/xmms2d.service)
===================================================================
--- community-staging-x86_64/xmms2d.service	                        (rev 0)
+++ community-staging-x86_64/xmms2d.service	2014-12-29 15:26:22 UTC (rev 124844)
@@ -0,0 +1,12 @@
+[Unit]
+Description=XMMS2 daemon
+After=network.target remote-fs.target nss-lookup.target
+
+[Service]
+Type=forking
+EnvironmentFile=/etc/conf.d/xmms2d.conf
+ExecStart=/bin/su -c '/usr/bin/xmms2-launcher $XMMS2_PARAMETERS &>/dev/null' - $XMMS2_USER
+ExecStop=/bin/su -c '/usr/bin/xmms2 quit &>/dev/null' - $XMMS2_USER
+
+[Install]
+WantedBy=multi-user.target



More information about the arch-commits mailing list