summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nonprism/banshee/PKGBUILD12
-rw-r--r--nonprism/banshee/Remove-IDBusExportable-inheritance-from-exported-int.patch132
-rw-r--r--nonprism/banshee/Use-dbus-2.patch66
3 files changed, 207 insertions, 3 deletions
diff --git a/nonprism/banshee/PKGBUILD b/nonprism/banshee/PKGBUILD
index 249e4cbcb..0b579dad1 100644
--- a/nonprism/banshee/PKGBUILD
+++ b/nonprism/banshee/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=banshee
pkgver=2.6.2
-pkgrel=6.nonprism1
+pkgrel=7.nonprism1
pkgdesc="Music management and playback for GNOME, without gdata-sharp support"
arch=('i686' 'x86_64' 'mips64el')
url="http://banshee.fm/"
@@ -23,13 +23,17 @@ source=(http://download.gnome.org/sources/$pkgname/2.6/$pkgname-$pkgver.tar.xz
Remove-build-time-enable-gapless-playback-option.patch
Don-t-use-the-new-decoded-pad-signal-of-decodebin.patch
Use-new-style-GStreamer-1.0-raw-audio-caps-in-the-WA.patch
- sqlite_fix.patch)
+ sqlite_fix.patch
+ Remove-IDBusExportable-inheritance-from-exported-int.patch
+ Use-dbus-2.patch)
md5sums=('12dbb8a996783f7081d538062a8589b7'
'16cbe2ef60e6f9b22015585bb3209648'
'0bf7ee4241b12538779c9ecc401d142a'
'f87534f54029794bd7be2a123ab01300'
'd092827720e4a11549587eb3131123ae'
- '72ca131b950d58998fd9286fad722ed7')
+ '72ca131b950d58998fd9286fad722ed7'
+ '3b28f10e167c0aae27157dcc3b828b67'
+ '2c4436f7aba58fdd0c5a38d709d73e5c')
prepare() {
cd $pkgname-$pkgver
@@ -38,6 +42,8 @@ prepare() {
patch -p1 -i ../Don-t-use-the-new-decoded-pad-signal-of-decodebin.patch
patch -p1 -i ../Use-new-style-GStreamer-1.0-raw-audio-caps-in-the-WA.patch
patch -p1 -i ../sqlite_fix.patch
+ patch -p1 -i ../Remove-IDBusExportable-inheritance-from-exported-int.patch
+ patch -p1 -i ../Use-dbus-2.patch
}
build() {
diff --git a/nonprism/banshee/Remove-IDBusExportable-inheritance-from-exported-int.patch b/nonprism/banshee/Remove-IDBusExportable-inheritance-from-exported-int.patch
new file mode 100644
index 000000000..9f3809421
--- /dev/null
+++ b/nonprism/banshee/Remove-IDBusExportable-inheritance-from-exported-int.patch
@@ -0,0 +1,132 @@
+From: Chow Loong Jin <hyperair@debian.org>
+Date: Sat, 1 Mar 2014 15:52:39 +0800
+Subject: Remove IDBusExportable inheritance from exported interfaces
+
+This fixes the crashes when attempting to control an existing instance of
+Banshee using the command-line interface.
+
+Bug-Debian: #731978
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=725446
+---
+ src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs | 2 +-
+ src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs | 2 +-
+ .../Banshee.PlaybackController/IPlaybackControllerService.cs | 2 +-
+ .../Banshee.PlaybackController/PlaybackControllerService.cs | 4 ++--
+ src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs | 2 +-
+ src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs | 2 +-
+ src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs | 2 +-
+ src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs | 4 ++--
+ 8 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs b/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs
+index fc935ac..f29cfa5 100644
+--- a/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs
++++ b/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs
+@@ -35,7 +35,7 @@ using Banshee.ServiceStack;
+ namespace Banshee.MediaEngine
+ {
+ [Interface("org.bansheeproject.Banshee.PlayerEngine")]
+- public interface IPlayerEngineService : IDBusExportable
++ public interface IPlayerEngineService
+ {
+ event DBusPlayerEventHandler EventChanged;
+ event DBusPlayerStateHandler StateChanged;
+diff --git a/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs b/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs
+index 793b9cd..83cbe67 100644
+--- a/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs
++++ b/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs
+@@ -51,7 +51,7 @@ namespace Banshee.MediaEngine
+ public delegate bool TrackInterceptHandler (TrackInfo track);
+
+ public class PlayerEngineService : IInitializeService, IDelayedInitializeService,
+- IRequiredService, IPlayerEngineService, IDisposable
++ IRequiredService, IPlayerEngineService, IDBusExportable, IDisposable
+ {
+ private List<PlayerEngine> engines = new List<PlayerEngine> ();
+ private PlayerEngine active_engine;
+diff --git a/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs b/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs
+index deb1feb..a764272 100644
+--- a/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs
++++ b/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs
+@@ -36,7 +36,7 @@ namespace Banshee.PlaybackController
+ public delegate void PlaybackControllerStoppedHandler ();
+
+ [Interface ("org.bansheeproject.Banshee.PlaybackController")]
+- public interface IPlaybackControllerService : IDBusExportable
++ public interface IPlaybackControllerService
+ {
+ // FIXME: IPlaybackControllerExportable : IPlaybackController
+ // but DBus-Sharp has a design flaw where it only exports
+diff --git a/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs b/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
+index 1b8020f..af700a6 100644
+--- a/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
++++ b/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
+@@ -38,8 +38,8 @@ using Banshee.MediaEngine;
+
+ namespace Banshee.PlaybackController
+ {
+- public class PlaybackControllerService : IRequiredService, ICanonicalPlaybackController,
+- IPlaybackController, IPlaybackControllerService
++ public class PlaybackControllerService : IDBusExportable, IRequiredService,
++ ICanonicalPlaybackController, IPlaybackController, IPlaybackControllerService
+ {
+ private enum Direction
+ {
+diff --git a/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs b/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs
+index 18203c7..4cfc697 100644
+--- a/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs
++++ b/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs
+@@ -36,7 +36,7 @@ using Banshee.ServiceStack;
+ namespace Banshee.Sources
+ {
+ [Interface("org.bansheeproject.Banshee.SourceManager")]
+- public interface ISourceManager : IDBusExportable
++ public interface ISourceManager
+ {
+ //event SourceEventHandler SourceUpdated;
+ ISource ActiveSource { get; set; }
+diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs
+index 48d10bc..1a33a2b 100644
+--- a/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs
++++ b/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs
+@@ -40,7 +40,7 @@ using Banshee.Playlist;
+
+ namespace Banshee.Gui
+ {
+- public class GlobalActions : BansheeActionGroup, IGlobalUIActions
++ public class GlobalActions : BansheeActionGroup, IGlobalUIActions, IDBusExportable
+ {
+ public GlobalActions () : base ("Global")
+ {
+diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs
+index 1d693b1..77604f7 100644
+--- a/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs
++++ b/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs
+@@ -34,7 +34,7 @@ using Banshee.ServiceStack;
+ namespace Banshee.Gui
+ {
+ [Interface ("org.bansheeproject.Banshee.ClientWindow")]
+- public interface IClientWindow : IDBusExportable
++ public interface IClientWindow
+ {
+ void Present ();
+ void Hide ();
+diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs
+index 34124c5..e9a53d0 100644
+--- a/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs
++++ b/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs
+@@ -32,11 +32,11 @@ using Banshee.ServiceStack;
+ namespace Banshee.Gui
+ {
+ [Interface ("org.bansheeproject.Banshee.GlobalUIActions")]
+- public interface IGlobalUIActions : IDBusExportable
++ public interface IGlobalUIActions
+ {
+ void ShowImportDialog ();
+ void ShowAboutDialog ();
+ void ShowOpenLocationDialog ();
+ void ShowPreferencesDialog ();
+ }
+-}
+\ No newline at end of file
++}
diff --git a/nonprism/banshee/Use-dbus-2.patch b/nonprism/banshee/Use-dbus-2.patch
new file mode 100644
index 000000000..9ce676446
--- /dev/null
+++ b/nonprism/banshee/Use-dbus-2.patch
@@ -0,0 +1,66 @@
+From: Chow Loong Jin <hyperair@debian.org>
+Date: Mon, 25 Nov 2013 01:18:19 +0800
+Subject: Use dbus# 2
+
+---
+ build/m4/banshee/dbus.m4 | 4 ++--
+ build/pkg-config/banshee-collection-indexer.pc.in | 2 +-
+ build/pkg-config/banshee-core.pc.in | 2 +-
+ src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs | 5 +----
+ 4 files changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/build/m4/banshee/dbus.m4 b/build/m4/banshee/dbus.m4
+index 3b8579e..f76ff8c 100644
+--- a/build/m4/banshee/dbus.m4
++++ b/build/m4/banshee/dbus.m4
+@@ -1,9 +1,9 @@
+ AC_DEFUN([BANSHEE_CHECK_DBUS_SHARP],
+ [
+- PKG_CHECK_MODULES(DBUS_SHARP_GLIB, dbus-sharp-glib-1.0 >= 0.5)
++ PKG_CHECK_MODULES(DBUS_SHARP_GLIB, dbus-sharp-glib-2.0 >= 0.5)
+ AC_SUBST(DBUS_SHARP_GLIB_LIBS)
+
+- PKG_CHECK_MODULES(DBUS_SHARP, dbus-sharp-1.0 >= 0.7)
++ PKG_CHECK_MODULES(DBUS_SHARP, dbus-sharp-2.0 >= 0.7)
+ AC_SUBST(DBUS_SHARP_LIBS)
+ ])
+
+diff --git a/build/pkg-config/banshee-collection-indexer.pc.in b/build/pkg-config/banshee-collection-indexer.pc.in
+index 40636bb..a12b03c 100644
+--- a/build/pkg-config/banshee-collection-indexer.pc.in
++++ b/build/pkg-config/banshee-collection-indexer.pc.in
+@@ -7,6 +7,6 @@ Libraries=${bansheedir}/Banshee.CollectionIndexer.dll
+ Name: Banshee Collection Indexer Helper
+ Description: A library for applications to bundle to easily consume the Banshee Collection Indexer
+ Version: @VERSION@
+-Requires: dbus-sharp-1.0
++Requires: dbus-sharp-2.0
+ Libs: -r:${Libraries}
+
+diff --git a/build/pkg-config/banshee-core.pc.in b/build/pkg-config/banshee-core.pc.in
+index 9d4c3b9..c217dd8 100644
+--- a/build/pkg-config/banshee-core.pc.in
++++ b/build/pkg-config/banshee-core.pc.in
+@@ -6,5 +6,5 @@ bansheedir=${libdir}/@PACKAGE@
+ Name: Banshee Core
+ Description: Core APIs for the Banshee Media Framework
+ Version: @VERSION@
+-Requires: taglib-sharp dbus-sharp-1.0 dbus-sharp-glib-1.0 glib-sharp-2.0 mono-addins banshee-hyena banshee-hyena-data-sqlite banshee-musicbrainz
++Requires: taglib-sharp dbus-sharp-2.0 dbus-sharp-glib-2.0 glib-sharp-2.0 mono-addins banshee-hyena banshee-hyena-data-sqlite banshee-musicbrainz
+ Libs: -r:${bansheedir}/Banshee.Core.dll
+diff --git a/src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs b/src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs
+index 698cf02..96e3996 100644
+--- a/src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs
++++ b/src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs
+@@ -135,10 +135,7 @@ namespace Banshee.ServiceStack
+ string bus_name = DBusConnection.MakeBusName (serviceName);
+
+ Log.DebugFormat ("Registering remote object {0} ({1}) on {2}", path, o.GetType (), bus_name);
+-
+- #pragma warning disable 0618
+- Bus.Session.Register (bus_name, path, o);
+- #pragma warning restore 0618
++ Bus.Session.Register (path, o);
+ }
+
+ return path;