diff options
Diffstat (limited to 'extra')
52 files changed, 0 insertions, 5148 deletions
diff --git a/extra/clutter-gtk/fix-gir.patch b/extra/clutter-gtk/fix-gir.patch deleted file mode 100644 index 54935aea2..000000000 --- a/extra/clutter-gtk/fix-gir.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 4de105a2bbd201c8e60f3e8777794a4cd532afdc Mon Sep 17 00:00:00 2001 -From: Emmanuele Bassi <ebassi@linux.intel.com> -Date: Tue, 28 Sep 2010 13:52:25 +0000 -Subject: build: Add common CFLAGS to the introspection scanner - ---- -diff --git a/clutter-gtk/Makefile.am b/clutter-gtk/Makefile.am -index 6e267b4..cec5cce 100644 ---- a/clutter-gtk/Makefile.am -+++ b/clutter-gtk/Makefile.am -@@ -15,6 +15,8 @@ AM_CPPFLAGS = \ - -DCLUTTER_DISABLE_DEPRECATED \ - $(CLUTTER_GTK_DEBUG_CFLAGS) - -+common_cflags = $(CLUTTER_CFLAGS) $(GTK_CFLAGS) -+ - # please, keep these lists sorted alphabetically - sources_c = \ - $(srcdir)/gtk-clutter-embed.c \ -@@ -36,7 +38,7 @@ lib_LTLIBRARIES = libclutter-gtk-@CLUTTER_GTK_API_VERSION@.la - libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_SOURCES = $(sources_c) - libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_LIBADD = $(CLUTTER_LIBS) $(GTK_LIBS) - libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_LDFLAGS = $(CLUTTER_LT_LDFLAGS) --libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_CFLAGS = $(MAINTAINER_CFLAGS) $(GTK_CFLAGS) $(CLUTTER_CFLAGS) -+libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_CFLAGS = $(common_cflags) $(MAINTAINER_CFLAGS) - - cluttergtkheadersdir = $(includedir)/clutter-1.0/clutter-gtk - cluttergtkheaders_HEADERS = $(sources_h) $(srcdir)/clutter-gtk.h -@@ -48,7 +50,7 @@ GtkClutter-@CLUTTER_GTK_API_VERSION@.gir: $(INTROSPECTION_SCANNER) Makefile libc - $(AM_V_GEN)$(INTROSPECTION_SCANNER) -v \ - --namespace GtkClutter --nsversion=@CLUTTER_GTK_API_VERSION@ \ - --strip-prefix=GtkClutter \ -- $(INCLUDES) $(AM_CPPFLAGS) \ -+ $(INCLUDES) $(AM_CPPFLAGS) $(common_cflags) \ - --add-include-path=$(srcdir) --add-include=path=. \ - --include=Clutter-1.0 \ - --include=GdkPixbuf-2.0 \ --- -cgit v0.8.3.1-30-gff3a -From 0d77c7c965dcebcec0dae6b6244c3a057b398b59 Mon Sep 17 00:00:00 2001 -From: Emmanuele Bassi <ebassi@linux.intel.com> -Date: Tue, 28 Sep 2010 13:58:17 +0000 -Subject: Add introspection annotations for gtk_clutter_init* - ---- -diff --git a/clutter-gtk/gtk-clutter-util.c b/clutter-gtk/gtk-clutter-util.c -index 8cf4116..50bca6b 100644 ---- a/clutter-gtk/gtk-clutter-util.c -+++ b/clutter-gtk/gtk-clutter-util.c -@@ -603,8 +603,9 @@ gtk_clutter_texture_set_from_icon_name (ClutterTexture *texture, - - /** - * gtk_clutter_init: -- * @argc: pointer to the arguments count, or %NULL -- * @argv: pointer to the arguments vector, or %NULL -+ * @argc: (inout): pointer to the arguments count, or %NULL -+ * @argv: (array length=argc) (inout) (allow-none): pointer to the -+ * arguments vector, or %NULL - * - * This function should be called instead of clutter_init() and - * gtk_init(). -@@ -633,17 +634,18 @@ gtk_clutter_init (int *argc, - - /** - * gtk_clutter_init_with_args: -- * @argc: a pointer to the number of command line arguments. -- * @argv: a pointer to the array of command line arguments. -- * @parameter_string: a string which is displayed in -- * the first line of <option>--help</option> output, after -- * <literal><replaceable>programname</replaceable> [OPTION...]</literal> -- * @entries: a %NULL-terminated array of #GOptionEntry<!-- -->s -- * describing the options of your program -- * @translation_domain: a translation domain to use for translating -- * the <option>--help</option> output for the options in @entries -- * with gettext(), or %NULL -- * @error: a return location for errors -+ * @argc: (inout): a pointer to the number of command line arguments. -+ * @argv: (array length=argc) (inout) (allow-none): a pointer to the array -+ * of command line arguments. -+ * @parameter_string: (allow-none): a string which is displayed in -+ * the first line of <option>--help</option> output, after -+ * <literal><replaceable>programname</replaceable> [OPTION...]</literal> -+ * @entries: (allow-none): a %NULL-terminated array of #GOptionEntry<!-- -->s -+ * describing the options of your program, or %NULL -+ * @translation_domain: (allow-none): a translation domain to use for -+ * translating the <option>--help</option> output for the options -+ * in @entries with gettext(), or %NULL -+ * @error: (allow-none): a return location for errors, or %NULL - * - * This function should be called instead of clutter_init() and - * gtk_init_with_args(). --- -cgit v0.8.3.1-30-gff3a diff --git a/extra/ekiga/ekiga-3.2.7-libnotify-0.7.patch b/extra/ekiga/ekiga-3.2.7-libnotify-0.7.patch deleted file mode 100644 index c09fbb0f9..000000000 --- a/extra/ekiga/ekiga-3.2.7-libnotify-0.7.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- lib/engine/components/libnotify/libnotify-main.cpp -+++ lib/engine/components/libnotify/libnotify-main.cpp -@@ -40,6 +40,10 @@ - - #include <libnotify/notify.h> - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - #include "services.h" - #include "notification-core.h" - -@@ -158,7 +162,12 @@ - - notif = notify_notification_new (notification->get_title ().c_str (), - notification->get_body ().c_str (), -- urgency, NULL); -+ urgency -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - - g_signal_connect (notif, "closed", - G_CALLBACK (on_notif_closed), notification.get ()); ---- src/gui/main.cpp -+++ src/gui/main.cpp -@@ -84,6 +84,9 @@ - - #ifdef HAVE_NOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #if defined(P_FREEBSD) || defined (P_MACOSX) -@@ -2820,12 +2823,21 @@ - - body = g_strdup_printf ("%s\n%s\n%s", uri, app, account); - -- notify = notify_notification_new (title, body, GM_ICON_LOGO, NULL); -+ notify = notify_notification_new (title, body, GM_ICON_LOGO -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - notify_notification_add_action (notify, "accept", _("Accept"), notify_action_cb, mw, NULL); - notify_notification_add_action (notify, "reject", _("Reject"), notify_action_cb, mw, NULL); - notify_notification_set_timeout (notify, NOTIFY_EXPIRES_NEVER); - notify_notification_set_urgency (notify, NOTIFY_URGENCY_CRITICAL); -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ // notify_notification_attach_to_status_icon was removed -+#else - notify_notification_attach_to_status_icon (notify, statusicon); -+#endif - if (!notify_notification_show (notify, NULL)) { - ekiga_main_window_incoming_call_dialog_show (mw, call); - } diff --git a/extra/empathy/empathy-2.32.2-libnotify-0.7.patch b/extra/empathy/empathy-2.32.2-libnotify-0.7.patch deleted file mode 100644 index b430ff269..000000000 --- a/extra/empathy/empathy-2.32.2-libnotify-0.7.patch +++ /dev/null @@ -1,54 +0,0 @@ ---- src/empathy-chat-window.c -+++ src/empathy-chat-window.c -@@ -35,6 +35,11 @@ - #include <gdk/gdkx.h> - #include <glib/gi18n.h> - #include <libnotify/notification.h> -+#include <libnotify/notify.h> -+ -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - - #include <telepathy-glib/telepathy-glib.h> - -@@ -1300,7 +1305,12 @@ - to an existing notification with the same title. - In this way the previous message will not be lost: the new - message will appear below it, in the same notification */ -- notification = notify_notification_new (header, escaped, NULL, NULL); -+ notification = notify_notification_new (header, escaped, NULL -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - - if (priv->notification == NULL) { - priv->notification = notification; ---- src/empathy-status-icon.c -+++ src/empathy-status-icon.c -@@ -32,6 +32,10 @@ - #include <libnotify/notification.h> - #include <libnotify/notify.h> - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - #include <telepathy-glib/account-manager.h> - #include <telepathy-glib/util.h> - -@@ -206,8 +210,12 @@ - to an existing notification with the same title. - In this way the previous message will not be lost: the new - message will appear below it, in the same notification */ -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ /* notify_notification_new_with_status_icon was removed */ -+#else - notification = notify_notification_new_with_status_icon - (priv->event->header, message_esc, NULL, priv->icon); -+#endif - - if (priv->notification == NULL) { - priv->notification = notification; diff --git a/extra/epiphany/add-dbus-glib.patch b/extra/epiphany/add-dbus-glib.patch deleted file mode 100644 index c50be67a2..000000000 --- a/extra/epiphany/add-dbus-glib.patch +++ /dev/null @@ -1,20 +0,0 @@ -From 174a51819570a975cc61e642f7f26cb4bc2f9c57 Mon Sep 17 00:00:00 2001 -From: Diego Escalante Urrelo <descalante@igalia.com> -Date: Mon, 01 Nov 2010 05:56:51 +0000 -Subject: tests: DBUS_LIBS is needed for libephymain.la - ---- -diff --git a/tests/Makefile.am b/tests/Makefile.am -index bd2c378..b973214 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -23,6 +23,7 @@ LDADD = \ - $(top_builddir)/lib/widgets/libephywidgets.la \ - $(top_builddir)/lib/libephymisc.la \ - $(top_builddir)/lib/egg/libegg.la \ -+ $(DBUS_LIBS) \ - $(DEPENDENCIES_LIBS) - - if ENABLE_NSS --- -cgit v0.8.3.4 diff --git a/extra/epiphany/epiphany-2.30.6-libnotify-0.7.patch b/extra/epiphany/epiphany-2.30.6-libnotify-0.7.patch deleted file mode 100644 index a0c5f8ee1..000000000 --- a/extra/epiphany/epiphany-2.30.6-libnotify-0.7.patch +++ /dev/null @@ -1,38 +0,0 @@ ---- embed/downloader-view.c -+++ embed/downloader-view.c -@@ -36,6 +36,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - enum -@@ -337,7 +340,12 @@ - g_object_ref (dv); - - notification = notify_notification_new (title, msg, -- GTK_STOCK_INFO, NULL); -+ GTK_STOCK_INFO -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - - g_signal_connect_after (notification, "closed", - G_CALLBACK (notification_closed_cb), dv); -@@ -346,7 +354,11 @@ - notify_notification_set_timeout (notification, NOTIFY_EXPIRES_DEFAULT); - notify_notification_set_urgency (notification, NOTIFY_URGENCY_LOW); - -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ /* notify_notification_attach_to_status_icon was removed */ -+#else - notify_notification_attach_to_status_icon (notification, status_icon); -+#endif - - /* There are some visual glitches when the notification is shown and - * the GtkStatusIcon is still not visible. To avoid that, we delay the diff --git a/extra/epiphany/fix-introspection.patch b/extra/epiphany/fix-introspection.patch deleted file mode 100644 index 4d8dca923..000000000 --- a/extra/epiphany/fix-introspection.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 78b9eac0fca36e27c83c7678b18962ba286f041b Mon Sep 17 00:00:00 2001 -From: Vincent Untz <vuntz@gnome.org> -Date: Fri, 01 Oct 2010 16:36:23 +0000 -Subject: introspection: Fix build by telling g-ir-scanner what the prefix is - -https://bugzilla.gnome.org/show_bug.cgi?id=631119 ---- -diff --git a/src/Makefile.am b/src/Makefile.am -index e9d3715..acbf8ff 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -350,6 +350,7 @@ Epiphany-$(EPIPHANY_API_VERSION).gir: $(INTROSPECTION_SCANNER) $(EPHY_GIR_H_FILE - --include=WebKit-1.0 \ - --program=./epiphany \ - --output $@ \ -+ --strip-prefix=Ephy \ - --pkg epiphany-$(EPIPHANY_API_VERSION) \ - -DEPIPHANY_COMPILATION \ - -I$(top_srcdir)/embed \ --- -cgit v0.8.3.1 diff --git a/extra/evince/security_issues_in_dvi-backend.patch b/extra/evince/security_issues_in_dvi-backend.patch deleted file mode 100644 index 691ee4190..000000000 --- a/extra/evince/security_issues_in_dvi-backend.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 8e473c9796b9a61b811213e7892fd36fd570303a Mon Sep 17 00:00:00 2001 -From: José Aliste <jaliste@src.gnome.org> -Date: Tue, 07 Dec 2010 18:56:47 +0000 -Subject: backends: Fix several security issues in the dvi-backend. - -See CVE-2010-2640, CVE-2010-2641, CVE-2010-2642 and CVE-2010-2643. ---- -diff --git a/backend/dvi/mdvi-lib/afmparse.c b/backend/dvi/mdvi-lib/afmparse.c -index 164366b..361e23d 100644 ---- a/backend/dvi/mdvi-lib/afmparse.c -+++ b/backend/dvi/mdvi-lib/afmparse.c -@@ -160,7 +160,7 @@ static char *token(FILE *stream) - - idx = 0; - while (ch != EOF && ch != ' ' && ch != lineterm -- && ch != '\t' && ch != ':' && ch != ';') -+ && ch != '\t' && ch != ':' && ch != ';' && idx < MAX_NAME) - { - ident[idx++] = ch; - ch = fgetc(stream); -diff --git a/backend/dvi/mdvi-lib/dviread.c b/backend/dvi/mdvi-lib/dviread.c -index 97b7b84..ac98068 100644 ---- a/backend/dvi/mdvi-lib/dviread.c -+++ b/backend/dvi/mdvi-lib/dviread.c -@@ -1537,6 +1537,10 @@ int special(DviContext *dvi, int opcode) - Int32 arg; - - arg = dugetn(dvi, opcode - DVI_XXX1 + 1); -+ if (arg <= 0) { -+ dvierr(dvi, _("malformed special length\n")); -+ return -1; -+ } - s = mdvi_malloc(arg + 1); - dread(dvi, s, arg); - s[arg] = 0; -diff --git a/backend/dvi/mdvi-lib/pk.c b/backend/dvi/mdvi-lib/pk.c -index a579186..08377e6 100644 ---- a/backend/dvi/mdvi-lib/pk.c -+++ b/backend/dvi/mdvi-lib/pk.c -@@ -469,6 +469,15 @@ static int pk_load_font(DviParams *unused, DviFont *font) - } - if(feof(p)) - break; -+ -+ /* Although the PK format support bigger char codes, -+ * XeTeX and other extended TeX engines support charcodes up to -+ * 65536, while normal TeX engine supports only charcode up to 255.*/ -+ if (cc < 0 || cc > 65536) { -+ mdvi_error (_("%s: unexpected charcode (%d)\n"), -+ font->fontname,cc); -+ goto error; -+ } - if(cc < loc) - loc = cc; - if(cc > hic) -@@ -512,7 +521,7 @@ static int pk_load_font(DviParams *unused, DviFont *font) - } - - /* resize font char data */ -- if(loc > 0 || hic < maxch-1) { -+ if(loc > 0 && hic < maxch-1) { - memmove(font->chars, font->chars + loc, - (hic - loc + 1) * sizeof(DviFontChar)); - font->chars = xresize(font->chars, -diff --git a/backend/dvi/mdvi-lib/tfmfile.c b/backend/dvi/mdvi-lib/tfmfile.c -index 73ebf26..8c2a30b 100644 ---- a/backend/dvi/mdvi-lib/tfmfile.c -+++ b/backend/dvi/mdvi-lib/tfmfile.c -@@ -172,7 +172,8 @@ int tfm_load_file(const char *filename, TFMInfo *info) - /* We read the entire TFM file into core */ - if(fstat(fileno(in), &st) < 0) - return -1; -- if(st.st_size == 0) -+ /* according to the spec, TFM files are smaller than 16K */ -+ if(st.st_size == 0 || st.st_size >= 16384) - goto bad_tfm; - - /* allocate a word-aligned buffer to hold the file */ -diff --git a/backend/dvi/mdvi-lib/vf.c b/backend/dvi/mdvi-lib/vf.c -index fb49847..a5ae3bb 100644 ---- a/backend/dvi/mdvi-lib/vf.c -+++ b/backend/dvi/mdvi-lib/vf.c -@@ -165,6 +165,12 @@ static int vf_load_font(DviParams *params, DviFont *font) - cc = fuget1(p); - tfm = fuget3(p); - } -+ if (cc < 0 || cc > 65536) { -+ /* TeX engines do not support char codes bigger than 65535 */ -+ mdvi_error(_("(vf) %s: unexpected character %d\n"), -+ font->fontname, cc); -+ goto error; -+ } - if(loc < 0 || cc < loc) - loc = cc; - if(hic < 0 || cc > hic) --- -cgit v0.8.3.1 diff --git a/extra/evince/update_to_poppler_api.patch b/extra/evince/update_to_poppler_api.patch deleted file mode 100644 index 29bcad6b9..000000000 --- a/extra/evince/update_to_poppler_api.patch +++ /dev/null @@ -1,58 +0,0 @@ -From f77e6cf4fd7fef49ac91d8c62b6a9a993529adb8 Mon Sep 17 00:00:00 2001 -From: Carlos Garcia Campos <carlosgc@gnome.org> -Date: Fri, 17 Sep 2010 11:21:16 +0000 -Subject: [pdf] Update to poppler api changes - -Linearized PopplerDocument property is now boolean rather than string. ---- -diff --git a/backend/pdf/ev-poppler.cc b/backend/pdf/ev-poppler.cc -index aa080e6..ced3ef7 100644 ---- a/backend/pdf/ev-poppler.cc -+++ b/backend/pdf/ev-poppler.cc -@@ -722,6 +722,9 @@ pdf_document_get_info (EvDocument *document) - PopplerPermissions permissions; - EvPage *page; - char *metadata; -+#ifdef HAVE_POPPLER_DOCUMENT_IS_LINEARIZED -+ gboolean linearized; -+#endif - - info = g_new0 (EvDocumentInfo, 1); - -@@ -758,7 +761,11 @@ pdf_document_get_info (EvDocument *document) - "producer", &(info->producer), - "creation-date", &(info->creation_date), - "mod-date", &(info->modified_date), -+#ifdef HAVE_POPPLER_DOCUMENT_IS_LINEARIZED -+ "linearized", &linearized, -+#else - "linearized", &(info->linearized), -+#endif - "metadata", &metadata, - NULL); - -@@ -864,6 +871,10 @@ pdf_document_get_info (EvDocument *document) - info->security = g_strdup (_("No")); - } - -+#ifdef HAVE_POPPLER_DOCUMENT_IS_LINEARIZED -+ info->linearized = linearized ? g_strdup (_("Yes")) : g_strdup (_("No")); -+#endif -+ - return info; - } - -diff --git a/configure.ac b/configure.ac -index 0faa16e..9619349 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -512,6 +512,7 @@ if test "x$enable_pdf" = "xyes"; then - AC_CHECK_FUNCS(poppler_page_get_text_layout) - AC_CHECK_FUNCS(poppler_page_get_selected_text) - AC_CHECK_FUNCS(poppler_page_add_annot) -+ AC_CHECK_FUNCS(poppler_document_is_linearized) - LIBS=$evince_save_LIBS - PKG_CHECK_MODULES(CAIRO_PDF, cairo-pdf, enable_cairo_pdf=yes, enable_cairo_pdf=no) - if test x$enable_cairo_pdf = xyes; then --- -cgit v0.8.3.1 diff --git a/extra/evolution/evolution-2.32.1-libnotify-0.7.patch b/extra/evolution/evolution-2.32.1-libnotify-0.7.patch deleted file mode 100644 index 7e2474b47..000000000 --- a/extra/evolution/evolution-2.32.1-libnotify-0.7.patch +++ /dev/null @@ -1,81 +0,0 @@ ---- calendar/gui/alarm-notify/alarm-queue.c -+++ calendar/gui/alarm-notify/alarm-queue.c -@@ -40,6 +40,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #include "alarm.h" -@@ -1606,7 +1609,12 @@ - body = g_strdup_printf ("%s %s", start_str, time_str); - } - -- n = notify_notification_new (summary, body, "stock_appointment-reminder", NULL); -+ n = notify_notification_new (summary, body, "stock_appointment-reminder" -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - if (!notify_notification_show(n, NULL)) - g_warning ("Could not send notification to daemon\n"); - ---- plugins/mail-notification/mail-notification.c -+++ plugins/mail-notification/mail-notification.c -@@ -47,6 +47,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #define GCONF_KEY_ROOT "/apps/evolution/eplugin/mail-notification/" -@@ -564,9 +567,14 @@ - - notify = notify_notification_new ( - _("New email"), safetext, -- "mail-unread", NULL); -+ "mail-unread" -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); - notify_notification_attach_to_status_icon ( - notify, status_icon); -+#endif - - /* Check if actions are supported */ - if (can_support_actions ()) { ---- plugins/publish-calendar/publish-calendar.c -+++ plugins/publish-calendar/publish-calendar.c -@@ -46,6 +46,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - static GtkListStore *store = NULL; -@@ -150,8 +153,13 @@ - return; - } - -- notify = notify_notification_new (_("Calendar Publishing"), actual_msg->str, stock_name, NULL); -+ notify = notify_notification_new (_("Calendar Publishing"), actual_msg->str, stock_name -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); - notify_notification_attach_to_status_icon (notify, status_icon); -+#endif - notify_notification_set_urgency (notify, NOTIFY_URGENCY_NORMAL); - notify_notification_set_timeout (notify, NOTIFY_EXPIRES_DEFAULT); - g_timeout_add (500, show_notify_cb, NULL); diff --git a/extra/gdm/0001-port-to-libpanel-applet-3.0.patch b/extra/gdm/0001-port-to-libpanel-applet-3.0.patch deleted file mode 100644 index 91ada7835..000000000 --- a/extra/gdm/0001-port-to-libpanel-applet-3.0.patch +++ /dev/null @@ -1,506 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index ed07dce..bf98669 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -45,7 +45,7 @@ GTK_REQUIRED_VERSION=2.20.0 - PANGO_REQUIRED_VERSION=1.3.0 - SCROLLKEEPER_REQUIRED_VERSION=0.1.4 - GCONF_REQUIRED_VERSION=2.31.3 --GNOME_PANEL_REQUIRED_VERSION=2.0.0 -+GNOME_PANEL_REQUIRED_VERSION=2.31.90 - LIBXKLAVIER_REQUIRED_VERSION=4.0 - LIBCANBERRA_GTK_REQUIRED_VERSION=0.4 - #FONTCONFIG_REQUIRED_VERSION=2.6.0 -@@ -152,7 +152,7 @@ AC_SUBST(SIMPLE_CHOOSER_LIBS) - PKG_CHECK_MODULES(APPLET, - dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION - gtk+-2.0 >= $GTK_REQUIRED_VERSION -- libpanelapplet-2.0 >= $GNOME_PANEL_REQUIRED_VERSION) -+ libpanelapplet-3.0 >= $GNOME_PANEL_REQUIRED_VERSION) - AC_SUBST(APPLET_CFLAGS) - AC_SUBST(APPLET_LIBS) - -diff --git a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in b/gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in -deleted file mode 100644 -index a9b775f..0000000 ---- a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in -+++ /dev/null -@@ -1,38 +0,0 @@ --<oaf_info> -- <oaf_server iid="OAFIID:GNOME_FastUserSwitchApplet_Factory" type="exe" -- location="@LIBEXECDIR@/gdm-user-switch-applet"> -- -- <oaf_attribute name="repo_ids" type="stringv"> -- <item value="IDL:Bonobo/GenericFactory:1.0"/> -- <item value="IDL:Bonobo/Unknown:1.0"/> -- </oaf_attribute> -- <oaf_attribute name="name" type="string" _value="User Switcher Applet Factory"/> -- <oaf_attribute name="description" type="string" _value="User Switcher Applet Factory"/> -- <oaf_attribute name="bonobo:environment" type="stringv"> -- <item value="DBUS_SESSION_BUS_ADDRESS"/> -- <oaf_attribute name="bugzilla:bugzilla" type="string" value="GNOME"/> -- <oaf_attribute name="bugzilla:product" type="string" value="gdm"/> -- <oaf_attribute name="bugzilla:component" type="string" value="general"/> -- <oaf_attribute name="bugzilla:version" type="string" value="@VERSION@"/> -- <oaf_attribute name="bugzilla:other_binaries" type="string" value="gdm-user-switch-applet"/> -- </oaf_attribute> -- </oaf_server> -- -- <oaf_server iid="OAFIID:GNOME_FastUserSwitchApplet" type="factory" -- location="OAFIID:GNOME_FastUserSwitchApplet_Factory"> -- -- <oaf_attribute name="repo_ids" type="stringv"> -- <item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/> -- <item value="IDL:Bonobo/Control:1.0"/> -- <item value="IDL:Bonobo/Unknown:1.0"/> -- </oaf_attribute> -- <oaf_attribute name="name" type="string" _value="User Switcher"/> -- <oaf_attribute name="description" type="string" _value="A menu to quickly switch between users"/> -- <oaf_attribute name="panel:icon" type="string" value="stock_people"/> -- <oaf_attribute name="bugzilla:bugzilla" type="string" value="GNOME"/> -- <oaf_attribute name="bugzilla:product" type="string" value="gdm"/> -- <oaf_attribute name="bugzilla:component" type="string" value="general"/> -- <oaf_attribute name="bugzilla:version" type="string" value="@VERSION@"/> -- <oaf_attribute name="bugzilla:other_binaries" type="string" value="gdm-user-switch-applet"/> -- </oaf_server> --</oaf_info> -diff --git a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml b/gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml -deleted file mode 100644 -index e1845c8..0000000 ---- a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml -+++ /dev/null -@@ -1,20 +0,0 @@ --<Root> -- <popups> -- <popup name="button3"> -- <menuitem -- name="About Me Item" -- verb="GdmAboutMe" -- _label="Edit Personal _Information"/> -- <menuitem -- name="Users and Groups Admin Item" -- verb="GdmUsersGroupsAdmin" -- _label="_Edit Users and Groups"/> -- <menuitem -- name="About Item" -- verb="GdmAbout" -- _label="_About" -- pixtype="stock" -- pixname="gtk-about"/> -- </popup> -- </popups> --</Root> -diff --git a/gui/user-switch-applet/Makefile.am b/gui/user-switch-applet/Makefile.am -index 2d2cdc0..cebe890 100644 ---- a/gui/user-switch-applet/Makefile.am -+++ b/gui/user-switch-applet/Makefile.am -@@ -13,6 +13,7 @@ AM_CPPFLAGS = \ - -DLIBEXECDIR=\""$(libexecdir)"\" \ - -DSBINDIR=\""$(sbindir)"\" \ - -DGDMCONFDIR=\"$(gdmconfdir)\" \ -+ -DGDM_USER_SWITCH_MENU_UI_DIR="\"$(uidir)\"" \ - $(GTK_CFLAGS) \ - $(APPLET_CFLAGS) \ - $(NULL) -@@ -34,34 +35,31 @@ gdm_user_switch_applet_LDADD = \ - $(APPLET_LIBS) \ - $(NULL) - --# Bonobo UI --uidir = $(datadir)/gnome-2.0/ui --ui_DATA = \ -- GNOME_FastUserSwitchApplet.xml \ -- $(NULL) -+uidir = $(datadir)/gnome-2.0/ui -+ui_DATA = gdm-user-switch-applet-menu.xml - --# Bonobo .server --serverdir = $(libdir)/bonobo/servers --server_in_files = \ -- GNOME_FastUserSwitchApplet.server.in \ -- $(NULL) --server_DATA = $(server_in_files:.server.in=.server) -+appletdir = $(datadir)/gnome-panel/applets -+applet_in_files = org.gnome.gdm.UserSwitch.panel-applet.in -+applet_DATA = $(applet_in_files:.panel-applet.in=.panel-applet) - --$(server_in_files): $(server_in_files:.server.in=.server.in.in) -- sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" -e "s|\@VERSION\@|$(VERSION)|" $< > $@ -+$(applet_in_files): $(applet_in_files).in Makefile -+ $(AM_V_GEN)$(SED) -e "s|\@LIBEXECDIR\@|$(libexecdir)|" -e "s|\@VERSION\@|$(VERSION)|" $< > $@ - --@INTLTOOL_SERVER_RULE@ -+%.panel-applet: %.panel-applet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache - --EXTRA_DIST = \ -- $(ui_DATA) \ -- GNOME_FastUserSwitchApplet.server.in.in \ -- $(NULL) -+servicedir = $(datadir)/dbus-1/services -+service_in_files = org.gnome.panel.applet.GdmUserSwitchAppletFactory.service.in -+service_DATA = $(service_in_files:.service.in=.service) -+ -+org.gnome.panel.applet.GdmUserSwitchAppletFactory.service: $(service_in_files) -+ $(AM_V_GEN)$(SED) -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@ -+ -+EXTRA_DIST = org.gnome.gdm.UserSwitch.panel-applet.in.in \ -+ $(service_in_files) \ -+ $(ui_DATA) \ -+ $(NULL) -+ -+CLEANFILES = $(applet_DATA) $(applet_DATA).in $(service_DATA) - --DISTCLEANFILES = \ -- $(server_in_files) \ -- $(server_DATA) \ -- $(NULL) -+MAINTAINERCLEANFILES = *~ Makefile.in - --MAINTAINERCLEANFILES = \ -- *~ \ -- Makefile.in -diff --git a/gui/user-switch-applet/applet.c b/gui/user-switch-applet/applet.c -index b4f944c..74f7882 100644 ---- a/gui/user-switch-applet/applet.c -+++ b/gui/user-switch-applet/applet.c -@@ -34,9 +34,6 @@ - - #include <dbus/dbus-glib.h> - --#include <bonobo/bonobo-main.h> --#include <bonobo/bonobo-ui-util.h> -- - #include <panel-applet.h> - #include <panel-applet-gconf.h> - -@@ -102,16 +99,15 @@ static gboolean applet_factory (PanelApplet *applet, - const char *iid, - gpointer data); - --PANEL_APPLET_BONOBO_FACTORY ("OAFIID:GNOME_FastUserSwitchApplet_Factory", -- PANEL_TYPE_APPLET, -- "gdm-user-switch-applet", "0", -- (PanelAppletFactoryCallback)applet_factory, -- NULL) -+PANEL_APPLET_OUT_PROCESS_FACTORY ("GdmUserSwitchAppletFactory", -+ PANEL_TYPE_APPLET, -+ "gdm-user-switch-applet", -+ applet_factory, -+ NULL) - - static void --about_me_cb (BonoboUIComponent *ui_container, -- gpointer data, -- const char *cname) -+about_me_cb (GtkAction *action, -+ gpointer data) - { - GError *err; - -@@ -120,10 +116,7 @@ about_me_cb (BonoboUIComponent *ui_container, - g_critical ("Could not run `gnome-about-me': %s", - err->message); - g_error_free (err); -- bonobo_ui_component_set_prop (ui_container, -- "/commands/GdmAboutMe", -- "hidden", "1", -- NULL); -+ gtk_action_set_visible (action, FALSE); - } - } - -@@ -149,9 +142,8 @@ menubar_button_press_event_cb (GtkWidget *menubar, - } - - static void --about_cb (BonoboUIComponent *ui_container, -- gpointer data, -- const char *cname) -+about_cb (GtkAction *action, -+ gpointer data) - { - static const char *authors[] = { - "James M. Cape <jcape@ignore-your.tv>", -@@ -195,9 +187,8 @@ about_cb (BonoboUIComponent *ui_container, - - - static void --admin_cb (BonoboUIComponent *ui_container, -- gpointer data, -- const char *cname) -+admin_cb (GtkAction *action, -+ gpointer data) - { - #ifdef USERS_ADMIN - char **args; -@@ -231,82 +222,6 @@ admin_cb (BonoboUIComponent *ui_container, - } - - static void --set_menuitem_icon (BonoboUIComponent *component, -- const char *item_path, -- GtkIconTheme *theme, -- const char *icon_name, -- gint icon_size) --{ -- GdkPixbuf *pixbuf; -- int width; -- int height; -- -- pixbuf = gtk_icon_theme_load_icon (theme, icon_name, icon_size, 0, NULL); -- if (pixbuf == NULL) { -- return; -- } -- -- width = gdk_pixbuf_get_width (pixbuf); -- height = gdk_pixbuf_get_height (pixbuf); -- if (width > icon_size + 4 || height > icon_size + 4) { -- GdkPixbuf *tmp; -- if (height > width) { -- width *= (gdouble) icon_size / (gdouble) height; -- height = icon_size; -- } else { -- height *= (gdouble) icon_size / (gdouble) width; -- width = icon_size; -- } -- tmp = gdk_pixbuf_scale_simple (pixbuf, width, height, GDK_INTERP_BILINEAR); -- g_object_unref (pixbuf); -- pixbuf = tmp; -- } -- -- bonobo_ui_util_set_pixbuf (component, item_path, pixbuf, NULL); -- g_object_unref (pixbuf); --} -- --static void --applet_style_set_cb (GtkWidget *widget, -- GtkStyle *old_style, -- gpointer data) --{ -- BonoboUIComponent *component; -- GdkScreen *screen; -- GtkIconTheme *theme; -- int width; -- int height; -- int icon_size; -- -- if (gtk_widget_has_screen (widget)) { -- screen = gtk_widget_get_screen (widget); -- } else { -- screen = gdk_screen_get_default (); -- } -- -- if (gtk_icon_size_lookup_for_settings (gtk_settings_get_for_screen (screen), -- GTK_ICON_SIZE_MENU, &width, &height)) { -- icon_size = MAX (width, height); -- } else { -- icon_size = 16; -- } -- -- theme = gtk_icon_theme_get_for_screen (screen); -- component = panel_applet_get_popup_component (PANEL_APPLET (widget)); -- -- set_menuitem_icon (component, -- "/commands/GdmAboutMe", -- theme, -- "user-info", -- icon_size); -- set_menuitem_icon (component, -- "/commands/GdmUsersGroupsAdmin", -- theme, -- "stock_people", -- icon_size); --} -- --static void - applet_change_background_cb (PanelApplet *applet, - PanelAppletBackgroundType type, - GdkColor *color, -@@ -1389,18 +1304,23 @@ on_presence_status_text_changed (DBusGProxy *presence_proxy, - static gboolean - fill_applet (PanelApplet *applet) - { -- static const BonoboUIVerb menu_verbs[] = { -- BONOBO_UI_VERB ("GdmAboutMe", about_me_cb), -- BONOBO_UI_VERB ("GdmUsersGroupsAdmin", admin_cb), -- BONOBO_UI_VERB ("GdmAbout", about_cb), -- BONOBO_UI_VERB_END -+ static const GtkActionEntry gdm_user_switch_applet_actions[] = { -+ { "GdmAboutMe", "user-info", N_("Edit Personal _Information"), -+ NULL, NULL, -+ G_CALLBACK (about_me_cb) }, -+ { "GdmUsersGroupsAdmin", "stock-people", N_("_Edit Users and Groups"), -+ NULL, NULL, -+ G_CALLBACK (admin_cb) }, -+ { "GdmAbout", GTK_STOCK_ABOUT, N_("_About"), -+ NULL, NULL, -+ G_CALLBACK (about_cb) }, - }; - static gboolean first_time = FALSE; - char *tmp; -- BonoboUIComponent *popup_component; - GdmAppletData *adata; - GError *error; - DBusGConnection *bus; -+ GtkActionGroup *action_group; - - if (!first_time) { - first_time = TRUE; -@@ -1438,52 +1358,51 @@ fill_applet (PanelApplet *applet) - gtk_container_set_border_width (GTK_CONTAINER (applet), 0); - gtk_widget_set_name (GTK_WIDGET (applet), "gdm-user-switch-applet"); - panel_applet_set_flags (applet, PANEL_APPLET_EXPAND_MINOR); -- panel_applet_setup_menu_from_file (applet, NULL, -- DATADIR "/gnome-2.0/ui/GNOME_FastUserSwitchApplet.xml", -- NULL, menu_verbs, adata); - -- popup_component = panel_applet_get_popup_component (applet); -+ action_group = gtk_action_group_new ("GDM User Switch Applet Actions"); -+ gtk_action_group_set_translation_domain (action_group, GETTEXT_PACKAGE); -+ gtk_action_group_add_actions (action_group, -+ gdm_user_switch_applet_actions, -+ G_N_ELEMENTS (gdm_user_switch_applet_actions), -+ adata); -+ -+ panel_applet_setup_menu_from_file (applet, -+ GDM_USER_SWITCH_MENU_UI_DIR G_DIR_SEPARATOR_S "gdm-user-switch-applet-menu.xml", -+ action_group); - - /* Hide the admin context menu items if locked down or no cmd-line */ - if (gconf_client_get_bool (adata->client, - LOCKDOWN_COMMAND_LINE_KEY, - NULL) || - panel_applet_get_locked_down (applet)) { -- bonobo_ui_component_set_prop (popup_component, -- "/popups/button3/GdmSeparator", -- "hidden", "1", NULL); -- bonobo_ui_component_set_prop (popup_component, -- "/commands/GdmUsersGroupsAdmin", -- "hidden", "1", NULL); -+ GtkAction *action; -+ -+ action = gtk_action_group_get_action (action_group, "GdmUsersGroupsAdmin"); -+ gtk_action_set_visible (action, FALSE); - } else { -+ GtkAction *action; -+ - #ifndef USERS_ADMIN - # ifdef GDM_SETUP -- bonobo_ui_component_set_prop (popup_component, -- "/popups/button3/GdmSeparator", -- "hidden", "1", -- NULL); - # endif /* !GDM_SETUP */ -- bonobo_ui_component_set_prop (popup_component, -- "/commands/GdmUsersGroupsAdmin", -- "hidden", "1", -- NULL); -+ action = gtk_action_group_get_action (action_group, "GdmUsersGroupsAdmin"); -+ gtk_action_set_visible (action, FALSE); - #endif /* !USERS_ADMIN */ - } - - /* Hide the gdmphotosetup item if it can't be found in the path. */ - tmp = g_find_program_in_path ("gnome-about-me"); - if (!tmp) { -- bonobo_ui_component_set_prop (popup_component, -- "/commands/GdmAboutMe", -- "hidden", "1", -- NULL); -+ GtkAction *action; -+ -+ action = gtk_action_group_get_action (action_group, "GdmAboutMe"); -+ gtk_action_set_visible (action, FALSE); - } else { - g_free (tmp); - } - -- g_signal_connect (adata->applet, -- "style-set", -- G_CALLBACK (applet_style_set_cb), adata); -+ g_object_unref (action_group); -+ - g_signal_connect (applet, - "change-background", - G_CALLBACK (applet_change_background_cb), adata); -@@ -1655,7 +1574,7 @@ applet_factory (PanelApplet *applet, - { - gboolean ret; - ret = FALSE; -- if (strcmp (iid, "OAFIID:GNOME_FastUserSwitchApplet") == 0) { -+ if (strcmp (iid, "GdmUserSwitchApplet") == 0) { - ret = fill_applet (applet); - } - return ret; -diff --git a/gui/user-switch-applet/gdm-user-switch-applet-menu.xml b/gui/user-switch-applet/gdm-user-switch-applet-menu.xml -new file mode 100644 -index 0000000..78301b3 ---- /dev/null -+++ b/gui/user-switch-applet/gdm-user-switch-applet-menu.xml -@@ -0,0 +1,4 @@ -+<menuitem name="About Me Item" action="GdmAboutMe"/> -+<menuitem name="Users and Groups Admin Item" action="GdmUsersGroupsAdmin"/> -+<menuitem name="About Item" action="GdmAbout"/> -+ -diff --git a/gui/user-switch-applet/org.gnome.gdm.UserSwitch.panel-applet.in.in b/gui/user-switch-applet/org.gnome.gdm.UserSwitch.panel-applet.in.in -new file mode 100644 -index 0000000..3c77dfb ---- /dev/null -+++ b/gui/user-switch-applet/org.gnome.gdm.UserSwitch.panel-applet.in.in -@@ -0,0 +1,16 @@ -+[Applet Factory] -+Id=GdmUserSwitchAppletFactory -+Location=@LIBEXECDIR@/gdm-user-switch-applet -+_Name=User Switcher Applet Factory -+_Description=User Switcher Applet Factory -+ -+[GdmUserSwitchApplet] -+_Name=User Switcher -+_Description=A menu to quickly switch between users -+BonoboId=OAFIID:GNOME_FastUserSwitchApplet -+X-GNOME-Bugzilla-Bugzilla=GNOME -+X-GNOME-Bugzilla-Product=gdm -+X-GNOME-Bugzilla-Component=general -+X-GNOME-Bugzilla-Version=@VERSION@ -+X-GNOME-Bugzilla-OtherBinaries=gdm-user-switch-applet -+ -diff --git a/gui/user-switch-applet/org.gnome.panel.applet.GdmUserSwitchAppletFactory.service.in b/gui/user-switch-applet/org.gnome.panel.applet.GdmUserSwitchAppletFactory.service.in -new file mode 100644 -index 0000000..7bf900f ---- /dev/null -+++ b/gui/user-switch-applet/org.gnome.panel.applet.GdmUserSwitchAppletFactory.service.in -@@ -0,0 +1,4 @@ -+[D-BUS Service] -+Name=org.gnome.panel.applet.GdmUserSwitchAppletFactory -+Exec=@LIBEXECDIR@/gdm-user-switch-applet -+ -diff --git a/po/POTFILES.in b/po/POTFILES.in -index 1fccb90..5340391 100644 ---- a/po/POTFILES.in -+++ b/po/POTFILES.in -@@ -86,8 +86,7 @@ gui/simple-greeter/gdm-user-chooser-widget.c - gui/simple-greeter/greeter-main.c - gui/user-switch-applet/applet.c - gui/user-switch-applet/gdm-entry-menu-item.c --gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in --gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml -+gui/user-switch-applet/org.gnome.gdm.UserSwitch.panel-applet.in.in - utils/gdmflexiserver.c - utils/gdm-screenshot.c - -diff --git a/po/POTFILES.skip b/po/POTFILES.skip -index 0269a0f..9032c03 100644 ---- a/po/POTFILES.skip -+++ b/po/POTFILES.skip -@@ -7,7 +7,7 @@ - # remove these unless you fix "make distcheck" a different way. - # - data/gdm.schemas.in --gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in -+gui/user-switch-applet/org.gnome.gdm.UserSwitch.panel-applet.in - data/greeter-autostart/at-spi-registryd-wrapper.desktop.in - data/greeter-autostart/gdm-simple-greeter.desktop.in - data/greeter-autostart/gnome-power-manager.desktop.in --- -1.7.2.3 - diff --git a/extra/gdm/04_fix_external_program_directories.patch b/extra/gdm/04_fix_external_program_directories.patch deleted file mode 100644 index 7ccc28644..000000000 --- a/extra/gdm/04_fix_external_program_directories.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -Nur gdm-2.30.2.orig/daemon/gdm-server.c gdm-2.30.2/daemon/gdm-server.c ---- gdm-2.30.2.orig/daemon/gdm-server.c 2010-04-26 20:08:42.000000000 +0300 -+++ gdm-2.30.2/daemon/gdm-server.c 2010-04-29 22:55:49.631648355 +0300 -@@ -127,7 +127,7 @@ - g_return_val_if_fail (GDM_IS_SERVER (server), NULL); - - error = NULL; -- command = g_strdup_printf (LIBEXECDIR "/ck-get-x11-display-device --display %s", -+ command = g_strdup_printf ("/usr/lib/ConsoleKit/ck-get-x11-display-device --display %s", - server->priv->display_name); - - g_debug ("GdmServer: Running helper %s", command); -diff -Nur gdm-2.30.2.orig/data/greeter-autostart/gnome-settings-daemon.desktop.in.in gdm-2.30.2/data/greeter-autostart/gnome-settings-daemon.desktop.in.in ---- gdm-2.30.2.orig/data/greeter-autostart/gnome-settings-daemon.desktop.in.in 2010-03-17 23:27:16.000000000 +0200 -+++ gdm-2.30.2/data/greeter-autostart/gnome-settings-daemon.desktop.in.in 2010-04-29 22:53:54.984878068 +0300 -@@ -1,8 +1,8 @@ - [Desktop Entry] - Type=Application - _Name=GNOME Settings Daemon --TryExec=@LIBEXECDIR@/gnome-settings-daemon --Exec=@LIBEXECDIR@/gnome-settings-daemon --gconf-prefix=/apps/gdm/simple-greeter/settings-manager-plugins -+TryExec=/usr/bin/gnome-settings-daemon -+Exec=/usr/bin/gnome-settings-daemon --gconf-prefix=/apps/gdm/simple-greeter/settings-manager-plugins - OnlyShowIn=GNOME; - X-GNOME-Autostart-Phase=Initialization - X-GNOME-Autostart-Notify=true -diff -Nur gdm-2.30.2.orig/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in gdm-2.30.2/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in ---- gdm-2.30.2.orig/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in 2010-03-26 15:28:03.000000000 +0200 -+++ gdm-2.30.2/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in 2010-04-29 22:54:24.638396328 +0300 -@@ -1,5 +1,5 @@ - [Desktop Entry] - Type=Application - _Name=PolicyKit Authentication Agent --Exec=@LIBEXECDIR@/polkit-gnome-authentication-agent-1 -+Exec=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 - OnlyShowIn=GNOME; -diff -Nur gdm-2.30.2.orig/gui/simple-chooser/gdm-chooser-session.c gdm-2.30.2/gui/simple-chooser/gdm-chooser-session.c ---- gdm-2.30.2.orig/gui/simple-chooser/gdm-chooser-session.c 2010-03-17 23:27:16.000000000 +0200 -+++ gdm-2.30.2/gui/simple-chooser/gdm-chooser-session.c 2010-04-29 22:57:08.691626507 +0300 -@@ -131,7 +131,7 @@ - ret = FALSE; - - error = NULL; -- g_spawn_command_line_async (LIBEXECDIR "/gnome-settings-daemon --gconf-prefix=/apps/gdm/simple-chooser/settings-manager-plugins", &error); -+ g_spawn_command_line_async ("/usr/bin/gnome-settings-daemon --gconf-prefix=/apps/gdm/simple-chooser/settings-manager-plugins", &error); - if (error != NULL) { - g_warning ("Error starting settings daemon: %s", error->message); - g_error_free (error); diff --git a/extra/gdm/correctly-give-focus-to-user-chooser.patch b/extra/gdm/correctly-give-focus-to-user-chooser.patch deleted file mode 100644 index e08675a36..000000000 --- a/extra/gdm/correctly-give-focus-to-user-chooser.patch +++ /dev/null @@ -1,46 +0,0 @@ -From b971eb1038cb92ed8211b68a7d2a99a98d86ed7f Mon Sep 17 00:00:00 2001 -From: Vincent Untz <vuntz@gnome.org> -Date: Wed, 12 Jan 2011 18:38:46 +0100 -Subject: [PATCH] Correctly give focus to the user chooser on startup - -We manually handle how focus works in the GdmChooserWidget container, -and we try to automatically move the focus to the treeview inside the -chooser. However, it fails the first time because the treeview is not -realized yet and the logic in the code assumes that if focus moved to -the chooser, it moved to the treeview, so later attempt to get the focus -grabbed by the treeview are just ignored. - -It works fine when using gtk_widget_child_focus() to give the focus to -the treeview. And this makes more sense since the chooser is a container -anyway. - -https://bugzilla.gnome.org/show_bug.cgi?id=629310 ---- - gui/simple-greeter/gdm-chooser-widget.c | 6 +----- - 1 files changed, 1 insertions(+), 5 deletions(-) - -diff --git a/gui/simple-greeter/gdm-chooser-widget.c b/gui/simple-greeter/gdm-chooser-widget.c -index db2d9b2..ebbfdb9 100644 ---- a/gui/simple-greeter/gdm-chooser-widget.c -+++ b/gui/simple-greeter/gdm-chooser-widget.c -@@ -910,17 +910,13 @@ _grab_focus (GtkWidget *widget) - - foc_widget = GDM_CHOOSER_WIDGET (widget)->priv->items_view; - g_debug ("GdmChooserWidget: grabbing focus"); -- if (! gtk_widget_get_realized (foc_widget)) { -- g_debug ("GdmChooserWidget: not grabbing focus - not realized"); -- return; -- } - - if (gtk_widget_has_focus (foc_widget)) { - g_debug ("GdmChooserWidget: not grabbing focus - already has it"); - return; - } - -- gtk_widget_grab_focus (foc_widget); -+ gtk_widget_child_focus (foc_widget, GTK_DIR_TAB_FORWARD); - } - - static void --- -1.7.3.4 diff --git a/extra/gnome-applets/add-dbus-glib.patch b/extra/gnome-applets/add-dbus-glib.patch deleted file mode 100644 index 16c2999a8..000000000 --- a/extra/gnome-applets/add-dbus-glib.patch +++ /dev/null @@ -1,28 +0,0 @@ -From fe72f63c91a1458d97d455ab0078d042464366e7 Mon Sep 17 00:00:00 2001 -From: Enrico Minack <enrico-minack@gmx.de> -Date: Mon, 03 Jan 2011 19:58:13 +0000 -Subject: gweather: fixes NetworkManager support to compile, see bug 636217 - ---- -diff --git a/gweather/Makefile.am b/gweather/Makefile.am -index ea6ac96..165efda 100644 ---- a/gweather/Makefile.am -+++ b/gweather/Makefile.am -@@ -6,6 +6,7 @@ INCLUDES = \ - -I$(srcdir) \ - -I$(top_srcdir) \ - -DGWEATHER_MENU_UI_DIR=\""$(uidir)"\" \ -+ $(DBUS_CFLAGS) \ - $(GNOME_APPLETS3_CFLAGS) \ - $(LIBNOTIFY_CFLAGS) \ - $(LIBGWEATHER_CFLAGS) \ -@@ -22,6 +23,7 @@ gweather_applet_2_SOURCES = \ - gweather-applet.c gweather-applet.h - - gweather_applet_2_LDADD = \ -+ $(DBUS_LIBS) \ - $(LIBNOTIFY_LIBS) \ - $(GNOME_APPLETS3_LIBS) \ - $(GNOME_LIBS2_LIBS) \ --- -cgit v0.8.3.4 diff --git a/extra/gnome-applets/gnome-applets-2.32.1.1-libnotify-0.7.patch b/extra/gnome-applets/gnome-applets-2.32.1.1-libnotify-0.7.patch deleted file mode 100644 index f2b889ec0..000000000 --- a/extra/gnome-applets/gnome-applets-2.32.1.1-libnotify-0.7.patch +++ /dev/null @@ -1,53 +0,0 @@ ---- battstat/battstat_applet.c -+++ battstat/battstat_applet.c -@@ -42,6 +42,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #include "battstat.h" -@@ -435,7 +438,12 @@ - GTK_ICON_LOOKUP_USE_BUILTIN, - NULL); - -- NotifyNotification *n = notify_notification_new (_("Your battery is now fully recharged"), "", /* "battery" */ NULL, applet); -+ NotifyNotification *n = notify_notification_new (_("Your battery is now fully recharged"), "", /* "battery" */ NULL -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , applet); -+#endif - - /* XXX: it would be nice to pass this as a named icon */ - notify_notification_set_icon_from_pixbuf (n, icon); ---- gweather/gweather-applet.c -+++ gweather/gweather-applet.c -@@ -30,6 +30,9 @@ - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> - #include <libnotify/notification.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #define GWEATHER_I_KNOW_THIS_IS_UNSTABLE -@@ -471,8 +474,12 @@ - if (icon == NULL) - icon = "stock-unknown"; - -- n = notify_notification_new (message, detail, icon, -- gw_applet->container); -+ n = notify_notification_new (message, detail, icon -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , gw_applet->container); -+#endif - - notify_notification_show (n, &error); - if (error) diff --git a/extra/gnome-bluetooth/gnome-bluetooth-2.32.0-libnotify-0.7.patch b/extra/gnome-bluetooth/gnome-bluetooth-2.32.0-libnotify-0.7.patch deleted file mode 100644 index 72a726521..000000000 --- a/extra/gnome-bluetooth/gnome-bluetooth-2.32.0-libnotify-0.7.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- applet/notify.c -+++ applet/notify.c -@@ -31,6 +31,10 @@ - #include <libnotify/notify.h> - #include "notify.h" - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - static GtkStatusIcon *statusicon = NULL; - static char *icon_name = NULL; - static char *tooltip = NULL; -@@ -71,7 +75,12 @@ - notify_notification_close(notify, NULL); - } - -- notify = notify_notification_new(summary, message, icon_name, NULL); -+ notify = notify_notification_new(summary, message, icon_name -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - - notify_notification_set_timeout(notify, timeout); - diff --git a/extra/gnome-games/03_missing_icons.patch b/extra/gnome-games/03_missing_icons.patch deleted file mode 100644 index c9bfe9be5..000000000 --- a/extra/gnome-games/03_missing_icons.patch +++ /dev/null @@ -1,38 +0,0 @@ -Index: gnome-games-2.30.2/libgames-support/games-stock.c -=================================================================== ---- gnome-games-2.30.2.orig/libgames-support/games-stock.c 2010-07-04 11:33:16.880062363 +0200 -+++ gnome-games-2.30.2/libgames-support/games-stock.c 2010-07-04 12:23:59.035567621 +0200 -@@ -282,15 +282,14 @@ games_stock_init (void) - #ifdef HAVE_GTK_ICON_FACTORY_ADD_ALIAS - { GAMES_STOCK_REDO_MOVE, GTK_STOCK_REDO }, - { GAMES_STOCK_UNDO_MOVE, GTK_STOCK_UNDO }, -+ { GAMES_STOCK_RESUME_GAME, GTK_STOCK_MEDIA_PLAY }, - #endif - #ifndef HAVE_HILDON - { GAMES_STOCK_NETWORK_GAME, GTK_STOCK_NETWORK }, - { GAMES_STOCK_NETWORK_LEAVE, GTK_STOCK_STOP }, - { GAMES_STOCK_PLAYER_LIST, GTK_STOCK_INFO }, - -- { GAMES_STOCK_PAUSE_GAME, "stock_timer_stopped" }, -- { GAMES_STOCK_RESUME_GAME, "stock_timer" }, -- { GAMES_STOCK_SCORES, "stock_scores" }, -+ { GAMES_STOCK_PAUSE_GAME, GTK_STOCK_MEDIA_PAUSE }, - #endif /* !HAVE_HILDON */ - }; - -@@ -298,6 +297,7 @@ games_stock_init (void) - const char *stock_icon_aliases_bidi[][3] = { - { GAMES_STOCK_REDO_MOVE, GTK_STOCK_REDO "-ltr", GTK_STOCK_REDO "-rtl" }, - { GAMES_STOCK_UNDO_MOVE, GTK_STOCK_UNDO "-ltr", GTK_STOCK_UNDO "-rtl" }, -+ { GAMES_STOCK_RESUME_GAME, GTK_STOCK_MEDIA_PLAY "-ltr", GTK_STOCK_MEDIA_PLAY "-rtl" }, - }; - #endif - -@@ -306,6 +306,7 @@ games_stock_init (void) - #ifndef HAVE_HILDON - { GAMES_STOCK_TELEPORT, "teleport" }, - { GAMES_STOCK_RTELEPORT, "teleport-random" }, -+ { GAMES_STOCK_SCORES, "scores" }, - #endif /* !HAVE_HILDON */ - { GAMES_STOCK_DEAL_CARDS, "cards-deal" } - }; diff --git a/extra/gnome-games/scores.png b/extra/gnome-games/scores.png Binary files differdeleted file mode 100644 index fb8ea036f..000000000 --- a/extra/gnome-games/scores.png +++ /dev/null diff --git a/extra/gnome-panel/evolution-appointments.patch b/extra/gnome-panel/evolution-appointments.patch deleted file mode 100644 index c4831adf2..000000000 --- a/extra/gnome-panel/evolution-appointments.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/applets/clock/calendar-window.c b/applets/clock/calendar-window.c -index 932ebda..bfad14e 100644 ---- a/applets/clock/calendar-window.c -+++ b/applets/clock/calendar-window.c -@@ -450,6 +450,8 @@ is_appointment (GtkTreeModel *model, - gtk_tree_model_get (model, iter, APPOINTMENT_COLUMN_URI, &uri, -1); - if (uri) - return (g_ascii_strcasecmp (uri, "file") == 0 || -+ g_ascii_strcasecmp (uri, "local") == 0 || -+ g_ascii_strcasecmp (uri, "mapi") == 0 || - g_ascii_strcasecmp (uri, "webcal") == 0 || - g_ascii_strcasecmp (uri, "caldav") == 0 || - g_ascii_strcasecmp (uri, "exchange") == 0 || diff --git a/extra/gnome-panel/gnome-panel-bonobo.install b/extra/gnome-panel/gnome-panel-bonobo.install deleted file mode 100644 index 0bc8c431e..000000000 --- a/extra/gnome-panel/gnome-panel-bonobo.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - usr/bin/gio-querymodules usr/lib/gnome-panel/modules -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - post_install $1 -} diff --git a/extra/gnome-power-manager/gnome-power-manager-2.32.0-libnotify-0.7.patch b/extra/gnome-power-manager/gnome-power-manager-2.32.0-libnotify-0.7.patch deleted file mode 100644 index d021f2930..000000000 --- a/extra/gnome-power-manager/gnome-power-manager-2.32.0-libnotify-0.7.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- src/gpm-manager.c -+++ src/gpm-manager.c -@@ -43,6 +43,10 @@ - #include <libupower-glib/upower.h> - #include <libnotify/notify.h> - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - #include "egg-debug.h" - #include "egg-console-kit.h" - -@@ -480,12 +484,16 @@ - /* close any existing notification of this class */ - gpm_manager_notify_close (manager, *notification_class); - -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ notification = notify_notification_new (title, message, icon); -+#else - /* if the status icon is hidden, don't point at it */ - if (manager->priv->status_icon != NULL && - gtk_status_icon_is_embedded (manager->priv->status_icon)) - notification = notify_notification_new_with_status_icon (title, message, icon, manager->priv->status_icon); - else - notification = notify_notification_new (title, message, icon, NULL); -+#endif - notify_notification_set_timeout (notification, timeout); - notify_notification_set_urgency (notification, urgency); - g_signal_connect (notification, "closed", G_CALLBACK (gpm_manager_notification_closed_cb), notification_class); diff --git a/extra/gnome-screensaver/gnome-screensaver-2.30.2-libnotify-0.7.patch b/extra/gnome-screensaver/gnome-screensaver-2.30.2-libnotify-0.7.patch deleted file mode 100644 index 6eeb16819..000000000 --- a/extra/gnome-screensaver/gnome-screensaver-2.30.2-libnotify-0.7.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -Nur gnome-screensaver-2.30.2.orig/src/gs-lock-plug.c gnome-screensaver-2.30.2/src/gs-lock-plug.c ---- gnome-screensaver-2.30.2.orig/src/gs-lock-plug.c 2010-09-28 13:36:51.000000000 -0700 -+++ gnome-screensaver-2.30.2/src/gs-lock-plug.c 2011-03-07 00:54:44.086669840 -0800 -@@ -47,6 +47,10 @@ - #include <libnotify/notify.h> - #endif - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - #include "gs-lock-plug.h" - - #include "gs-debug.h" -@@ -1090,7 +1094,11 @@ - strftime (summary, 128, "%X", tmp); - - notify_init ("gnome-screensaver-dialog"); -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ note = notify_notification_new (summary, escaped_text, NULL); -+#else - note = notify_notification_new (summary, escaped_text, NULL, NULL); -+#endif - notify_notification_set_timeout (note, NOTIFY_EXPIRES_NEVER); - notify_notification_show (note, NULL); - g_object_unref (note); diff --git a/extra/gnome-settings-daemon/add_notify_init.patch b/extra/gnome-settings-daemon/add_notify_init.patch deleted file mode 100644 index b1e644f5d..000000000 --- a/extra/gnome-settings-daemon/add_notify_init.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -Nur gnome-settings-daemon-2.32.1.orig/plugins/xrandr/gsd-xrandr-manager.c gnome-settings-daemon-2.32.1/plugins/xrandr/gsd-xrandr-manager.c ---- gnome-settings-daemon-2.32.1.orig/plugins/xrandr/gsd-xrandr-manager.c 2010-11-15 05:11:00.000000000 -0800 -+++ gnome-settings-daemon-2.32.1/plugins/xrandr/gsd-xrandr-manager.c 2011-03-17 11:52:57.516694024 -0700 -@@ -2530,6 +2530,10 @@ - - manager->priv->current_fn_f7_config = -1; - manager->priv->fn_f7_configs = NULL; -+ -+#ifdef HAVE_LIBNOTIFY -+ notify_init ("gnome-settings-daemon"); -+#endif /* HAVE_LIBNOTIFY */ - } - - static void diff --git a/extra/gnome-settings-daemon/gnome-settings-daemon-2.32.1-libnotify-0.7.patch b/extra/gnome-settings-daemon/gnome-settings-daemon-2.32.1-libnotify-0.7.patch deleted file mode 100644 index f755f24ac..000000000 --- a/extra/gnome-settings-daemon/gnome-settings-daemon-2.32.1-libnotify-0.7.patch +++ /dev/null @@ -1,76 +0,0 @@ ---- plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c -+++ plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c -@@ -48,6 +48,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif /* HAVE_LIBNOTIFY */ - - #include "gnome-settings-profile.h" -@@ -608,9 +611,13 @@ - gsd_a11y_keyboard_manager_ensure_status_icon (manager); - manager->priv->notification = notify_notification_new (title, - message, -- "preferences-desktop-accessibility", -- NULL); -+ "preferences-desktop-accessibility" -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); - notify_notification_attach_to_status_icon (manager->priv->notification, manager->priv->status_icon); -+#endif - notify_notification_set_timeout (manager->priv->notification, NOTIFICATION_TIMEOUT * 1000); - - notify_notification_add_action (manager->priv->notification, -@@ -747,9 +754,13 @@ - gsd_a11y_keyboard_manager_ensure_status_icon (manager); - manager->priv->notification = notify_notification_new (title, - message, -- "preferences-desktop-accessibility", -- NULL); -+ "preferences-desktop-accessibility" -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); - notify_notification_attach_to_status_icon (manager->priv->notification, manager->priv->status_icon); -+#endif - notify_notification_set_timeout (manager->priv->notification, NOTIFICATION_TIMEOUT * 1000); - - notify_notification_add_action (manager->priv->notification, ---- plugins/xrandr/gsd-xrandr-manager.c -+++ plugins/xrandr/gsd-xrandr-manager.c -@@ -48,6 +48,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #include "gnome-settings-profile.h" -@@ -1086,6 +1089,11 @@ - - g_assert (error_to_display == NULL || secondary_text == NULL); - -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ notification = notify_notification_new (primary_text, -+ error_to_display ? error_to_display->message : secondary_text, -+ GSD_XRANDR_ICON_NAME); -+#else - if (priv->status_icon) - notification = notify_notification_new_with_status_icon (primary_text, - error_to_display ? error_to_display->message : secondary_text, -@@ -1096,6 +1104,7 @@ - error_to_display ? error_to_display->message : secondary_text, - GSD_XRANDR_ICON_NAME, - NULL); -+#endif - - notify_notification_show (notification, NULL); /* NULL-GError */ - #else diff --git a/extra/gnome-settings-daemon/gstreamer-volume-2.29.91.patch b/extra/gnome-settings-daemon/gstreamer-volume-2.29.91.patch deleted file mode 100644 index 847a57622..000000000 --- a/extra/gnome-settings-daemon/gstreamer-volume-2.29.91.patch +++ /dev/null @@ -1,809 +0,0 @@ -diff -Nur gnome-settings-daemon-2.29.91.1.orig/configure.ac gnome-settings-daemon-2.29.91.1/configure.ac ---- gnome-settings-daemon-2.29.91.1.orig/configure.ac 2010-02-24 16:39:10.000000000 +0200 -+++ gnome-settings-daemon-2.29.91.1/configure.ac 2010-02-25 18:18:35.000000000 +0200 -@@ -248,6 +248,48 @@ - AC_SUBST(PULSE_CFLAGS) - AC_SUBST(PULSE_LIBS) - -+dnl ============================================== -+dnl GStreamer section -+dnl ============================================== -+GST_MAJORMINOR=auto -+ -+AC_ARG_ENABLE(gstreamer, -+AC_HELP_STRING([--enable-gstreamer],[use gstreamer if available (and optionally specify a version)]), -+[case "${enableval}" in -+ yes) ENABLE_GSTREAMER=yes ;; -+ 0.10) ENABLE_GSTREAMER=yes && GST_MAJORMINOR=0.10 ;; -+ no) ENABLE_GSTREAMER=no ;; -+ *) AC_MSG_ERROR([ -+ *** Bad value ${enableval} for --enable-gstreamer -+ *** Please use one of the following: -+ *** --enable-gstreamer=0.10 -+ ]) ;; -+esac], -+[ENABLE_GSTREAMER=yes]) dnl Default value -+ -+have_gstreamer=no -+if test "x$ENABLE_GSTREAMER" = "xyes"; then -+ GST_REQS=0.10.1.2 -+ PKGS="gstreamer-0.10 >= $GST_REQS gstreamer-plugins-base-0.10 >= $GST_REQS" -+ -+ PKG_CHECK_MODULES(GST, $PKGS, have_gstreamer=yes, -+ AC_MSG_RESULT([no])) -+ -+ if test "x$have_pulse" = "xtrue"; then -+ AC_MSG_ERROR([*** GStreamer & Pulseaudio both are selected ***]) -+ fi -+ -+ if test "x$have_gstreamer" = "xyes"; then -+ GST_LIBS="$GST_LIBS -lgstinterfaces-0.10 -lgstaudio-0.10" -+ AC_DEFINE(HAVE_GSTREAMER,1,[enable gstreamer]) -+ fi -+else -+ AC_MSG_NOTICE([*** GStreamer support disabled ***]) -+fi -+AM_CONDITIONAL(HAVE_GSTREAMER, test "x$have_gstreamer" = "xyes") -+AC_SUBST(GST_LIBS) -+AC_SUBST(GST_CFLAGS) -+ - # --------------------------------------------------------------------------- - # Enable Profiling - # --------------------------------------------------------------------------- -@@ -386,6 +428,7 @@ - dbus-1 system.d dir: ${DBUS_SYS_DIR} - - Libnotify support: ${have_libnotify} -+ GStreamer support: ${have_gstreamer} - PulseAudio support: ${have_pulse} - Profiling support: ${enable_profiling} - " -diff -Nur gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c gnome-settings-daemon-2.29.91.1/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c ---- gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c 1970-01-01 02:00:00.000000000 +0200 -+++ gnome-settings-daemon-2.29.91.1/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c 2010-02-25 18:18:35.000000000 +0200 -@@ -0,0 +1,402 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -+ -+/* acme-volume.c -+ -+ Copyright (C) 2002, 2003 Bastien Nocera -+ Copyright (C) 2004 Novell, Inc. -+ Copyright (C) 2009 PERIER Romain <mrpouet@tuxfamily.org> -+ -+ The Gnome Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The Gnome Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the Gnome Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. -+ -+ Author: Bastien Nocera <hadess@hadess.net> -+ Jon Trowbridge <trow@ximian.com> -+*/ -+ -+#include "config.h" -+#include "gvc-gstreamer-acme-vol.h" -+ -+#include <gst/gst.h> -+#include <gst/audio/mixerutils.h> -+#include <gst/interfaces/mixer.h> -+#include <gst/interfaces/propertyprobe.h> -+ -+#include <gconf/gconf-client.h> -+ -+#include <string.h> -+ -+#define TIMEOUT 4 -+ -+#define DEFAULT_MIXER_DEVICE_KEY "/desktop/gnome/sound/default_mixer_device" -+#define DEFAULT_MIXER_TRACKS_KEY "/desktop/gnome/sound/default_mixer_tracks" -+ -+#define ACME_VOLUME_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), ACME_TYPE_VOLUME, AcmeVolumePrivate)) -+ -+struct AcmeVolumePrivate { -+ GstMixer *mixer; -+ GList *mixer_tracks; -+ guint timer_id; -+ gdouble volume; -+ gboolean mute; -+ GConfClient *gconf_client; -+}; -+ -+G_DEFINE_TYPE (AcmeVolume, acme_volume, G_TYPE_OBJECT) -+ -+static gboolean acme_volume_open (AcmeVolume *acme); -+static void acme_volume_close (AcmeVolume *acme); -+static gboolean acme_volume_close_real (AcmeVolume *self); -+ -+static gpointer acme_volume_object = NULL; -+ -+static void -+acme_volume_finalize (GObject *object) -+{ -+ AcmeVolume *self; -+ -+ g_return_if_fail (object != NULL); -+ g_return_if_fail (ACME_IS_VOLUME (object)); -+ -+ self = ACME_VOLUME (object); -+ -+ if (self->_priv->timer_id != 0) -+ g_source_remove (self->_priv->timer_id); -+ acme_volume_close_real (self); -+ -+ if (self->_priv->gconf_client != NULL) { -+ g_object_unref (self->_priv->gconf_client); -+ self->_priv->gconf_client = NULL; -+ } -+ -+ G_OBJECT_CLASS (acme_volume_parent_class)->finalize (object); -+} -+ -+void -+acme_volume_set_mute (AcmeVolume *self, gboolean val) -+{ -+ GList *t; -+ -+ g_return_if_fail(ACME_IS_VOLUME(self)); -+ g_return_if_fail(acme_volume_open(self)); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gst_mixer_set_mute (self->_priv->mixer, track, val); -+ } -+ self->_priv->mute = val; -+ acme_volume_close (self); -+} -+ -+static void -+update_state (AcmeVolume * self) -+{ -+ gint *volumes, n; -+ gdouble vol = 0; -+ GstMixerTrack *track = GST_MIXER_TRACK (self->_priv->mixer_tracks->data); -+ -+ /* update mixer by getting volume */ -+ volumes = g_new0 (gint, track->num_channels); -+ gst_mixer_get_volume (self->_priv->mixer, track, volumes); -+ for (n = 0; n < track->num_channels; n++) -+ vol += volumes[n]; -+ g_free (volumes); -+ vol /= track->num_channels; -+ vol = 100 * vol / (track->max_volume - track->min_volume); -+ -+ /* update mute flag, and volume if not muted */ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MUTE)) -+ self->_priv->mute = TRUE; -+ self->_priv->volume = vol; -+} -+ -+gboolean -+acme_volume_get_mute (AcmeVolume *self) -+{ -+ g_return_val_if_fail(acme_volume_open(self), FALSE); -+ -+ update_state (self); -+ acme_volume_close (self); -+ -+ return self->_priv->mute; -+} -+ -+gint -+acme_volume_get_volume (AcmeVolume *self) -+{ -+ -+ g_return_val_if_fail(acme_volume_open(self), 0); -+ -+ update_state (self); -+ -+ acme_volume_close (self); -+ -+ return (gint) (self->_priv->volume + 0.5); -+} -+ -+void -+acme_volume_set_volume (AcmeVolume *self, gint val) -+{ -+ GList *t; -+ -+ g_return_if_fail(acme_volume_open(self)); -+ -+ val = CLAMP (val, 0, 100); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gint *volumes, n; -+ gdouble scale = (track->max_volume - track->min_volume) / 100.0; -+ gint vol = (gint) (val * scale + track->min_volume + 0.5); -+ -+ volumes = g_new (gint, track->num_channels); -+ for (n = 0; n < track->num_channels; n++) -+ volumes[n] = vol; -+ gst_mixer_set_volume (self->_priv->mixer, track, volumes); -+ g_free (volumes); -+ } -+ -+ /* update state */ -+ self->_priv->volume = val; -+ -+ acme_volume_close (self); -+} -+ -+void -+acme_volume_mute_toggle (AcmeVolume *self) -+{ -+ gboolean muted; -+ -+ g_return_if_fail (self != NULL); -+ g_return_if_fail (ACME_IS_VOLUME(self)); -+ -+ muted = acme_volume_get_mute(self); -+ acme_volume_set_mute(self, !muted); -+} -+ -+gint -+acme_volume_get_threshold (AcmeVolume *self) -+{ -+ GList *t; -+ gint steps = 101; -+ -+ g_return_val_if_fail(acme_volume_open(self), 1); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gint track_steps = track->max_volume - track->min_volume; -+ if (track_steps > 0 && track_steps < steps) -+ steps = track_steps; -+ } -+ -+ acme_volume_close (self); -+ -+ return 100 / steps + 1; -+} -+ -+static gboolean -+acme_volume_close_real (AcmeVolume *self) -+{ -+ if (self->_priv->mixer != NULL) -+ { -+ gst_element_set_state (GST_ELEMENT (self->_priv->mixer), GST_STATE_NULL); -+ gst_object_unref (GST_OBJECT (self->_priv->mixer)); -+ g_list_foreach (self->_priv->mixer_tracks, (GFunc) g_object_unref, NULL); -+ g_list_free (self->_priv->mixer_tracks); -+ self->_priv->mixer = NULL; -+ self->_priv->mixer_tracks = NULL; -+ } -+ -+ self->_priv->timer_id = 0; -+ return FALSE; -+} -+ -+/* -+ * _acme_set_mixer -+ * @mixer A pointer to mixer element -+ * @data A pointer to user data (AcmeVolume instance to be modified) -+ * @return A gboolean indicating success if Master track was found, failed otherwises. -+ */ -+static gboolean -+_acme_set_mixer(GstMixer *mixer, gpointer user_data) -+{ -+ const GList *tracks; -+ -+ for (tracks = gst_mixer_list_tracks (mixer); tracks != NULL; tracks = tracks->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (tracks->data); -+ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MASTER)) { -+ AcmeVolume *self; -+ -+ self = ACME_VOLUME (user_data); -+ -+ self->_priv->mixer = mixer; -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ return TRUE; -+ } -+ -+ continue; -+ } -+ -+ return FALSE; -+} -+ -+/* This is a modified version of code from gnome-media's gst-mixer */ -+static gboolean -+acme_volume_open (AcmeVolume *self) -+{ -+ gchar *mixer_device, **factory_and_device = NULL; -+ GList *mixer_list; -+ -+ if (self->_priv->timer_id != 0) { -+ g_source_remove (self->_priv->timer_id); -+ self->_priv->timer_id = 0; -+ return TRUE; -+ } -+ -+ mixer_device = gconf_client_get_string (self->_priv->gconf_client, DEFAULT_MIXER_DEVICE_KEY, NULL); -+ if (mixer_device != NULL) -+ factory_and_device = g_strsplit (mixer_device, ":", 2); -+ -+ if (factory_and_device != NULL && factory_and_device[0] != NULL) { -+ GstElement *element; -+ -+ element = gst_element_factory_make (factory_and_device[0], NULL); -+ -+ if (element != NULL) { -+ if (factory_and_device[1] != NULL && -+ g_object_class_find_property (G_OBJECT_GET_CLASS (element), "device")) -+ g_object_set (G_OBJECT (element), "device", factory_and_device[1], NULL); -+ gst_element_set_state (element, GST_STATE_READY); -+ -+ if (GST_IS_MIXER (element)) -+ self->_priv->mixer = GST_MIXER (element); -+ else { -+ gst_element_set_state (element, GST_STATE_NULL); -+ gst_object_unref (element); -+ } -+ } -+ } -+ -+ g_free (mixer_device); -+ g_strfreev (factory_and_device); -+ -+ if (self->_priv->mixer != NULL) { -+ const GList *m; -+ GSList *tracks, *t; -+ GError *error = NULL; -+ -+ /* Try to use tracks saved in GConf -+ Note: errors need to be treated , for example if the user set a non type list for this key -+ or if the elements type_list are not "matched" */ -+ tracks = gconf_client_get_list (self->_priv->gconf_client, DEFAULT_MIXER_TRACKS_KEY, -+ GCONF_VALUE_STRING, &error); -+ -+ if (error) { -+ g_warning("ERROR: %s\n", error->message); -+ g_error_free(error); -+ } -+ -+ /* We use these tracks ONLY if they are supported on the system with the following mixer */ -+ for (m = gst_mixer_list_tracks (self->_priv->mixer); m != NULL; m = m->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (m->data); -+ -+ for (t = tracks; t != NULL; t = t->next) -+ if (!strcmp (t->data, track->label)) -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ -+ } -+ -+ g_slist_foreach (tracks, (GFunc)g_free, NULL); -+ g_slist_free (tracks); -+ -+ /* If no track stored in GConf is avaiable try to use Master track */ -+ if (self->_priv->mixer_tracks == NULL) { -+ for (m = gst_mixer_list_tracks (self->_priv->mixer); m != NULL; m = m->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (m->data); -+ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MASTER)) { -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ break; -+ } -+ } -+ } -+ -+ if (self->_priv->mixer_tracks != NULL) -+ return TRUE; -+ else { -+ gst_element_set_state (GST_ELEMENT (self->_priv->mixer), GST_STATE_NULL); -+ gst_object_unref (self->_priv->mixer); -+ } -+ } -+ -+ /* Go through all elements of a certain class and check whether -+ * they implement a mixer. If so, walk through the tracks and look -+ * for first one named "volume". -+ * -+ * We should probably do something intelligent if we don't find an -+ * appropriate mixer/track. But now we do something stupid... -+ * everything just becomes a no-op. -+ */ -+ mixer_list = gst_audio_default_registry_mixer_filter (_acme_set_mixer, -+ TRUE, -+ self); -+ -+ if (mixer_list == NULL) -+ return FALSE; -+ -+ /* do not unref the mixer as we keep the ref for self->priv->mixer */ -+ g_list_free (mixer_list); -+ -+ return TRUE; -+} -+ -+static void -+acme_volume_close (AcmeVolume *self) -+{ -+ self->_priv->timer_id = g_timeout_add_seconds (TIMEOUT, -+ (GSourceFunc) acme_volume_close_real, self); -+} -+ -+static void -+acme_volume_init (AcmeVolume *self) -+{ -+ self->_priv = ACME_VOLUME_GET_PRIVATE (self); -+ self->_priv->gconf_client = gconf_client_get_default (); -+} -+ -+static void -+acme_volume_class_init (AcmeVolumeClass *klass) -+{ -+ G_OBJECT_CLASS (klass)->finalize = acme_volume_finalize; -+ -+ gst_init (NULL, NULL); -+ -+ g_type_class_add_private (klass, sizeof (AcmeVolumePrivate)); -+} -+ -+/* acme_volume_new -+ * @return A singleton instance of type AcmeVolume -+ */ -+AcmeVolume * -+acme_volume_new (void) -+{ -+ if (acme_volume_object == NULL) { -+ acme_volume_object = g_object_new (ACME_TYPE_VOLUME, NULL); -+ return ACME_VOLUME(acme_volume_object); -+ } -+ g_object_ref(acme_volume_object); -+ return ACME_VOLUME(acme_volume_object); -+} -+ -diff -Nur gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h gnome-settings-daemon-2.29.91.1/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h ---- gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h 1970-01-01 02:00:00.000000000 +0200 -+++ gnome-settings-daemon-2.29.91.1/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h 2010-02-25 18:18:35.000000000 +0200 -@@ -0,0 +1,56 @@ -+/* acme-volume.h -+ -+ Copyright (C) 2002, 2003 Bastien Nocera -+ Copyright (C) 2004 Novell, Inc. -+ Copyright (C) 2009 PERIER Romain <mrpouet@tuxfamily.org> -+ -+ The Gnome Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The Gnome Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the Gnome Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. -+ -+ Author: Bastien Nocera <hadess@hadess.net> -+ Jon Trowbridge <trow@ximian.com> -+ */ -+ -+#include <glib-object.h> -+ -+#define ACME_TYPE_VOLUME (acme_volume_get_type ()) -+#define ACME_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ACME_TYPE_VOLUME, AcmeVolume)) -+#define ACME_VOLUME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ACME_TYPE_VOLUME, AcmeVolumeClass)) -+#define ACME_IS_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ACME_TYPE_VOLUME)) -+#define ACME_VOLUME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ACME_TYPE_VOLUME, AcmeVolumeClass)) -+ -+typedef struct AcmeVolume AcmeVolume; -+typedef struct AcmeVolumeClass AcmeVolumeClass; -+typedef struct AcmeVolumePrivate AcmeVolumePrivate; -+ -+struct AcmeVolume { -+ GObject parent; -+ AcmeVolumePrivate *_priv; -+}; -+ -+struct AcmeVolumeClass { -+ GObjectClass parent; -+}; -+ -+GType acme_volume_get_type (void); -+AcmeVolume *acme_volume_new (void); -+void acme_volume_set_mute (AcmeVolume *self, gboolean val); -+void acme_volume_mute_toggle (AcmeVolume *self); -+gboolean acme_volume_get_mute (AcmeVolume *self); -+void acme_volume_set_volume (AcmeVolume *self, gint val); -+gint acme_volume_get_volume (AcmeVolume *self); -+gint acme_volume_get_threshold (AcmeVolume *self); -+ -+ -diff -Nur gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/cut-n-paste/Makefile.am gnome-settings-daemon-2.29.91.1/plugins/media-keys/cut-n-paste/Makefile.am ---- gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/cut-n-paste/Makefile.am 2009-08-19 19:16:15.000000000 +0300 -+++ gnome-settings-daemon-2.29.91.1/plugins/media-keys/cut-n-paste/Makefile.am 2010-02-25 18:18:35.000000000 +0200 -@@ -4,16 +4,24 @@ - - INCLUDES = \ - $(WARN_CFLAGS) \ -- $(VOLUME_CONTROL_CFLAGS) \ -- $(PULSE_CFLAGS) \ - $(NULL) - - libgvc_la_LIBADD = \ -- $(VOLUME_CONTROL_LIBS) \ -- $(PULSE_LIBS) \ - $(NULL) - - libgvc_la_SOURCES = \ -+ $(NULL) -+ -+if HAVE_PULSE -+INCLUDES += \ -+ $(VOLUME_CONTROL_CFLAGS) \ -+ $(PULSE_CFLAGS) -+ -+libgvc_la_LIBADD += \ -+ $(VOLUME_CONTROL_LIBS) \ -+ $(PULSE_LIBS) -+ -+libgvc_la_SOURCES += \ - gvc-mixer-stream.h \ - gvc-mixer-stream.c \ - gvc-channel-map.h \ -@@ -31,8 +39,22 @@ - gvc-mixer-event-role.h \ - gvc-mixer-event-role.c \ - gvc-mixer-control.h \ -- gvc-mixer-control.c \ -- $(NULL) -+ gvc-mixer-control.c -+endif -+ -+if HAVE_GSTREAMER -+INCLUDES += \ -+ $(SETTINGS_PLUGIN_CFLAGS) \ -+ $(AM_CFLAGS) \ -+ $(GST_CFLAGS) -+ -+libgvc_la_LIBADD += \ -+ $(GST_LIBS) -+ -+libgvc_la_SOURCES += \ -+ gvc-gstreamer-acme-vol.c \ -+ gvc-gstreamer-acme-vol.h -+endif - - MAINTAINERCLEANFILES = \ - *~ \ -diff -Nur gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/gsd-media-keys-manager.c gnome-settings-daemon-2.29.91.1/plugins/media-keys/gsd-media-keys-manager.c ---- gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/gsd-media-keys-manager.c 2010-02-17 00:40:19.000000000 +0200 -+++ gnome-settings-daemon-2.29.91.1/plugins/media-keys/gsd-media-keys-manager.c 2010-02-25 18:21:00.000000000 +0200 -@@ -53,6 +53,8 @@ - #ifdef HAVE_PULSE - #include <canberra-gtk.h> - #include "gvc-mixer-control.h" -+#elif defined(HAVE_GSTREAMER) -+#include "gvc-gstreamer-acme-vol.h" - #endif /* HAVE_PULSE */ - - #define GSD_DBUS_PATH "/org/gnome/SettingsDaemon" -@@ -84,6 +86,8 @@ - /* Volume bits */ - GvcMixerControl *volume; - GvcMixerStream *stream; -+#elif defined(HAVE_GSTREAMER) -+ AcmeVolume *volume; - #endif /* HAVE_PULSE */ - GtkWidget *dialog; - GConfClient *conf_client; -@@ -647,7 +651,9 @@ - CA_PROP_APPLICATION_ID, "org.gnome.VolumeControl", - NULL); - } -+#endif /* HAVE_PULSE */ - -+#if defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) - static void - do_sound_action (GsdMediaKeysManager *manager, - int type) -@@ -656,7 +662,11 @@ - guint vol, norm_vol_step; - int vol_step; - -+#ifdef HAVE_PULSE - if (manager->priv->stream == NULL) -+#else -+ if (manager->priv->volume == NULL) -+#endif - return; - - vol_step = gconf_client_get_int (manager->priv->conf_client, -@@ -666,18 +676,34 @@ - if (vol_step <= 0 || vol_step > 100) - vol_step = VOLUME_STEP; - -+#ifdef HAVE_PULSE - norm_vol_step = PA_VOLUME_NORM * vol_step / 100; - - /* FIXME: this is racy */ - vol = gvc_mixer_stream_get_volume (manager->priv->stream); - muted = gvc_mixer_stream_get_is_muted (manager->priv->stream); - -+#else -+ if (vol_step > 0) { -+ gint threshold = acme_volume_get_threshold (manager->priv->volume); -+ if (vol_step < threshold) -+ vol_step = threshold; -+ g_debug ("Using volume step of %d", vol_step); -+ } -+ vol = acme_volume_get_volume (manager->priv->volume); -+ muted = acme_volume_get_mute (manager->priv->volume); -+#endif - switch (type) { - case MUTE_KEY: -+#ifdef HAVE_PULSE - muted = !muted; - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); -+#else -+ acme_volume_mute_toggle (manager->priv->volume); -+#endif - break; - case VOLUME_DOWN_KEY: -+#ifdef HAVE_PULSE - if (!muted && (vol <= norm_vol_step)) { - muted = !muted; - vol = 0; -@@ -689,11 +715,17 @@ - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) - gvc_mixer_stream_push_volume (manager->priv->stream); - } -+#else -+ if (!muted && (vol <= vol_step)) -+ acme_volume_mute_toggle (manager->priv->volume); -+ acme_volume_set_volume (manager->priv->volume, vol - vol_step); -+#endif - break; - case VOLUME_UP_KEY: - if (muted) { - muted = !muted; - if (vol == 0) { -+#ifdef HAVE_PULSE - vol = vol + norm_vol_step; - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) -@@ -701,7 +733,15 @@ - } else { - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - } -+#else -+ /* We need to unmute otherwise vol is blocked (and muted) */ -+ acme_volume_set_mute (manager->priv->volume, FALSE); -+ } -+ acme_volume_set_volume (manager->priv->volume, vol + vol_step); -+ -+#endif - } else { -+#ifdef HAVE_PULSE - if (vol < MAX_VOLUME) { - if (vol + norm_vol_step >= MAX_VOLUME) { - vol = MAX_VOLUME; -@@ -711,13 +751,35 @@ - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) - gvc_mixer_stream_push_volume (manager->priv->stream); - } -+#else -+ acme_volume_set_volume (manager->priv->volume, vol + vol_step); -+#endif - } - break; - } - -+#ifdef HAVE_PULSE - update_dialog (manager, vol, muted); -+#else -+ muted = acme_volume_get_mute (manager->priv->volume); -+ vol = acme_volume_get_volume (manager->priv->volume); -+ -+ /* FIXME: AcmeVolume should probably emit signals -+ instead of doing it like this */ -+ dialog_init (manager); -+ gsd_media_keys_window_set_volume_muted (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ muted); -+ gsd_media_keys_window_set_volume_level (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ vol); -+ gsd_media_keys_window_set_action (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ GSD_MEDIA_KEYS_WINDOW_ACTION_VOLUME); -+ dialog_show (manager); -+#endif /* HAVE_PULSE */ - } - -+#endif /* defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) */ -+ -+#ifdef HAVE_PULSE - static void - update_default_sink (GsdMediaKeysManager *manager) - { -@@ -879,9 +941,9 @@ - case MUTE_KEY: - case VOLUME_DOWN_KEY: - case VOLUME_UP_KEY: --#ifdef HAVE_PULSE -+#if defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) - do_sound_action (manager, type); --#endif /* HAVE_PULSE */ -+#endif /* HAVE_PULSE || HAVE_GSTREAMER */ - break; - case POWER_KEY: - do_exit_action (manager); -@@ -1081,6 +1143,10 @@ - gvc_mixer_control_open (manager->priv->volume); - - gnome_settings_profile_end ("gvc_mixer_control_new"); -+#elif defined(HAVE_GSTREAMER) -+ gnome_settings_profile_start ("acme_volume_new"); -+ manager->priv->volume = acme_volume_new (); -+ gnome_settings_profile_end ("acme_volume_new"); - #endif /* HAVE_PULSE */ - g_idle_add ((GSourceFunc) start_media_keys_idle_cb, manager); - -@@ -1153,6 +1219,7 @@ - g_object_unref (priv->stream); - priv->stream = NULL; - } -+#elif defined(HAVE_GSTREAMER) - - if (priv->volume) { - g_object_unref (priv->volume); -diff -Nur gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/Makefile.am gnome-settings-daemon-2.29.91.1/plugins/media-keys/Makefile.am ---- gnome-settings-daemon-2.29.91.1.orig/plugins/media-keys/Makefile.am 2010-02-17 00:40:19.000000000 +0200 -+++ gnome-settings-daemon-2.29.91.1/plugins/media-keys/Makefile.am 2010-02-25 18:18:35.000000000 +0200 -@@ -3,13 +3,8 @@ - - NULL = - --SUBDIRS = --plugin_LTLIBRARIES = -- --if HAVE_PULSE --SUBDIRS += cut-n-paste --plugin_LTLIBRARIES += libmedia-keys.la --endif -+SUBDIRS = cut-n-paste -+plugin_LTLIBRARIES = libmedia-keys.la - - BUILT_SOURCES = \ - gsd-media-keys-manager-glue.h \ -@@ -100,16 +95,14 @@ - - libmedia_keys_la_LIBADD = \ - $(top_builddir)/plugins/common/libcommon.la \ -- $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la \ -+ $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la \ - $(SETTINGS_PLUGIN_LIBS) \ - $(XF86MISC_LIBS) - - plugin_in_files = \ - media-keys.gnome-settings-plugin.in - --if HAVE_PULSE - plugin_DATA = $(plugin_in_files:.gnome-settings-plugin.in=.gnome-settings-plugin) --endif - - noinst_PROGRAMS = \ - test-media-keys \ -@@ -173,9 +166,7 @@ - $(XF86MISC_LIBS) \ - $(GST_LIBS) - --if HAVE_PULSE - test_media_keys_LDADD += $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la --endif - - gtkbuilderdir = $(pkgdatadir) - gtkbuilder_DATA = \ diff --git a/extra/gnome-settings-daemon/gstreamer-volume-2.30.patch b/extra/gnome-settings-daemon/gstreamer-volume-2.30.patch deleted file mode 100644 index 1169df1ed..000000000 --- a/extra/gnome-settings-daemon/gstreamer-volume-2.30.patch +++ /dev/null @@ -1,861 +0,0 @@ -diff -Nur gnome-settings-daemon-2.30.0.orig/configure.ac gnome-settings-daemon-2.30.0/configure.ac ---- gnome-settings-daemon-2.30.0.orig/configure.ac 2010-03-29 17:03:47.000000000 +0300 -+++ gnome-settings-daemon-2.30.0/configure.ac 2010-03-29 21:35:17.974333715 +0300 -@@ -251,6 +251,48 @@ - AC_SUBST(PULSE_CFLAGS) - AC_SUBST(PULSE_LIBS) - -+dnl ============================================== -+dnl GStreamer section -+dnl ============================================== -+GST_MAJORMINOR=auto -+ -+AC_ARG_ENABLE(gstreamer, -+AC_HELP_STRING([--enable-gstreamer],[use gstreamer if available (and optionally specify a version)]), -+[case "${enableval}" in -+ yes) ENABLE_GSTREAMER=yes ;; -+ 0.10) ENABLE_GSTREAMER=yes && GST_MAJORMINOR=0.10 ;; -+ no) ENABLE_GSTREAMER=no ;; -+ *) AC_MSG_ERROR([ -+ *** Bad value ${enableval} for --enable-gstreamer -+ *** Please use one of the following: -+ *** --enable-gstreamer=0.10 -+ ]) ;; -+esac], -+[ENABLE_GSTREAMER=yes]) dnl Default value -+ -+have_gstreamer=no -+if test "x$ENABLE_GSTREAMER" = "xyes"; then -+ GST_REQS=0.10.1.2 -+ PKGS="gstreamer-0.10 >= $GST_REQS gstreamer-plugins-base-0.10 >= $GST_REQS" -+ -+ PKG_CHECK_MODULES(GST, $PKGS, have_gstreamer=yes, -+ AC_MSG_RESULT([no])) -+ -+ if test "x$have_pulse" = "xtrue"; then -+ AC_MSG_ERROR([*** GStreamer & Pulseaudio both are selected ***]) -+ fi -+ -+ if test "x$have_gstreamer" = "xyes"; then -+ GST_LIBS="$GST_LIBS -lgstinterfaces-0.10 -lgstaudio-0.10" -+ AC_DEFINE(HAVE_GSTREAMER,1,[enable gstreamer]) -+ fi -+else -+ AC_MSG_NOTICE([*** GStreamer support disabled ***]) -+fi -+AM_CONDITIONAL(HAVE_GSTREAMER, test "x$have_gstreamer" = "xyes") -+AC_SUBST(GST_LIBS) -+AC_SUBST(GST_CFLAGS) -+ - # --------------------------------------------------------------------------- - # Enable Profiling - # --------------------------------------------------------------------------- -@@ -389,6 +431,7 @@ - dbus-1 system.d dir: ${DBUS_SYS_DIR} - - Libnotify support: ${have_libnotify} -+ GStreamer support: ${have_gstreamer} - PulseAudio support: ${have_pulse} - Profiling support: ${enable_profiling} - " -diff -Nur gnome-settings-daemon-2.30.0.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c gnome-settings-daemon-2.30.0/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c ---- gnome-settings-daemon-2.30.0.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c 1970-01-01 02:00:00.000000000 +0200 -+++ gnome-settings-daemon-2.30.0/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c 2010-03-29 21:35:17.977471980 +0300 -@@ -0,0 +1,402 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -+ -+/* acme-volume.c -+ -+ Copyright (C) 2002, 2003 Bastien Nocera -+ Copyright (C) 2004 Novell, Inc. -+ Copyright (C) 2009 PERIER Romain <mrpouet@tuxfamily.org> -+ -+ The Gnome Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The Gnome Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the Gnome Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. -+ -+ Author: Bastien Nocera <hadess@hadess.net> -+ Jon Trowbridge <trow@ximian.com> -+*/ -+ -+#include "config.h" -+#include "gvc-gstreamer-acme-vol.h" -+ -+#include <gst/gst.h> -+#include <gst/audio/mixerutils.h> -+#include <gst/interfaces/mixer.h> -+#include <gst/interfaces/propertyprobe.h> -+ -+#include <gconf/gconf-client.h> -+ -+#include <string.h> -+ -+#define TIMEOUT 4 -+ -+#define DEFAULT_MIXER_DEVICE_KEY "/desktop/gnome/sound/default_mixer_device" -+#define DEFAULT_MIXER_TRACKS_KEY "/desktop/gnome/sound/default_mixer_tracks" -+ -+#define ACME_VOLUME_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), ACME_TYPE_VOLUME, AcmeVolumePrivate)) -+ -+struct AcmeVolumePrivate { -+ GstMixer *mixer; -+ GList *mixer_tracks; -+ guint timer_id; -+ gdouble volume; -+ gboolean mute; -+ GConfClient *gconf_client; -+}; -+ -+G_DEFINE_TYPE (AcmeVolume, acme_volume, G_TYPE_OBJECT) -+ -+static gboolean acme_volume_open (AcmeVolume *acme); -+static void acme_volume_close (AcmeVolume *acme); -+static gboolean acme_volume_close_real (AcmeVolume *self); -+ -+static gpointer acme_volume_object = NULL; -+ -+static void -+acme_volume_finalize (GObject *object) -+{ -+ AcmeVolume *self; -+ -+ g_return_if_fail (object != NULL); -+ g_return_if_fail (ACME_IS_VOLUME (object)); -+ -+ self = ACME_VOLUME (object); -+ -+ if (self->_priv->timer_id != 0) -+ g_source_remove (self->_priv->timer_id); -+ acme_volume_close_real (self); -+ -+ if (self->_priv->gconf_client != NULL) { -+ g_object_unref (self->_priv->gconf_client); -+ self->_priv->gconf_client = NULL; -+ } -+ -+ G_OBJECT_CLASS (acme_volume_parent_class)->finalize (object); -+} -+ -+void -+acme_volume_set_mute (AcmeVolume *self, gboolean val) -+{ -+ GList *t; -+ -+ g_return_if_fail(ACME_IS_VOLUME(self)); -+ g_return_if_fail(acme_volume_open(self)); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gst_mixer_set_mute (self->_priv->mixer, track, val); -+ } -+ self->_priv->mute = val; -+ acme_volume_close (self); -+} -+ -+static void -+update_state (AcmeVolume * self) -+{ -+ gint *volumes, n; -+ gdouble vol = 0; -+ GstMixerTrack *track = GST_MIXER_TRACK (self->_priv->mixer_tracks->data); -+ -+ /* update mixer by getting volume */ -+ volumes = g_new0 (gint, track->num_channels); -+ gst_mixer_get_volume (self->_priv->mixer, track, volumes); -+ for (n = 0; n < track->num_channels; n++) -+ vol += volumes[n]; -+ g_free (volumes); -+ vol /= track->num_channels; -+ vol = 100 * vol / (track->max_volume - track->min_volume); -+ -+ /* update mute flag, and volume if not muted */ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MUTE)) -+ self->_priv->mute = TRUE; -+ self->_priv->volume = vol; -+} -+ -+gboolean -+acme_volume_get_mute (AcmeVolume *self) -+{ -+ g_return_val_if_fail(acme_volume_open(self), FALSE); -+ -+ update_state (self); -+ acme_volume_close (self); -+ -+ return self->_priv->mute; -+} -+ -+gint -+acme_volume_get_volume (AcmeVolume *self) -+{ -+ -+ g_return_val_if_fail(acme_volume_open(self), 0); -+ -+ update_state (self); -+ -+ acme_volume_close (self); -+ -+ return (gint) (self->_priv->volume + 0.5); -+} -+ -+void -+acme_volume_set_volume (AcmeVolume *self, gint val) -+{ -+ GList *t; -+ -+ g_return_if_fail(acme_volume_open(self)); -+ -+ val = CLAMP (val, 0, 100); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gint *volumes, n; -+ gdouble scale = (track->max_volume - track->min_volume) / 100.0; -+ gint vol = (gint) (val * scale + track->min_volume + 0.5); -+ -+ volumes = g_new (gint, track->num_channels); -+ for (n = 0; n < track->num_channels; n++) -+ volumes[n] = vol; -+ gst_mixer_set_volume (self->_priv->mixer, track, volumes); -+ g_free (volumes); -+ } -+ -+ /* update state */ -+ self->_priv->volume = val; -+ -+ acme_volume_close (self); -+} -+ -+void -+acme_volume_mute_toggle (AcmeVolume *self) -+{ -+ gboolean muted; -+ -+ g_return_if_fail (self != NULL); -+ g_return_if_fail (ACME_IS_VOLUME(self)); -+ -+ muted = acme_volume_get_mute(self); -+ acme_volume_set_mute(self, !muted); -+} -+ -+gint -+acme_volume_get_threshold (AcmeVolume *self) -+{ -+ GList *t; -+ gint steps = 101; -+ -+ g_return_val_if_fail(acme_volume_open(self), 1); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gint track_steps = track->max_volume - track->min_volume; -+ if (track_steps > 0 && track_steps < steps) -+ steps = track_steps; -+ } -+ -+ acme_volume_close (self); -+ -+ return 100 / steps + 1; -+} -+ -+static gboolean -+acme_volume_close_real (AcmeVolume *self) -+{ -+ if (self->_priv->mixer != NULL) -+ { -+ gst_element_set_state (GST_ELEMENT (self->_priv->mixer), GST_STATE_NULL); -+ gst_object_unref (GST_OBJECT (self->_priv->mixer)); -+ g_list_foreach (self->_priv->mixer_tracks, (GFunc) g_object_unref, NULL); -+ g_list_free (self->_priv->mixer_tracks); -+ self->_priv->mixer = NULL; -+ self->_priv->mixer_tracks = NULL; -+ } -+ -+ self->_priv->timer_id = 0; -+ return FALSE; -+} -+ -+/* -+ * _acme_set_mixer -+ * @mixer A pointer to mixer element -+ * @data A pointer to user data (AcmeVolume instance to be modified) -+ * @return A gboolean indicating success if Master track was found, failed otherwises. -+ */ -+static gboolean -+_acme_set_mixer(GstMixer *mixer, gpointer user_data) -+{ -+ const GList *tracks; -+ -+ for (tracks = gst_mixer_list_tracks (mixer); tracks != NULL; tracks = tracks->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (tracks->data); -+ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MASTER)) { -+ AcmeVolume *self; -+ -+ self = ACME_VOLUME (user_data); -+ -+ self->_priv->mixer = mixer; -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ return TRUE; -+ } -+ -+ continue; -+ } -+ -+ return FALSE; -+} -+ -+/* This is a modified version of code from gnome-media's gst-mixer */ -+static gboolean -+acme_volume_open (AcmeVolume *self) -+{ -+ gchar *mixer_device, **factory_and_device = NULL; -+ GList *mixer_list; -+ -+ if (self->_priv->timer_id != 0) { -+ g_source_remove (self->_priv->timer_id); -+ self->_priv->timer_id = 0; -+ return TRUE; -+ } -+ -+ mixer_device = gconf_client_get_string (self->_priv->gconf_client, DEFAULT_MIXER_DEVICE_KEY, NULL); -+ if (mixer_device != NULL) -+ factory_and_device = g_strsplit (mixer_device, ":", 2); -+ -+ if (factory_and_device != NULL && factory_and_device[0] != NULL) { -+ GstElement *element; -+ -+ element = gst_element_factory_make (factory_and_device[0], NULL); -+ -+ if (element != NULL) { -+ if (factory_and_device[1] != NULL && -+ g_object_class_find_property (G_OBJECT_GET_CLASS (element), "device")) -+ g_object_set (G_OBJECT (element), "device", factory_and_device[1], NULL); -+ gst_element_set_state (element, GST_STATE_READY); -+ -+ if (GST_IS_MIXER (element)) -+ self->_priv->mixer = GST_MIXER (element); -+ else { -+ gst_element_set_state (element, GST_STATE_NULL); -+ gst_object_unref (element); -+ } -+ } -+ } -+ -+ g_free (mixer_device); -+ g_strfreev (factory_and_device); -+ -+ if (self->_priv->mixer != NULL) { -+ const GList *m; -+ GSList *tracks, *t; -+ GError *error = NULL; -+ -+ /* Try to use tracks saved in GConf -+ Note: errors need to be treated , for example if the user set a non type list for this key -+ or if the elements type_list are not "matched" */ -+ tracks = gconf_client_get_list (self->_priv->gconf_client, DEFAULT_MIXER_TRACKS_KEY, -+ GCONF_VALUE_STRING, &error); -+ -+ if (error) { -+ g_warning("ERROR: %s\n", error->message); -+ g_error_free(error); -+ } -+ -+ /* We use these tracks ONLY if they are supported on the system with the following mixer */ -+ for (m = gst_mixer_list_tracks (self->_priv->mixer); m != NULL; m = m->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (m->data); -+ -+ for (t = tracks; t != NULL; t = t->next) -+ if (!strcmp (t->data, track->label)) -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ -+ } -+ -+ g_slist_foreach (tracks, (GFunc)g_free, NULL); -+ g_slist_free (tracks); -+ -+ /* If no track stored in GConf is avaiable try to use Master track */ -+ if (self->_priv->mixer_tracks == NULL) { -+ for (m = gst_mixer_list_tracks (self->_priv->mixer); m != NULL; m = m->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (m->data); -+ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MASTER)) { -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ break; -+ } -+ } -+ } -+ -+ if (self->_priv->mixer_tracks != NULL) -+ return TRUE; -+ else { -+ gst_element_set_state (GST_ELEMENT (self->_priv->mixer), GST_STATE_NULL); -+ gst_object_unref (self->_priv->mixer); -+ } -+ } -+ -+ /* Go through all elements of a certain class and check whether -+ * they implement a mixer. If so, walk through the tracks and look -+ * for first one named "volume". -+ * -+ * We should probably do something intelligent if we don't find an -+ * appropriate mixer/track. But now we do something stupid... -+ * everything just becomes a no-op. -+ */ -+ mixer_list = gst_audio_default_registry_mixer_filter (_acme_set_mixer, -+ TRUE, -+ self); -+ -+ if (mixer_list == NULL) -+ return FALSE; -+ -+ /* do not unref the mixer as we keep the ref for self->priv->mixer */ -+ g_list_free (mixer_list); -+ -+ return TRUE; -+} -+ -+static void -+acme_volume_close (AcmeVolume *self) -+{ -+ self->_priv->timer_id = g_timeout_add_seconds (TIMEOUT, -+ (GSourceFunc) acme_volume_close_real, self); -+} -+ -+static void -+acme_volume_init (AcmeVolume *self) -+{ -+ self->_priv = ACME_VOLUME_GET_PRIVATE (self); -+ self->_priv->gconf_client = gconf_client_get_default (); -+} -+ -+static void -+acme_volume_class_init (AcmeVolumeClass *klass) -+{ -+ G_OBJECT_CLASS (klass)->finalize = acme_volume_finalize; -+ -+ gst_init (NULL, NULL); -+ -+ g_type_class_add_private (klass, sizeof (AcmeVolumePrivate)); -+} -+ -+/* acme_volume_new -+ * @return A singleton instance of type AcmeVolume -+ */ -+AcmeVolume * -+acme_volume_new (void) -+{ -+ if (acme_volume_object == NULL) { -+ acme_volume_object = g_object_new (ACME_TYPE_VOLUME, NULL); -+ return ACME_VOLUME(acme_volume_object); -+ } -+ g_object_ref(acme_volume_object); -+ return ACME_VOLUME(acme_volume_object); -+} -+ -diff -Nur gnome-settings-daemon-2.30.0.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h gnome-settings-daemon-2.30.0/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h ---- gnome-settings-daemon-2.30.0.orig/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h 1970-01-01 02:00:00.000000000 +0200 -+++ gnome-settings-daemon-2.30.0/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h 2010-03-29 21:35:17.977471980 +0300 -@@ -0,0 +1,56 @@ -+/* acme-volume.h -+ -+ Copyright (C) 2002, 2003 Bastien Nocera -+ Copyright (C) 2004 Novell, Inc. -+ Copyright (C) 2009 PERIER Romain <mrpouet@tuxfamily.org> -+ -+ The Gnome Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The Gnome Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the Gnome Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. -+ -+ Author: Bastien Nocera <hadess@hadess.net> -+ Jon Trowbridge <trow@ximian.com> -+ */ -+ -+#include <glib-object.h> -+ -+#define ACME_TYPE_VOLUME (acme_volume_get_type ()) -+#define ACME_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ACME_TYPE_VOLUME, AcmeVolume)) -+#define ACME_VOLUME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ACME_TYPE_VOLUME, AcmeVolumeClass)) -+#define ACME_IS_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ACME_TYPE_VOLUME)) -+#define ACME_VOLUME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ACME_TYPE_VOLUME, AcmeVolumeClass)) -+ -+typedef struct AcmeVolume AcmeVolume; -+typedef struct AcmeVolumeClass AcmeVolumeClass; -+typedef struct AcmeVolumePrivate AcmeVolumePrivate; -+ -+struct AcmeVolume { -+ GObject parent; -+ AcmeVolumePrivate *_priv; -+}; -+ -+struct AcmeVolumeClass { -+ GObjectClass parent; -+}; -+ -+GType acme_volume_get_type (void); -+AcmeVolume *acme_volume_new (void); -+void acme_volume_set_mute (AcmeVolume *self, gboolean val); -+void acme_volume_mute_toggle (AcmeVolume *self); -+gboolean acme_volume_get_mute (AcmeVolume *self); -+void acme_volume_set_volume (AcmeVolume *self, gint val); -+gint acme_volume_get_volume (AcmeVolume *self); -+gint acme_volume_get_threshold (AcmeVolume *self); -+ -+ -diff -Nur gnome-settings-daemon-2.30.0.orig/plugins/media-keys/cut-n-paste/Makefile.am gnome-settings-daemon-2.30.0/plugins/media-keys/cut-n-paste/Makefile.am ---- gnome-settings-daemon-2.30.0.orig/plugins/media-keys/cut-n-paste/Makefile.am 2009-08-12 12:15:00.000000000 +0300 -+++ gnome-settings-daemon-2.30.0/plugins/media-keys/cut-n-paste/Makefile.am 2010-03-29 21:35:17.977471980 +0300 -@@ -4,16 +4,24 @@ - - INCLUDES = \ - $(WARN_CFLAGS) \ -- $(VOLUME_CONTROL_CFLAGS) \ -- $(PULSE_CFLAGS) \ - $(NULL) - - libgvc_la_LIBADD = \ -- $(VOLUME_CONTROL_LIBS) \ -- $(PULSE_LIBS) \ - $(NULL) - - libgvc_la_SOURCES = \ -+ $(NULL) -+ -+if HAVE_PULSE -+INCLUDES += \ -+ $(VOLUME_CONTROL_CFLAGS) \ -+ $(PULSE_CFLAGS) -+ -+libgvc_la_LIBADD += \ -+ $(VOLUME_CONTROL_LIBS) \ -+ $(PULSE_LIBS) -+ -+libgvc_la_SOURCES += \ - gvc-mixer-stream.h \ - gvc-mixer-stream.c \ - gvc-channel-map.h \ -@@ -31,8 +39,22 @@ - gvc-mixer-event-role.h \ - gvc-mixer-event-role.c \ - gvc-mixer-control.h \ -- gvc-mixer-control.c \ -- $(NULL) -+ gvc-mixer-control.c -+endif -+ -+if HAVE_GSTREAMER -+INCLUDES += \ -+ $(SETTINGS_PLUGIN_CFLAGS) \ -+ $(AM_CFLAGS) \ -+ $(GST_CFLAGS) -+ -+libgvc_la_LIBADD += \ -+ $(GST_LIBS) -+ -+libgvc_la_SOURCES += \ -+ gvc-gstreamer-acme-vol.c \ -+ gvc-gstreamer-acme-vol.h -+endif - - MAINTAINERCLEANFILES = \ - *~ \ -diff -Nur gnome-settings-daemon-2.30.0.orig/plugins/media-keys/gsd-media-keys-manager.c gnome-settings-daemon-2.30.0/plugins/media-keys/gsd-media-keys-manager.c ---- gnome-settings-daemon-2.30.0.orig/plugins/media-keys/gsd-media-keys-manager.c 2010-03-29 11:15:04.000000000 +0300 -+++ gnome-settings-daemon-2.30.0/plugins/media-keys/gsd-media-keys-manager.c 2010-03-29 21:56:13.293985485 +0300 -@@ -53,6 +53,8 @@ - #ifdef HAVE_PULSE - #include <canberra-gtk.h> - #include "gvc-mixer-control.h" -+#elif defined(HAVE_GSTREAMER) -+#include "gvc-gstreamer-acme-vol.h" - #endif /* HAVE_PULSE */ - - #define GSD_DBUS_PATH "/org/gnome/SettingsDaemon" -@@ -78,11 +80,12 @@ - /* Volume bits */ - GvcMixerControl *volume; - GvcMixerStream *stream; -+#elif defined(HAVE_GSTREAMER) -+ AcmeVolume *volume; - #endif /* HAVE_PULSE */ - GtkWidget *dialog; - GConfClient *conf_client; -- GVolumeMonitor *volume_monitor; -- -+ GVolumeMonitor *volume_monitor; - /* Multihead stuff */ - GdkScreen *current_screen; - GSList *screens; -@@ -601,15 +604,15 @@ - if (score < SCORE_CAN_EJECT) { - fav_drive = drive; - score = SCORE_CAN_EJECT; -- } -+ } - if (g_drive_has_media (drive) == FALSE) - continue; - if (score < SCORE_HAS_MEDIA) { - fav_drive = drive; - score = SCORE_HAS_MEDIA; - break; -- } -- } -+ } -+ } - - /* Show the dialogue */ - dialog_init (manager); -@@ -632,7 +635,7 @@ - NULL, NULL, - (GAsyncReadyCallback) do_eject_action_cb, - manager); -- g_object_unref (fav_drive); -+ g_object_unref (fav_drive); - } - - static void -@@ -675,7 +678,9 @@ - CA_PROP_APPLICATION_ID, "org.gnome.VolumeControl", - NULL); - } -+#endif /* HAVE_PULSE */ - -+#if defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) - static void - do_sound_action (GsdMediaKeysManager *manager, - int type) -@@ -685,7 +690,11 @@ - int vol_step; - gboolean sound_changed; - -+#ifdef HAVE_PULSE - if (manager->priv->stream == NULL) -+#else -+ if (manager->priv->volume == NULL) -+#endif - return; - - vol_step = gconf_client_get_int (manager->priv->conf_client, -@@ -695,6 +704,7 @@ - if (vol_step <= 0 || vol_step > 100) - vol_step = VOLUME_STEP; - -+#ifdef HAVE_PULSE - norm_vol_step = PA_VOLUME_NORM * vol_step / 100; - - /* FIXME: this is racy */ -@@ -702,13 +712,28 @@ - muted = gvc_mixer_stream_get_is_muted (manager->priv->stream); - sound_changed = FALSE; - -+#else -+ if (vol_step > 0) { -+ gint threshold = acme_volume_get_threshold (manager->priv->volume); -+ if (vol_step < threshold) -+ vol_step = threshold; -+ g_debug ("Using volume step of %d", vol_step); -+ } -+ vol = acme_volume_get_volume (manager->priv->volume); -+ muted = acme_volume_get_mute (manager->priv->volume); -+#endif - switch (type) { - case MUTE_KEY: -+#ifdef HAVE_PULSE - muted = !muted; - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - sound_changed = TRUE; -+#else -+ acme_volume_mute_toggle (manager->priv->volume); -+#endif - break; - case VOLUME_DOWN_KEY: -+#ifdef HAVE_PULSE - if (!muted && (vol <= norm_vol_step)) { - muted = !muted; - vol = 0; -@@ -722,24 +747,37 @@ - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) { - gvc_mixer_stream_push_volume (manager->priv->stream); - sound_changed = TRUE; -- } - } -+#else -+ if (!muted && (vol <= vol_step)) -+ acme_volume_mute_toggle (manager->priv->volume); -+ acme_volume_set_volume (manager->priv->volume, vol - vol_step); -+#endif - break; - case VOLUME_UP_KEY: - if (muted) { - muted = !muted; - if (vol == 0) { -+#ifdef HAVE_PULSE - vol = vol + norm_vol_step; - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) { - gvc_mixer_stream_push_volume (manager->priv->stream); - sound_changed = TRUE; -- } -+ } - } else { - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - sound_changed = TRUE; - } -+#else -+ /* We need to unmute otherwise vol is blocked (and muted) */ -+ acme_volume_set_mute (manager->priv->volume, FALSE); -+ } -+ acme_volume_set_volume (manager->priv->volume, vol + vol_step); -+ -+#endif - } else { -+#ifdef HAVE_PULSE - if (vol < MAX_VOLUME) { - if (vol + norm_vol_step >= MAX_VOLUME) { - vol = MAX_VOLUME; -@@ -751,13 +789,35 @@ - sound_changed = TRUE; - } - } -+#else -+ acme_volume_set_volume (manager->priv->volume, vol + vol_step); -+#endif - } - break; - } - -+#ifdef HAVE_PULSE - update_dialog (manager, vol, muted, sound_changed); -+#else -+ muted = acme_volume_get_mute (manager->priv->volume); -+ vol = acme_volume_get_volume (manager->priv->volume); -+ -+ /* FIXME: AcmeVolume should probably emit signals -+ instead of doing it like this */ -+ dialog_init (manager); -+ gsd_media_keys_window_set_volume_muted (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ muted); -+ gsd_media_keys_window_set_volume_level (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ vol); -+ gsd_media_keys_window_set_action (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ GSD_MEDIA_KEYS_WINDOW_ACTION_VOLUME); -+ dialog_show (manager); -+#endif /* HAVE_PULSE */ - } - -+#endif /* defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) */ -+ -+#ifdef HAVE_PULSE - static void - update_default_sink (GsdMediaKeysManager *manager) - { -@@ -919,9 +979,9 @@ - case MUTE_KEY: - case VOLUME_DOWN_KEY: - case VOLUME_UP_KEY: --#ifdef HAVE_PULSE -+#if defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) - do_sound_action (manager, type); --#endif /* HAVE_PULSE */ -+#endif /* HAVE_PULSE || HAVE_GSTREAMER */ - break; - case POWER_KEY: - do_exit_action (manager); -@@ -1064,7 +1124,7 @@ - - g_debug ("Starting media_keys manager"); - gnome_settings_profile_start (NULL); -- manager->priv->volume_monitor = g_volume_monitor_get (); -+ manager->priv->volume_monitor = g_volume_monitor_get(); - manager->priv->conf_client = gconf_client_get_default (); - - gconf_client_add_dir (manager->priv->conf_client, -@@ -1122,6 +1182,10 @@ - gvc_mixer_control_open (manager->priv->volume); - - gnome_settings_profile_end ("gvc_mixer_control_new"); -+#elif defined(HAVE_GSTREAMER) -+ gnome_settings_profile_start ("acme_volume_new"); -+ manager->priv->volume = acme_volume_new (); -+ gnome_settings_profile_end ("acme_volume_new"); - #endif /* HAVE_PULSE */ - g_idle_add ((GSourceFunc) start_media_keys_idle_cb, manager); - -@@ -1199,6 +1263,7 @@ - g_object_unref (priv->stream); - priv->stream = NULL; - } -+#elif defined(HAVE_GSTREAMER) - - if (priv->volume) { - g_object_unref (priv->volume); -diff -Nur gnome-settings-daemon-2.30.0.orig/plugins/media-keys/Makefile.am gnome-settings-daemon-2.30.0/plugins/media-keys/Makefile.am ---- gnome-settings-daemon-2.30.0.orig/plugins/media-keys/Makefile.am 2010-03-10 13:59:38.000000000 +0200 -+++ gnome-settings-daemon-2.30.0/plugins/media-keys/Makefile.am 2010-03-29 22:18:20.077410522 +0300 -@@ -3,13 +3,8 @@ - - NULL = - --SUBDIRS = --plugin_LTLIBRARIES = -- --if HAVE_PULSE --SUBDIRS += cut-n-paste --plugin_LTLIBRARIES += libmedia-keys.la --endif -+SUBDIRS = cut-n-paste -+plugin_LTLIBRARIES = libmedia-keys.la - - BUILT_SOURCES = \ - gsd-media-keys-manager-glue.h \ -@@ -100,7 +95,7 @@ - - libmedia_keys_la_LIBADD = \ - $(top_builddir)/plugins/common/libcommon.la \ -- $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la \ -+ $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la \ - $(SETTINGS_PLUGIN_LIBS) \ - $(XF86MISC_LIBS) \ - -lm -@@ -108,9 +103,7 @@ - plugin_in_files = \ - media-keys.gnome-settings-plugin.in - --if HAVE_PULSE - plugin_DATA = $(plugin_in_files:.gnome-settings-plugin.in=.gnome-settings-plugin) --endif - - noinst_PROGRAMS = \ - test-media-keys \ -@@ -176,9 +169,7 @@ - $(GST_LIBS) \ - -lm - --if HAVE_PULSE - test_media_keys_LDADD += $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la --endif - - gtkbuilderdir = $(pkgdatadir) - gtkbuilder_DATA = \ diff --git a/extra/gnome-settings-daemon/gstreamer-volume.patch b/extra/gnome-settings-daemon/gstreamer-volume.patch deleted file mode 100644 index 0a32dcd7d..000000000 --- a/extra/gnome-settings-daemon/gstreamer-volume.patch +++ /dev/null @@ -1,808 +0,0 @@ -diff -ruN gnome-settings-daemon-2.27.91/configure.ac gnome-settings-daemon-2.27.91.gst/configure.ac ---- gnome-settings-daemon-2.27.91/configure.ac 2009-08-24 12:20:55.000000000 +0200 -+++ gnome-settings-daemon-2.27.91.gst/configure.ac 2009-08-24 15:25:47.000000000 +0200 -@@ -257,6 +257,48 @@ - AC_SUBST(PULSE_CFLAGS) - AC_SUBST(PULSE_LIBS) - -+dnl ============================================== -+dnl GStreamer section -+dnl ============================================== -+GST_MAJORMINOR=auto -+ -+AC_ARG_ENABLE(gstreamer, -+AC_HELP_STRING([--enable-gstreamer],[use gstreamer if available (and optionally specify a version)]), -+[case "${enableval}" in -+ yes) ENABLE_GSTREAMER=yes ;; -+ 0.10) ENABLE_GSTREAMER=yes && GST_MAJORMINOR=0.10 ;; -+ no) ENABLE_GSTREAMER=no ;; -+ *) AC_MSG_ERROR([ -+ *** Bad value ${enableval} for --enable-gstreamer -+ *** Please use one of the following: -+ *** --enable-gstreamer=0.10 -+ ]) ;; -+esac], -+[ENABLE_GSTREAMER=yes]) dnl Default value -+ -+have_gstreamer=no -+if test "x$ENABLE_GSTREAMER" = "xyes"; then -+ GST_REQS=0.10.1.2 -+ PKGS="gstreamer-0.10 >= $GST_REQS gstreamer-plugins-base-0.10 >= $GST_REQS" -+ -+ PKG_CHECK_MODULES(GST, $PKGS, have_gstreamer=yes, -+ AC_MSG_RESULT([no])) -+ -+ if test "x$have_pulse" = "xtrue"; then -+ AC_MSG_ERROR([*** GStreamer & Pulseaudio both are selected ***]) -+ fi -+ -+ if test "x$have_gstreamer" = "xyes"; then -+ GST_LIBS="$GST_LIBS -lgstinterfaces-0.10 -lgstaudio-0.10" -+ AC_DEFINE(HAVE_GSTREAMER,1,[enable gstreamer]) -+ fi -+else -+ AC_MSG_NOTICE([*** GStreamer support disabled ***]) -+fi -+AM_CONDITIONAL(HAVE_GSTREAMER, test "x$have_gstreamer" = "xyes") -+AC_SUBST(GST_LIBS) -+AC_SUBST(GST_CFLAGS) -+ - # --------------------------------------------------------------------------- - # Enable Profiling - # --------------------------------------------------------------------------- -@@ -395,6 +437,7 @@ - dbus-1 system.d dir: ${DBUS_SYS_DIR} - - Libnotify support: ${have_libnotify} -+ GStreamer support: ${have_gstreamer} - PulseAudio support: ${have_pulse} - Profiling support: ${enable_profiling} - " -diff -ruN gnome-settings-daemon-2.27.91/plugins/media-keys/Makefile.am gnome-settings-daemon-2.27.91.gst/plugins/media-keys/Makefile.am ---- gnome-settings-daemon-2.27.91/plugins/media-keys/Makefile.am 2009-07-14 11:21:12.000000000 +0200 -+++ gnome-settings-daemon-2.27.91.gst/plugins/media-keys/Makefile.am 2009-08-24 15:25:47.000000000 +0200 -@@ -1,12 +1,7 @@ - NULL = - --SUBDIRS = --plugin_LTLIBRARIES = -- --if HAVE_PULSE --SUBDIRS += cut-n-paste --plugin_LTLIBRARIES += libmedia-keys.la --endif -+SUBDIRS = cut-n-paste -+plugin_LTLIBRARIES = libmedia-keys.la - - BUILT_SOURCES = \ - gsd-media-keys-manager-glue.h \ -@@ -54,16 +49,14 @@ - - libmedia_keys_la_LIBADD = \ - $(top_builddir)/plugins/common/libcommon.la \ -- $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la \ -+ $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la \ - $(SETTINGS_PLUGIN_LIBS) \ - $(XF86MISC_LIBS) - - plugin_in_files = \ - media-keys.gnome-settings-plugin.in - --if HAVE_PULSE - plugin_DATA = $(plugin_in_files:.gnome-settings-plugin.in=.gnome-settings-plugin) --endif - - noinst_PROGRAMS = \ - test-media-keys \ -@@ -124,9 +117,7 @@ - $(XF86MISC_LIBS) \ - $(GST_LIBS) - --if HAVE_PULSE - test_media_keys_LDADD += $(top_builddir)/plugins/media-keys/cut-n-paste/libgvc.la --endif - - gtkbuilderdir = $(pkgdatadir) - gtkbuilder_DATA = \ -diff -ruN gnome-settings-daemon-2.27.91/plugins/media-keys/cut-n-paste/Makefile.am gnome-settings-daemon-2.27.91.gst/plugins/media-keys/cut-n-paste/Makefile.am ---- gnome-settings-daemon-2.27.91/plugins/media-keys/cut-n-paste/Makefile.am 2009-08-12 11:15:00.000000000 +0200 -+++ gnome-settings-daemon-2.27.91.gst/plugins/media-keys/cut-n-paste/Makefile.am 2009-08-24 15:25:47.000000000 +0200 -@@ -4,16 +4,24 @@ - - INCLUDES = \ - $(WARN_CFLAGS) \ -- $(VOLUME_CONTROL_CFLAGS) \ -- $(PULSE_CFLAGS) \ - $(NULL) - - libgvc_la_LIBADD = \ -- $(VOLUME_CONTROL_LIBS) \ -- $(PULSE_LIBS) \ - $(NULL) - - libgvc_la_SOURCES = \ -+ $(NULL) -+ -+if HAVE_PULSE -+INCLUDES += \ -+ $(VOLUME_CONTROL_CFLAGS) \ -+ $(PULSE_CFLAGS) -+ -+libgvc_la_LIBADD += \ -+ $(VOLUME_CONTROL_LIBS) \ -+ $(PULSE_LIBS) -+ -+libgvc_la_SOURCES += \ - gvc-mixer-stream.h \ - gvc-mixer-stream.c \ - gvc-channel-map.h \ -@@ -31,8 +39,22 @@ - gvc-mixer-event-role.h \ - gvc-mixer-event-role.c \ - gvc-mixer-control.h \ -- gvc-mixer-control.c \ -- $(NULL) -+ gvc-mixer-control.c -+endif -+ -+if HAVE_GSTREAMER -+INCLUDES += \ -+ $(SETTINGS_PLUGIN_CFLAGS) \ -+ $(AM_CFLAGS) \ -+ $(GST_CFLAGS) -+ -+libgvc_la_LIBADD += \ -+ $(GST_LIBS) -+ -+libgvc_la_SOURCES += \ -+ gvc-gstreamer-acme-vol.c \ -+ gvc-gstreamer-acme-vol.h -+endif - - MAINTAINERCLEANFILES = \ - *~ \ -diff -ruN gnome-settings-daemon-2.27.91/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c gnome-settings-daemon-2.27.91.gst/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c ---- gnome-settings-daemon-2.27.91/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c 1970-01-01 01:00:00.000000000 +0100 -+++ gnome-settings-daemon-2.27.91.gst/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.c 2009-08-24 15:25:47.000000000 +0200 -@@ -0,0 +1,402 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -+ -+/* acme-volume.c -+ -+ Copyright (C) 2002, 2003 Bastien Nocera -+ Copyright (C) 2004 Novell, Inc. -+ Copyright (C) 2009 PERIER Romain <mrpouet@tuxfamily.org> -+ -+ The Gnome Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The Gnome Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the Gnome Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. -+ -+ Author: Bastien Nocera <hadess@hadess.net> -+ Jon Trowbridge <trow@ximian.com> -+*/ -+ -+#include "config.h" -+#include "gvc-gstreamer-acme-vol.h" -+ -+#include <gst/gst.h> -+#include <gst/audio/mixerutils.h> -+#include <gst/interfaces/mixer.h> -+#include <gst/interfaces/propertyprobe.h> -+ -+#include <gconf/gconf-client.h> -+ -+#include <string.h> -+ -+#define TIMEOUT 4 -+ -+#define DEFAULT_MIXER_DEVICE_KEY "/desktop/gnome/sound/default_mixer_device" -+#define DEFAULT_MIXER_TRACKS_KEY "/desktop/gnome/sound/default_mixer_tracks" -+ -+#define ACME_VOLUME_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), ACME_TYPE_VOLUME, AcmeVolumePrivate)) -+ -+struct AcmeVolumePrivate { -+ GstMixer *mixer; -+ GList *mixer_tracks; -+ guint timer_id; -+ gdouble volume; -+ gboolean mute; -+ GConfClient *gconf_client; -+}; -+ -+G_DEFINE_TYPE (AcmeVolume, acme_volume, G_TYPE_OBJECT) -+ -+static gboolean acme_volume_open (AcmeVolume *acme); -+static void acme_volume_close (AcmeVolume *acme); -+static gboolean acme_volume_close_real (AcmeVolume *self); -+ -+static gpointer acme_volume_object = NULL; -+ -+static void -+acme_volume_finalize (GObject *object) -+{ -+ AcmeVolume *self; -+ -+ g_return_if_fail (object != NULL); -+ g_return_if_fail (ACME_IS_VOLUME (object)); -+ -+ self = ACME_VOLUME (object); -+ -+ if (self->_priv->timer_id != 0) -+ g_source_remove (self->_priv->timer_id); -+ acme_volume_close_real (self); -+ -+ if (self->_priv->gconf_client != NULL) { -+ g_object_unref (self->_priv->gconf_client); -+ self->_priv->gconf_client = NULL; -+ } -+ -+ G_OBJECT_CLASS (acme_volume_parent_class)->finalize (object); -+} -+ -+void -+acme_volume_set_mute (AcmeVolume *self, gboolean val) -+{ -+ GList *t; -+ -+ g_return_if_fail(ACME_IS_VOLUME(self)); -+ g_return_if_fail(acme_volume_open(self)); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gst_mixer_set_mute (self->_priv->mixer, track, val); -+ } -+ self->_priv->mute = val; -+ acme_volume_close (self); -+} -+ -+static void -+update_state (AcmeVolume * self) -+{ -+ gint *volumes, n; -+ gdouble vol = 0; -+ GstMixerTrack *track = GST_MIXER_TRACK (self->_priv->mixer_tracks->data); -+ -+ /* update mixer by getting volume */ -+ volumes = g_new0 (gint, track->num_channels); -+ gst_mixer_get_volume (self->_priv->mixer, track, volumes); -+ for (n = 0; n < track->num_channels; n++) -+ vol += volumes[n]; -+ g_free (volumes); -+ vol /= track->num_channels; -+ vol = 100 * vol / (track->max_volume - track->min_volume); -+ -+ /* update mute flag, and volume if not muted */ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MUTE)) -+ self->_priv->mute = TRUE; -+ self->_priv->volume = vol; -+} -+ -+gboolean -+acme_volume_get_mute (AcmeVolume *self) -+{ -+ g_return_val_if_fail(acme_volume_open(self), FALSE); -+ -+ update_state (self); -+ acme_volume_close (self); -+ -+ return self->_priv->mute; -+} -+ -+gint -+acme_volume_get_volume (AcmeVolume *self) -+{ -+ -+ g_return_val_if_fail(acme_volume_open(self), 0); -+ -+ update_state (self); -+ -+ acme_volume_close (self); -+ -+ return (gint) (self->_priv->volume + 0.5); -+} -+ -+void -+acme_volume_set_volume (AcmeVolume *self, gint val) -+{ -+ GList *t; -+ -+ g_return_if_fail(acme_volume_open(self)); -+ -+ val = CLAMP (val, 0, 100); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gint *volumes, n; -+ gdouble scale = (track->max_volume - track->min_volume) / 100.0; -+ gint vol = (gint) (val * scale + track->min_volume + 0.5); -+ -+ volumes = g_new (gint, track->num_channels); -+ for (n = 0; n < track->num_channels; n++) -+ volumes[n] = vol; -+ gst_mixer_set_volume (self->_priv->mixer, track, volumes); -+ g_free (volumes); -+ } -+ -+ /* update state */ -+ self->_priv->volume = val; -+ -+ acme_volume_close (self); -+} -+ -+void -+acme_volume_mute_toggle (AcmeVolume *self) -+{ -+ gboolean muted; -+ -+ g_return_if_fail (self != NULL); -+ g_return_if_fail (ACME_IS_VOLUME(self)); -+ -+ muted = acme_volume_get_mute(self); -+ acme_volume_set_mute(self, !muted); -+} -+ -+gint -+acme_volume_get_threshold (AcmeVolume *self) -+{ -+ GList *t; -+ gint steps = 101; -+ -+ g_return_val_if_fail(acme_volume_open(self), 1); -+ -+ for (t = self->_priv->mixer_tracks; t != NULL; t = t->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (t->data); -+ gint track_steps = track->max_volume - track->min_volume; -+ if (track_steps > 0 && track_steps < steps) -+ steps = track_steps; -+ } -+ -+ acme_volume_close (self); -+ -+ return 100 / steps + 1; -+} -+ -+static gboolean -+acme_volume_close_real (AcmeVolume *self) -+{ -+ if (self->_priv->mixer != NULL) -+ { -+ gst_element_set_state (GST_ELEMENT (self->_priv->mixer), GST_STATE_NULL); -+ gst_object_unref (GST_OBJECT (self->_priv->mixer)); -+ g_list_foreach (self->_priv->mixer_tracks, (GFunc) g_object_unref, NULL); -+ g_list_free (self->_priv->mixer_tracks); -+ self->_priv->mixer = NULL; -+ self->_priv->mixer_tracks = NULL; -+ } -+ -+ self->_priv->timer_id = 0; -+ return FALSE; -+} -+ -+/* -+ * _acme_set_mixer -+ * @mixer A pointer to mixer element -+ * @data A pointer to user data (AcmeVolume instance to be modified) -+ * @return A gboolean indicating success if Master track was found, failed otherwises. -+ */ -+static gboolean -+_acme_set_mixer(GstMixer *mixer, gpointer user_data) -+{ -+ const GList *tracks; -+ -+ for (tracks = gst_mixer_list_tracks (mixer); tracks != NULL; tracks = tracks->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (tracks->data); -+ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MASTER)) { -+ AcmeVolume *self; -+ -+ self = ACME_VOLUME (user_data); -+ -+ self->_priv->mixer = mixer; -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ return TRUE; -+ } -+ -+ continue; -+ } -+ -+ return FALSE; -+} -+ -+/* This is a modified version of code from gnome-media's gst-mixer */ -+static gboolean -+acme_volume_open (AcmeVolume *self) -+{ -+ gchar *mixer_device, **factory_and_device = NULL; -+ GList *mixer_list; -+ -+ if (self->_priv->timer_id != 0) { -+ g_source_remove (self->_priv->timer_id); -+ self->_priv->timer_id = 0; -+ return TRUE; -+ } -+ -+ mixer_device = gconf_client_get_string (self->_priv->gconf_client, DEFAULT_MIXER_DEVICE_KEY, NULL); -+ if (mixer_device != NULL) -+ factory_and_device = g_strsplit (mixer_device, ":", 2); -+ -+ if (factory_and_device != NULL && factory_and_device[0] != NULL) { -+ GstElement *element; -+ -+ element = gst_element_factory_make (factory_and_device[0], NULL); -+ -+ if (element != NULL) { -+ if (factory_and_device[1] != NULL && -+ g_object_class_find_property (G_OBJECT_GET_CLASS (element), "device")) -+ g_object_set (G_OBJECT (element), "device", factory_and_device[1], NULL); -+ gst_element_set_state (element, GST_STATE_READY); -+ -+ if (GST_IS_MIXER (element)) -+ self->_priv->mixer = GST_MIXER (element); -+ else { -+ gst_element_set_state (element, GST_STATE_NULL); -+ gst_object_unref (element); -+ } -+ } -+ } -+ -+ g_free (mixer_device); -+ g_strfreev (factory_and_device); -+ -+ if (self->_priv->mixer != NULL) { -+ const GList *m; -+ GSList *tracks, *t; -+ GError *error = NULL; -+ -+ /* Try to use tracks saved in GConf -+ Note: errors need to be treated , for example if the user set a non type list for this key -+ or if the elements type_list are not "matched" */ -+ tracks = gconf_client_get_list (self->_priv->gconf_client, DEFAULT_MIXER_TRACKS_KEY, -+ GCONF_VALUE_STRING, &error); -+ -+ if (error) { -+ g_warning("ERROR: %s\n", error->message); -+ g_error_free(error); -+ } -+ -+ /* We use these tracks ONLY if they are supported on the system with the following mixer */ -+ for (m = gst_mixer_list_tracks (self->_priv->mixer); m != NULL; m = m->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (m->data); -+ -+ for (t = tracks; t != NULL; t = t->next) -+ if (!strcmp (t->data, track->label)) -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ -+ } -+ -+ g_slist_foreach (tracks, (GFunc)g_free, NULL); -+ g_slist_free (tracks); -+ -+ /* If no track stored in GConf is avaiable try to use Master track */ -+ if (self->_priv->mixer_tracks == NULL) { -+ for (m = gst_mixer_list_tracks (self->_priv->mixer); m != NULL; m = m->next) { -+ GstMixerTrack *track = GST_MIXER_TRACK (m->data); -+ -+ if (GST_MIXER_TRACK_HAS_FLAG (track, GST_MIXER_TRACK_MASTER)) { -+ self->_priv->mixer_tracks = g_list_append (self->_priv->mixer_tracks, g_object_ref (track)); -+ break; -+ } -+ } -+ } -+ -+ if (self->_priv->mixer_tracks != NULL) -+ return TRUE; -+ else { -+ gst_element_set_state (GST_ELEMENT (self->_priv->mixer), GST_STATE_NULL); -+ gst_object_unref (self->_priv->mixer); -+ } -+ } -+ -+ /* Go through all elements of a certain class and check whether -+ * they implement a mixer. If so, walk through the tracks and look -+ * for first one named "volume". -+ * -+ * We should probably do something intelligent if we don't find an -+ * appropriate mixer/track. But now we do something stupid... -+ * everything just becomes a no-op. -+ */ -+ mixer_list = gst_audio_default_registry_mixer_filter (_acme_set_mixer, -+ TRUE, -+ self); -+ -+ if (mixer_list == NULL) -+ return FALSE; -+ -+ /* do not unref the mixer as we keep the ref for self->priv->mixer */ -+ g_list_free (mixer_list); -+ -+ return TRUE; -+} -+ -+static void -+acme_volume_close (AcmeVolume *self) -+{ -+ self->_priv->timer_id = g_timeout_add_seconds (TIMEOUT, -+ (GSourceFunc) acme_volume_close_real, self); -+} -+ -+static void -+acme_volume_init (AcmeVolume *self) -+{ -+ self->_priv = ACME_VOLUME_GET_PRIVATE (self); -+ self->_priv->gconf_client = gconf_client_get_default (); -+} -+ -+static void -+acme_volume_class_init (AcmeVolumeClass *klass) -+{ -+ G_OBJECT_CLASS (klass)->finalize = acme_volume_finalize; -+ -+ gst_init (NULL, NULL); -+ -+ g_type_class_add_private (klass, sizeof (AcmeVolumePrivate)); -+} -+ -+/* acme_volume_new -+ * @return A singleton instance of type AcmeVolume -+ */ -+AcmeVolume * -+acme_volume_new (void) -+{ -+ if (acme_volume_object == NULL) { -+ acme_volume_object = g_object_new (ACME_TYPE_VOLUME, NULL); -+ return ACME_VOLUME(acme_volume_object); -+ } -+ g_object_ref(acme_volume_object); -+ return ACME_VOLUME(acme_volume_object); -+} -+ -diff -ruN gnome-settings-daemon-2.27.91/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h gnome-settings-daemon-2.27.91.gst/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h ---- gnome-settings-daemon-2.27.91/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h 1970-01-01 01:00:00.000000000 +0100 -+++ gnome-settings-daemon-2.27.91.gst/plugins/media-keys/cut-n-paste/gvc-gstreamer-acme-vol.h 2009-08-24 15:25:47.000000000 +0200 -@@ -0,0 +1,56 @@ -+/* acme-volume.h -+ -+ Copyright (C) 2002, 2003 Bastien Nocera -+ Copyright (C) 2004 Novell, Inc. -+ Copyright (C) 2009 PERIER Romain <mrpouet@tuxfamily.org> -+ -+ The Gnome Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public License as -+ published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+ The Gnome Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with the Gnome Library; see the file COPYING.LIB. If not, -+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. -+ -+ Author: Bastien Nocera <hadess@hadess.net> -+ Jon Trowbridge <trow@ximian.com> -+ */ -+ -+#include <glib-object.h> -+ -+#define ACME_TYPE_VOLUME (acme_volume_get_type ()) -+#define ACME_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ACME_TYPE_VOLUME, AcmeVolume)) -+#define ACME_VOLUME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ACME_TYPE_VOLUME, AcmeVolumeClass)) -+#define ACME_IS_VOLUME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ACME_TYPE_VOLUME)) -+#define ACME_VOLUME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ACME_TYPE_VOLUME, AcmeVolumeClass)) -+ -+typedef struct AcmeVolume AcmeVolume; -+typedef struct AcmeVolumeClass AcmeVolumeClass; -+typedef struct AcmeVolumePrivate AcmeVolumePrivate; -+ -+struct AcmeVolume { -+ GObject parent; -+ AcmeVolumePrivate *_priv; -+}; -+ -+struct AcmeVolumeClass { -+ GObjectClass parent; -+}; -+ -+GType acme_volume_get_type (void); -+AcmeVolume *acme_volume_new (void); -+void acme_volume_set_mute (AcmeVolume *self, gboolean val); -+void acme_volume_mute_toggle (AcmeVolume *self); -+gboolean acme_volume_get_mute (AcmeVolume *self); -+void acme_volume_set_volume (AcmeVolume *self, gint val); -+gint acme_volume_get_volume (AcmeVolume *self); -+gint acme_volume_get_threshold (AcmeVolume *self); -+ -+ -diff -ruN gnome-settings-daemon-2.27.91/plugins/media-keys/gsd-media-keys-manager.c gnome-settings-daemon-2.27.91.gst/plugins/media-keys/gsd-media-keys-manager.c ---- gnome-settings-daemon-2.27.91/plugins/media-keys/gsd-media-keys-manager.c 2009-08-24 12:20:18.000000000 +0200 -+++ gnome-settings-daemon-2.27.91.gst/plugins/media-keys/gsd-media-keys-manager.c 2009-08-24 16:38:50.000000000 +0200 -@@ -52,6 +52,8 @@ - - #ifdef HAVE_PULSE - #include "gvc-mixer-control.h" -+#elif defined(HAVE_GSTREAMER) -+#include "gvc-gstreamer-acme-vol.h" - #endif /* HAVE_PULSE */ - - #define GSD_DBUS_PATH "/org/gnome/SettingsDaemon" -@@ -87,6 +89,8 @@ - /* Volume bits */ - GvcMixerControl *volume; - GvcMixerStream *stream; -+#elif defined(HAVE_GSTREAMER) -+ AcmeVolume *volume; - #endif /* HAVE_PULSE */ - GtkWidget *dialog; - GConfClient *conf_client; -@@ -626,7 +630,9 @@ - GSD_MEDIA_KEYS_WINDOW_ACTION_VOLUME); - dialog_show (manager); - } -+#endif /* HAVE_PULSE */ - -+#if defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) - static void - do_sound_action (GsdMediaKeysManager *manager, - int type) -@@ -635,7 +641,11 @@ - guint vol, norm_vol_step; - int vol_step; - -+#ifdef HAVE_PULSE - if (manager->priv->stream == NULL) -+#else -+ if (manager->priv->volume == NULL) -+#endif - return; - - vol_step = gconf_client_get_int (manager->priv->conf_client, -@@ -645,18 +655,34 @@ - if (vol_step <= 0 || vol_step > 100) - vol_step = VOLUME_STEP; - -+#ifdef HAVE_PULSE - norm_vol_step = PA_VOLUME_NORM * vol_step / 100; - - /* FIXME: this is racy */ - vol = gvc_mixer_stream_get_volume (manager->priv->stream); - muted = gvc_mixer_stream_get_is_muted (manager->priv->stream); - -+#else -+ if (vol_step > 0) { -+ gint threshold = acme_volume_get_threshold (manager->priv->volume); -+ if (vol_step < threshold) -+ vol_step = threshold; -+ g_debug ("Using volume step of %d", vol_step); -+ } -+ vol = acme_volume_get_volume (manager->priv->volume); -+ muted = acme_volume_get_mute (manager->priv->volume); -+#endif - switch (type) { - case MUTE_KEY: -+#ifdef HAVE_PULSE - muted = !muted; - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); -+#else -+ acme_volume_mute_toggle (manager->priv->volume); -+#endif - break; - case VOLUME_DOWN_KEY: -+#ifdef HAVE_PULSE - if (!muted && (vol <= norm_vol_step)) { - muted = !muted; - vol = 0; -@@ -668,11 +694,17 @@ - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) - gvc_mixer_stream_push_volume (manager->priv->stream); - } -+#else -+ if (!muted && (vol <= vol_step)) -+ acme_volume_mute_toggle (manager->priv->volume); -+ acme_volume_set_volume (manager->priv->volume, vol - vol_step); -+#endif - break; - case VOLUME_UP_KEY: - if (muted) { - muted = !muted; - if (vol == 0) { -+#ifdef HAVE_PULSE - vol = vol + norm_vol_step; - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) -@@ -680,7 +712,15 @@ - } else { - gvc_mixer_stream_change_is_muted (manager->priv->stream, muted); - } -+#else -+ /* We need to unmute otherwise vol is blocked (and muted) */ -+ acme_volume_set_mute (manager->priv->volume, FALSE); -+ } -+ acme_volume_set_volume (manager->priv->volume, vol + vol_step); -+ -+#endif - } else { -+#ifdef HAVE_PULSE - if (vol < MAX_VOLUME) { - gboolean set; - if (vol + norm_vol_step >= MAX_VOLUME) { -@@ -691,13 +731,35 @@ - if (gvc_mixer_stream_set_volume (manager->priv->stream, vol) != FALSE) - gvc_mixer_stream_push_volume (manager->priv->stream); - } -+#else -+ acme_volume_set_volume (manager->priv->volume, vol + vol_step); -+#endif - } - break; - } - -+#ifdef HAVE_PULSE - update_dialog (manager, vol, muted); -+#else -+ muted = acme_volume_get_mute (manager->priv->volume); -+ vol = acme_volume_get_volume (manager->priv->volume); -+ -+ /* FIXME: AcmeVolume should probably emit signals -+ instead of doing it like this */ -+ dialog_init (manager); -+ gsd_media_keys_window_set_volume_muted (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ muted); -+ gsd_media_keys_window_set_volume_level (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ vol); -+ gsd_media_keys_window_set_action (GSD_MEDIA_KEYS_WINDOW (manager->priv->dialog), -+ GSD_MEDIA_KEYS_WINDOW_ACTION_VOLUME); -+ dialog_show (manager); -+#endif /* HAVE_PULSE */ - } - -+#endif /* defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) */ -+ -+#ifdef HAVE_PULSE - static void - update_default_sink (GsdMediaKeysManager *manager) - { -@@ -856,9 +918,9 @@ - case MUTE_KEY: - case VOLUME_DOWN_KEY: - case VOLUME_UP_KEY: --#ifdef HAVE_PULSE -+#if defined(HAVE_PULSE) || defined(HAVE_GSTREAMER) - do_sound_action (manager, type); --#endif /* HAVE_PULSE */ -+#endif /* HAVE_PULSE || HAVE_GSTREAMER */ - break; - case POWER_KEY: - do_exit_action (manager); -@@ -1061,6 +1123,10 @@ - gvc_mixer_control_open (manager->priv->volume); - - gnome_settings_profile_end ("gvc_mixer_control_new"); -+#elif defined(HAVE_GSTREAMER) -+ gnome_settings_profile_start ("acme_volume_new"); -+ manager->priv->volume = acme_volume_new (); -+ gnome_settings_profile_end ("acme_volume_new"); - #endif /* HAVE_PULSE */ - g_idle_add ((GSourceFunc) start_media_keys_idle_cb, manager); - -@@ -1133,6 +1199,7 @@ - g_object_unref (priv->stream); - priv->stream = NULL; - } -+#elif defined(HAVE_GSTREAMER) - - if (priv->volume) { - g_object_unref (priv->volume); diff --git a/extra/gnome-user-share/gnome-user-share-2.30.1-libnotify-0.7.patch b/extra/gnome-user-share/gnome-user-share-2.30.1-libnotify-0.7.patch deleted file mode 100644 index 73c5a9ab8..000000000 --- a/extra/gnome-user-share/gnome-user-share-2.30.1-libnotify-0.7.patch +++ /dev/null @@ -1,31 +0,0 @@ -http://pkgs.fedoraproject.org/gitweb/?p=gnome-user-share.git;a=blob;f=notify.patch;hb=HEAD - ---- src/obexpush.c -+++ src/obexpush.c -@@ -139,10 +139,9 @@ show_notification (const char *filename) - /* Translators: %s is the name of the filename received */ - notification_text = g_strdup_printf(_("You received \"%s\" via Bluetooth"), display); - g_free (display); -- notification = notify_notification_new_with_status_icon (_("You received a file"), -- notification_text, -- "dialog-information", -- GTK_STATUS_ICON (statusicon)); -+ notification = notify_notification_new (_("You received a file"), -+ notification_text, -+ "dialog-information"); - - notify_notification_set_timeout (notification, NOTIFY_EXPIRES_DEFAULT); - -@@ -218,10 +217,10 @@ device_is_authorised (const char *bdaddr - char *device_path; - GHashTable *props; - -- g_message ("checking adapter %s", g_ptr_array_index (adapters, i)); -+ g_message ("checking adapter %s", (char *)g_ptr_array_index (adapters, i)); - - adapter = dbus_g_proxy_new_for_name (connection, "org.bluez", -- g_ptr_array_index (adapters, i), "org.bluez.Adapter"); -+ (char *)g_ptr_array_index (adapters, i), "org.bluez.Adapter"); - - if (dbus_g_proxy_call (adapter, "FindDevice", NULL, - G_TYPE_STRING, bdaddr, G_TYPE_INVALID, diff --git a/extra/gnome-vfs/hal-show-volume-names.patch b/extra/gnome-vfs/hal-show-volume-names.patch deleted file mode 100644 index 5b8420c2b..000000000 --- a/extra/gnome-vfs/hal-show-volume-names.patch +++ /dev/null @@ -1,46 +0,0 @@ -Index: gnome-vfs-hal-mounts.c -=================================================================== -RCS file: /cvs/gnome/gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c,v -retrieving revision 1.33 -diff -u -p -r1.33 gnome-vfs-hal-mounts.c ---- gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c 7 Jul 2006 15:56:57 -0000 1.33 -+++ gnome-vfs/libgnomevfs/gnome-vfs-hal-mounts.c 14 Jul 2006 18:48:51 -0000 -@@ -877,6 +877,7 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa - GnomeVFSDrive *drive; - GnomeVFSVolumeMonitor *volume_monitor; - char *name; -+ char *icon; - gboolean allowed_by_policy; - const char *backing_udi; - -@@ -975,6 +976,8 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa - */ - drive = _gnome_vfs_volume_monitor_find_drive_by_hal_udi (volume_monitor, libhal_volume_get_udi (hal_volume)); - if (drive == NULL && allowed_by_policy) { -+ name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); -+ icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume); - drive = g_object_new (GNOME_VFS_TYPE_DRIVE, NULL); - if (libhal_volume_disc_has_audio (hal_volume)) { - drive->priv->activation_uri = g_strdup_printf ("cdda://%s", -@@ -989,16 +992,16 @@ _hal_add_volume (GnomeVFSVolumeMonitorDa - * So just set it to the empty string - */ - drive->priv->activation_uri = g_strdup (""); -+ g_free (name); -+ name = _hal_volume_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); -+ g_free (icon); -+ icon = _hal_volume_policy_get_icon (volume_monitor_daemon, hal_drive, hal_volume); - } - drive->priv->is_connected = TRUE; - drive->priv->device_path = g_strdup (libhal_volume_get_device_file (hal_volume)); - drive->priv->device_type = _hal_get_gnome_vfs_device_type (hal_drive); - -- /* TODO: could add an icon of a drive with media in it since this codepath only -- * handles drives with media in them -- */ -- drive->priv->icon = _hal_drive_policy_get_icon (volume_monitor_daemon, hal_drive, NULL); -- name = _hal_drive_policy_get_display_name (volume_monitor_daemon, hal_drive, hal_volume); -+ drive->priv->icon = icon; - drive->priv->display_name = _gnome_vfs_volume_monitor_uniquify_drive_name (volume_monitor, name); - g_free (name); - name = g_utf8_casefold (drive->priv->display_name, -1); diff --git a/extra/gtk2/old-icon-symlinks.patch b/extra/gtk2/old-icon-symlinks.patch deleted file mode 100644 index 046dd4df4..000000000 --- a/extra/gtk2/old-icon-symlinks.patch +++ /dev/null @@ -1,269 +0,0 @@ -diff -aur gtk+-2.22.0.orig//gtk/Makefile.in gtk+-2.22.0/gtk/Makefile.in ---- gtk+-2.22.0.orig//gtk/Makefile.in 2010-10-15 04:57:50.810006145 +0800 -+++ gtk+-2.22.0/gtk/Makefile.in 2010-10-15 05:13:49.083339478 +0800 -@@ -1598,7 +1598,172 @@ - stock-icons/24/folder-remote.png \ - stock-icons/24/user-home.png \ - stock-icons/24/user-desktop.png \ -- stock-icons/24/text-x-generic.png -+ stock-icons/24/text-x-generic.png \ -+ stock-icons/16/gtk-quit.png \ -+ stock-icons/16/gtk-info.png \ -+ stock-icons/16/gtk-file.png \ -+ stock-icons/16/gtk-open.png \ -+ stock-icons/16/gtk-print-preview.png \ -+ stock-icons/16/gtk-print.png \ -+ stock-icons/16/gtk-properties.png \ -+ stock-icons/16/gtk-revert-to-saved-ltr.png \ -+ stock-icons/16/gtk-revert-to-saved-rtl.png \ -+ stock-icons/16/gtk-save-as.png \ -+ stock-icons/16/gtk-new.png \ -+ stock-icons/16/gtk-harddisk.png \ -+ stock-icons/16/gtk-clear.png \ -+ stock-icons/16/gtk-copy.png \ -+ stock-icons/16/gtk-cut.png \ -+ stock-icons/16/gtk-delete.png \ -+ stock-icons/16/gtk-find-and-replace.png \ -+ stock-icons/16/gtk-find.png \ -+ stock-icons/16/gtk-paste.png \ -+ stock-icons/16/gtk-redo-ltr.png \ -+ stock-icons/16/gtk-redo-rtl.png \ -+ stock-icons/16/gtk-select-all.png \ -+ stock-icons/16/gtk-undo-ltr.png \ -+ stock-icons/16/gtk-undo-rtl.png \ -+ stock-icons/16/gtk-directory.png \ -+ stock-icons/16/gtk-unindent-ltr.png \ -+ stock-icons/16/gtk-unindent-rtl.png \ -+ stock-icons/16/gtk-indent-ltr.png \ -+ stock-icons/16/gtk-indent-rtl.png \ -+ stock-icons/16/gtk-justify-center.png \ -+ stock-icons/16/gtk-justify-fill.png \ -+ stock-icons/16/gtk-justify-left.png \ -+ stock-icons/16/gtk-justify-right.png \ -+ stock-icons/16/gtk-bold.png \ -+ stock-icons/16/gtk-italic.png \ -+ stock-icons/16/gtk-strikethrough.png \ -+ stock-icons/16/gtk-underline.png \ -+ stock-icons/16/gtk-goto-bottom.png \ -+ stock-icons/16/gtk-go-down.png \ -+ stock-icons/16/gtk-goto-first-ltr.png \ -+ stock-icons/16/gtk-home.png \ -+ stock-icons/16/gtk-jump-to-ltr.png \ -+ stock-icons/16/gtk-jump-to-rtl.png \ -+ stock-icons/16/gtk-goto-last-ltr.png \ -+ stock-icons/16/gtk-go-forward-ltr.png \ -+ stock-icons/16/gtk-go-back-ltr.png \ -+ stock-icons/16/gtk-goto-top.png \ -+ stock-icons/16/gtk-go-up.png \ -+ stock-icons/16/gtk-about.png \ -+ stock-icons/16/gtk-help.png \ -+ stock-icons/16/gtk-missing-image.png \ -+ stock-icons/16/gtk-add.png \ -+ stock-icons/16/gtk-remove.png \ -+ stock-icons/16/gtk-floppy.png \ -+ stock-icons/16/gtk-cdrom.png \ -+ stock-icons/16/gtk-media-pause.png \ -+ stock-icons/16/gtk-media-play-ltr.png \ -+ stock-icons/16/gtk-media-play-rtl.png \ -+ stock-icons/16/gtk-media-stop.png \ -+ stock-icons/16/gtk-media-record.png \ -+ stock-icons/16/gtk-media-rewind-ltr.png \ -+ stock-icons/16/gtk-media-forward-ltr.png \ -+ stock-icons/16/gtk-media-previous-ltr.png \ -+ stock-icons/16/gtk-media-next-ltr.png \ -+ stock-icons/16/gtk-network.png \ -+ stock-icons/16/gtk-print-error.png \ -+ stock-icons/16/gtk-print-report.png \ -+ stock-icons/16/gtk-print-paused.png \ -+ stock-icons/16/gtk-print-warning.png \ -+ stock-icons/16/gtk-stop.png \ -+ stock-icons/16/gtk-execute.png \ -+ stock-icons/16/gtk-spell-check.png \ -+ stock-icons/16/gtk-fullscreen.png \ -+ stock-icons/16/gtk-refresh.png \ -+ stock-icons/16/gtk-leave-fullscreen.png \ -+ stock-icons/16/gtk-sort-ascending.png \ -+ stock-icons/16/gtk-sort-descending.png \ -+ stock-icons/16/gtk-close.png \ -+ stock-icons/16/gtk-zoom-fit.png \ -+ stock-icons/16/gtk-zoom-in.png \ -+ stock-icons/16/gtk-zoom-100.png \ -+ stock-icons/16/gtk-zoom-out.png \ -+ stock-icons/24/gtk-quit.png \ -+ stock-icons/24/gtk-info.png \ -+ stock-icons/24/gtk-file.png \ -+ stock-icons/24/gtk-open.png \ -+ stock-icons/24/gtk-print-preview.png \ -+ stock-icons/24/gtk-print.png \ -+ stock-icons/24/gtk-properties.png \ -+ stock-icons/24/gtk-revert-to-saved-ltr.png \ -+ stock-icons/24/gtk-revert-to-saved-rtl.png \ -+ stock-icons/24/gtk-save-as.png \ -+ stock-icons/24/gtk-new.png \ -+ stock-icons/24/gtk-harddisk.png \ -+ stock-icons/24/gtk-clear.png \ -+ stock-icons/24/gtk-copy.png \ -+ stock-icons/24/gtk-cut.png \ -+ stock-icons/24/gtk-delete.png \ -+ stock-icons/24/gtk-find-and-replace.png \ -+ stock-icons/24/gtk-find.png \ -+ stock-icons/24/gtk-paste.png \ -+ stock-icons/24/gtk-redo-ltr.png \ -+ stock-icons/24/gtk-redo-rtl.png \ -+ stock-icons/24/gtk-select-all.png \ -+ stock-icons/24/gtk-undo-ltr.png \ -+ stock-icons/24/gtk-undo-rtl.png \ -+ stock-icons/24/gtk-directory.png \ -+ stock-icons/24/gtk-unindent-ltr.png \ -+ stock-icons/24/gtk-unindent-rtl.png \ -+ stock-icons/24/gtk-indent-ltr.png \ -+ stock-icons/24/gtk-indent-rtl.png \ -+ stock-icons/24/gtk-justify-center.png \ -+ stock-icons/24/gtk-justify-fill.png \ -+ stock-icons/24/gtk-justify-left.png \ -+ stock-icons/24/gtk-justify-right.png \ -+ stock-icons/24/gtk-bold.png \ -+ stock-icons/24/gtk-italic.png \ -+ stock-icons/24/gtk-strikethrough.png \ -+ stock-icons/24/gtk-underline.png \ -+ stock-icons/24/gtk-goto-bottom.png \ -+ stock-icons/24/gtk-go-down.png \ -+ stock-icons/24/gtk-goto-first-ltr.png \ -+ stock-icons/24/gtk-home.png \ -+ stock-icons/24/gtk-jump-to-ltr.png \ -+ stock-icons/24/gtk-jump-to-rtl.png \ -+ stock-icons/24/gtk-goto-last-ltr.png \ -+ stock-icons/24/gtk-go-forward-ltr.png \ -+ stock-icons/24/gtk-go-back-ltr.png \ -+ stock-icons/24/gtk-goto-top.png \ -+ stock-icons/24/gtk-go-up.png \ -+ stock-icons/24/gtk-about.png \ -+ stock-icons/24/gtk-help.png \ -+ stock-icons/24/gtk-missing-image.png \ -+ stock-icons/24/gtk-add.png \ -+ stock-icons/24/gtk-remove.png \ -+ stock-icons/24/gtk-floppy.png \ -+ stock-icons/24/gtk-cdrom.png \ -+ stock-icons/24/gtk-media-pause.png \ -+ stock-icons/24/gtk-media-play-ltr.png \ -+ stock-icons/24/gtk-media-play-rtl.png \ -+ stock-icons/24/gtk-media-stop.png \ -+ stock-icons/24/gtk-media-record.png \ -+ stock-icons/24/gtk-media-rewind-ltr.png \ -+ stock-icons/24/gtk-media-forward-ltr.png \ -+ stock-icons/24/gtk-media-previous-ltr.png \ -+ stock-icons/24/gtk-media-next-ltr.png \ -+ stock-icons/24/gtk-network.png \ -+ stock-icons/24/gtk-print-error.png \ -+ stock-icons/24/gtk-print-report.png \ -+ stock-icons/24/gtk-print-paused.png \ -+ stock-icons/24/gtk-print-warning.png \ -+ stock-icons/24/gtk-stop.png \ -+ stock-icons/24/gtk-execute.png \ -+ stock-icons/24/gtk-spell-check.png \ -+ stock-icons/24/gtk-fullscreen.png \ -+ stock-icons/24/gtk-refresh.png \ -+ stock-icons/24/gtk-leave-fullscreen.png \ -+ stock-icons/24/gtk-sort-ascending.png \ -+ stock-icons/24/gtk-sort-descending.png \ -+ stock-icons/24/gtk-close.png \ -+ stock-icons/24/gtk-zoom-fit.png \ -+ stock-icons/24/gtk-zoom-in.png \ -+ stock-icons/24/gtk-zoom-100.png \ -+ stock-icons/24/gtk-zoom-out.png \ -+ stock-icons/48/gtk-dialog-error.png - - @CROSS_COMPILING_FALSE@gtk_update_icon_cache_program = \ - @CROSS_COMPILING_FALSE@ ./gtk-update-icon-cache -@@ -2869,7 +3034,91 @@ - && $(LN_S) folder.png user-desktop.png \ - && $(RM) text-x-generic.png \ - && $(LN_S) document-x-generic.png text-x-generic.png \ -+ && $(LN_S) application-exit.png gtk-quit.png \ -+ && $(LN_S) dialog-information.png gtk-info.png \ -+ && $(LN_S) document-new.png gtk-file.png \ -+ && $(LN_S) document-open.png gtk-open.png \ -+ && $(LN_S) document-print-preview.png gtk-print-preview.png \ -+ && $(LN_S) document-print.png gtk-print.png \ -+ && $(LN_S) document-properties.png gtk-properties.png \ -+ && $(LN_S) document-revert-ltr.png gtk-revert-to-saved-ltr.png \ -+ && $(LN_S) document-revert-rtl.png gtk-revert-to-saved-rtl.png \ -+ && $(LN_S) document-save-as.png gtk-save-as.png \ -+ && $(LN_S) document-x-generic.png gtk-new.png \ -+ && $(LN_S) drive-harddisk.png gtk-harddisk.png \ -+ && $(LN_S) edit-clear.png gtk-clear.png \ -+ && $(LN_S) edit-copy.png gtk-copy.png \ -+ && $(LN_S) edit-cut.png gtk-cut.png \ -+ && $(LN_S) edit-delete.png gtk-delete.png \ -+ && $(LN_S) edit-find-replace.png gtk-find-and-replace.png \ -+ && $(LN_S) edit-find.png gtk-find.png \ -+ && $(LN_S) edit-paste.png gtk-paste.png \ -+ && $(LN_S) edit-redo-ltr.png gtk-redo-ltr.png \ -+ && $(LN_S) edit-redo-rtl.png gtk-redo-rtl.png \ -+ && $(LN_S) edit-select-all.png gtk-select-all.png \ -+ && $(LN_S) edit-undo-ltr.png gtk-undo-ltr.png \ -+ && $(LN_S) edit-undo-rtl.png gtk-undo-rtl.png \ -+ && $(LN_S) folder.png gtk-directory.png \ -+ && $(LN_S) format-indent-less-ltr.png gtk-unindent-ltr.png \ -+ && $(LN_S) format-indent-less-rtl.png gtk-unindent-rtl.png \ -+ && $(LN_S) format-indent-more-ltr.png gtk-indent-ltr.png \ -+ && $(LN_S) format-indent-more-rtl.png gtk-indent-rtl.png \ -+ && $(LN_S) format-justify-center.png gtk-justify-center.png \ -+ && $(LN_S) format-justify-fill.png gtk-justify-fill.png \ -+ && $(LN_S) format-justify-left.png gtk-justify-left.png \ -+ && $(LN_S) format-justify-right.png gtk-justify-right.png \ -+ && $(LN_S) format-text-bold.png gtk-bold.png \ -+ && $(LN_S) format-text-italic.png gtk-italic.png \ -+ && $(LN_S) format-text-strikethrough.png gtk-strikethrough.png \ -+ && $(LN_S) format-text-underline.png gtk-underline.png \ -+ && $(LN_S) go-bottom.png gtk-goto-bottom.png \ -+ && $(LN_S) go-down.png gtk-go-down.png \ -+ && $(LN_S) go-first-ltr.png gtk-goto-first-ltr.png \ -+ && $(LN_S) go-home.png gtk-home.png \ -+ && $(LN_S) go-jump-ltr.png gtk-jump-to-ltr.png \ -+ && $(LN_S) go-jump-rtl.png gtk-jump-to-rtl.png \ -+ && $(LN_S) go-last-ltr.png gtk-goto-last-ltr.png \ -+ && $(LN_S) go-next-ltr.png gtk-go-forward-ltr.png \ -+ && $(LN_S) go-previous-ltr.png gtk-go-back-ltr.png \ -+ && $(LN_S) go-top.png gtk-goto-top.png \ -+ && $(LN_S) go-up.png gtk-go-up.png \ -+ && $(LN_S) help-about.png gtk-about.png \ -+ && $(LN_S) help-contents.png gtk-help.png \ -+ && $(LN_S) image-missing.png gtk-missing-image.png \ -+ && $(LN_S) list-add.png gtk-add.png \ -+ && $(LN_S) list-remove.png gtk-remove.png \ -+ && $(LN_S) media-floppy.png gtk-floppy.png \ -+ && $(LN_S) media-optical.png gtk-cdrom.png \ -+ && $(LN_S) media-playback-pause.png gtk-media-pause.png \ -+ && $(LN_S) media-playback-start-ltr.png gtk-media-play-ltr.png \ -+ && $(LN_S) media-playback-start-rtl.png gtk-media-play-rtl.png \ -+ && $(LN_S) media-playback-stop.png gtk-media-stop.png \ -+ && $(LN_S) media-record.png gtk-media-record.png \ -+ && $(LN_S) media-seek-backward-ltr.png gtk-media-rewind-ltr.png \ -+ && $(LN_S) media-seek-forward-ltr.png gtk-media-forward-ltr.png \ -+ && $(LN_S) media-skip-backward-ltr.png gtk-media-previous-ltr.png \ -+ && $(LN_S) media-skip-forward-ltr.png gtk-media-next-ltr.png \ -+ && $(LN_S) network-idle.png gtk-network.png \ -+ && $(LN_S) printer-error.png gtk-print-error.png \ -+ && $(LN_S) printer-info.png gtk-print-report.png \ -+ && $(LN_S) printer-paused.png gtk-print-paused.png \ -+ && $(LN_S) printer-warning.png gtk-print-warning.png \ -+ && $(LN_S) process-stop.png gtk-stop.png \ -+ && $(LN_S) system-run.png gtk-execute.png \ -+ && $(LN_S) tools-check-spelling.png gtk-spell-check.png \ -+ && $(LN_S) view-fullscreen.png gtk-fullscreen.png \ -+ && $(LN_S) view-refresh.png gtk-refresh.png \ -+ && $(LN_S) view-restore.png gtk-leave-fullscreen.png \ -+ && $(LN_S) view-sort-ascending.png gtk-sort-ascending.png \ -+ && $(LN_S) view-sort-descending.png gtk-sort-descending.png \ -+ && $(LN_S) window-close.png gtk-close.png \ -+ && $(LN_S) zoom-fit-best.png gtk-zoom-fit.png \ -+ && $(LN_S) zoom-in.png gtk-zoom-in.png \ -+ && $(LN_S) zoom-original.png gtk-zoom-100.png \ -+ && $(LN_S) zoom-out.png gtk-zoom-out.png \ - ) done \ -+ && (cd stock-icons/48 \ -+ && $(LN_S) dialog-error.png gtk-dialog-error.png) \ - && touch stamp-icons - - gtkbuiltincache.h: @REBUILD@ stamp-icons diff --git a/extra/libnotify/libnotify-0.7.1-gtk3-tests.patch b/extra/libnotify/libnotify-0.7.1-gtk3-tests.patch deleted file mode 100644 index 7d1230520..000000000 --- a/extra/libnotify/libnotify-0.7.1-gtk3-tests.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 92983cacd36fa9b050f911bc4de09b8c4fb9f3b2 Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Thu, 16 Dec 2010 00:01:13 +0100 -Subject: [PATCH] gentoo: do not build gtk+:3 tests if not required - ---- - configure.ac | 5 +++++ - tests/Makefile.am | 30 +++++++++++++++++------------- - 2 files changed, 22 insertions(+), 13 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 71609ed..7767c5b 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -97,10 +97,15 @@ AC_SUBST(PACKAGE_LIBS) - AC_SUBST(PACKAGE_CFLAGS) - AC_SUBST(pkg_modules) - -+AC_ARG_ENABLE([tests], -+ AS_HELP_STRING([--enable-tests], [Check for extra dependencies to build all tests])) -+AS_IF([test $enable_tests = yes], [ - tests_modules="gtk+-3.0 >= $REQ_GTK_VERSION" - PKG_CHECK_MODULES(TESTS, [$tests_modules]) -+]) - AC_SUBST(TESTS_LIBS) - AC_SUBST(TESTS_CFLAGS) -+AM_CONDITIONAL([MORE_TESTS], [test $enable_tests = yes]) - - GLIB_GENMARSHAL=`pkg-config --variable=glib_genmarshal glib-2.0` - AC_SUBST(GLIB_GENMARSHAL) -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 7acf9a3..2856a82 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -2,18 +2,15 @@ INCLUDES = \ - -I$(top_srcdir) \ - $(TESTS_CFLAGS) - --noinst_PROGRAMS = \ -+check_PROGRAMS = \ - test-replace \ -- test-replace-widget \ - test-server-info \ - test-default-action \ - test-multi-actions \ - test-action-icons \ -- test-image \ - test-basic \ - test-error \ - test-markup \ -- test-persistence \ - test-resident \ - test-rtl \ - test-size-changes \ -@@ -23,6 +20,22 @@ noinst_PROGRAMS = \ - test-xy-actions \ - test-xy-stress - -+#if MORE_TESTS -+check_PROGRAMS += \ -+ test-image \ -+ test-replace-widget \ -+ test-persistence -+ -+test_replace_widget_SOURCES = test-replace-widget.c -+test_replace_widget_LDADD = $(common_ldflags) -+ -+test_image_SOURCES = test-image.c -+test_image_LDADD = $(common_ldflags) -+ -+test_persistence_SOURCES = test-persistence.c -+test_persistence_LDADD = $(common_ldflags) -+#endif -+ - common_ldflags = \ - $(top_builddir)/libnotify/libnotify.la \ - $(TESTS_LIBS) -@@ -30,9 +43,6 @@ common_ldflags = \ - test_replace_SOURCES = test-replace.c - test_replace_LDADD = $(common_ldflags) - --test_replace_widget_SOURCES = test-replace-widget.c --test_replace_widget_LDADD = $(common_ldflags) -- - test_server_info_SOURCES = test-server-info.c - test_server_info_LDADD = $(common_ldflags) - -@@ -48,9 +58,6 @@ test_multi_actions_LDADD = $(common_ldflags) - test_action_icons_SOURCES = test-action-icons.c - test_action_icons_LDADD = $(common_ldflags) - --test_image_SOURCES = test-image.c --test_image_LDADD = $(common_ldflags) -- - test_basic_SOURCES = test-basic.c - test_basic_LDADD = $(common_ldflags) - -@@ -75,9 +82,6 @@ test_xy_stress_LDADD = $(common_ldflags) - test_rtl_SOURCES = test-rtl.c - test_rtl_LDADD = $(common_ldflags) - --test_persistence_SOURCES = test-persistence.c --test_persistence_LDADD = $(common_ldflags) -- - test_resident_SOURCES = test-resident.c - test_resident_LDADD = $(common_ldflags) - --- -1.7.4.rc2 - diff --git a/extra/libwebkit/introspection.patch b/extra/libwebkit/introspection.patch deleted file mode 100644 index f12e9e629..000000000 --- a/extra/libwebkit/introspection.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- WebKit/gtk/JSCore-1.0.gir 2010-09-29 14:54:07.000000000 +0200 -+++ WebKit/gtk/JSCore-1.0.gir 2010-09-29 15:57:06.000000000 +0200 -@@ -1,12 +1,14 @@ - <?xml version="1.0"?> --<repository version="1.0" -+<repository version="1.2" - xmlns="http://www.gtk.org/introspection/core/1.0" - xmlns:c="http://www.gtk.org/introspection/c/1.0"> - <namespace name="JSCore" version="1.0" shared-library="webkit-1.0"> -- <alias name="GlobalContextRef" -- target="none" -- c:type="JSGlobalContextRef"/> -- <alias name="ObjectRef" target="none" c:type="JSObjectRef"/> -+ <alias name="GlobalContextRef" target="none"> -+ <type name="JSGlobalContextRef" c:type="JSGlobalContextRef"/> -+ </alias> -+ <alias name="ObjectRef" target="none"> -+ <type name="JSObjectRef" c:type="JSObjectRef"/> -+ </alias> - <function name="EvaluateScript" c:identifier="JSEvaluateScript"> - <return-value transfer-ownership="none"> - <type name="none" c:type="void"/> diff --git a/extra/liferea/ChangeLog b/extra/liferea/ChangeLog deleted file mode 100644 index c0861a7ae..000000000 --- a/extra/liferea/ChangeLog +++ /dev/null @@ -1,143 +0,0 @@ -2011-03-07 Jan Steffens <jan.steffens@gmail.com> - - * liferea 1.6.5-2 - * Add patch for libnotify-0.7 - * Add hicolor-icon-theme dependency - -2010-09-29 Eric Belanger <eric@archlinux.org> - - * liferea 1.6.5-1 - * Upstream update - -2010-06-30 Eric Belanger <eric@archlinux.org> - - * liferea 1.6.4-1 - * Upstream update - * Changed libnotify depends to optdepends - * Tidied up package description - -2010-02-22 Eric Belanger <eric@archlinux.org> - - * liferea 1.6.3-1 - * Upstream update - -2010-01-23 Eric Belanger <eric@archlinux.org> - - * liferea 1.6.2-1 - * Upstream update - -2009-11-20 Eric Belanger <eric@archlinux.org> - - * liferea 1.6.1-1 - * Upstream update - -2009-07-26 Eric Belanger <eric@archlinux.org> - - * liferea 1.6.0-1 - * Upstream update - * Updated depends - * Added lua support - -2009-07-01 Jan de Groot <jgc@archlinux.org> - - * liferea 1.4.28-2 - * Rebuild for xulrunner 1.9.1 - * Remove networkmanager dependencies - -2009-04-13 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.28-1 - * Upstream update - -2009-03-15 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.27-1 - * Upstream update - -2009-02-21 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.25-1 - * Upstream update - -2009-02-01 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.24-1 - * Upstream update - -2008-12-29 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.23-1 - * Upstream update - -2008-11-14 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.22d-1 - * Upstream update - -2008-10-27 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.20-1 - * Forced downgrade (close FS#11899) - -2008-10-26 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.21b-1 - * Upstream update - -2008-10-01 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.20-1 - * Upstream update - -2008-09-06 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.19-1 - * Upstream update - -2008-08-03 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.18-2 - * Rebuilt against gnutls 2.4.1 - -2008-07-28 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.18-1 - * Upstream update - * Updated xulrunner 1.9 support patch - * Added intltool makedepends - * Removed force option - -2008-06-22 Jan de Groot <jgc@archlinux.org> - - * liferea 1.4.16b-2 - * Build with xulrunner 1.9 - * Add patch from gentoo to fix xulrunner 1.9 support - * Make versioned dependencies more strict - * Drop dependencies covered by xulrunner 1.9 - -2008-06-17 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.16b-1 - * Upstream update - * Added force option - -2008-06-13 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.16-1 - * Upstream update - -2008-04-17 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.15-1 - * Upstream update - -2008-03-12 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.14-1 - * Upstream update - -2008-03-06 Eric Belanger <eric@archlinux.org> - - * liferea 1.4.13-1 - * Upstream update - * Cleaned install scriptlet diff --git a/extra/mail-notification/evolution-gtkhtml.patch b/extra/mail-notification/evolution-gtkhtml.patch deleted file mode 100644 index fe9b0ddf8..000000000 --- a/extra/mail-notification/evolution-gtkhtml.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- mail-notification-5.4/jbsrc/lib/src/extras/jb-evolution-plugin.c.orig 2009-10-12 23:15:03.000000000 +0200 -+++ mail-notification-5.4/jbsrc/lib/src/extras/jb-evolution-plugin.c 2009-10-12 23:17:26.000000000 +0200 -@@ -41,7 +41,7 @@ - if (! minversion) - minversion = "2.12"; - -- packages = g_strdup_printf("evolution-plugin >= %s", minversion); -+ packages = g_strdup_printf("evolution-plugin >= %s libgtkhtml-3.14 gtkhtml-editor-3.14", minversion); - result = jb_check_packages("Evolution", "evolution-plugin", packages); - g_free(packages); - diff --git a/extra/mail-notification/evolution.patch b/extra/mail-notification/evolution.patch deleted file mode 100644 index 073818afe..000000000 --- a/extra/mail-notification/evolution.patch +++ /dev/null @@ -1,102 +0,0 @@ ---- build/src/mn-evolution-server.c.orig 2008-09-30 15:30:07.756216978 +0200 -+++ build/src/mn-evolution-server.c 2008-09-30 15:30:49.950220711 +0200 -@@ -27,6 +27,7 @@ - #include <stdio.h> - #include <libintl.h> - #include <gobject/gvaluecollector.h> -+#include <libedataserver/eds-version.h> - #include <camel/camel-folder.h> - #include <mail/em-folder-view.h> - #include <mail/em-format.h> -@@ -595,7 +596,12 @@ - - for (i = 0; i < summary->len; i++) - { -+#if EDS_CHECK_VERSION(2,23,5) -+ char *uid = summary->pdata[i]; -+ CamelMessageInfo *info = camel_folder_get_message_info(folder, uid); -+#else - CamelMessageInfo *info = summary->pdata[i]; -+#endif - - if ((camel_message_info_flags(info) & CAMEL_MESSAGE_SEEN) == 0) - g_ptr_array_add(*ret, self_camel_message_info_to_dbus_struct(info)); ---- build/src/mn-evolution-folder-tree-server.c.evolution 2010-02-01 10:00:12.128683776 -0500 -+++ build/src/mn-evolution-folder-tree-server.c 2010-02-01 10:02:32.809697243 -0500 -@@ -26,5 +26,8 @@ - #include <dbus/dbus.h> -+#include <libedataserver/eds-version.h> -+#if !EDS_CHECK_VERSION(2,29,0) - #include <mail/mail-component.h> -+#endif - #include <mail/em-folder-tree.h> - #include "mn-evolution-plugin.h" - #include "mn-evolution.h" -@@ -396,7 +399,11 @@ mn_evolution_folder_tree_server_construc - -+#if EDS_CHECK_VERSION(2,29,0) -+ selfp->tree = em_folder_tree_new(); -+#else - EMFolderTreeModel *model; - - model = mail_component_peek_tree_model(mail_component_peek()); - selfp->tree = em_folder_tree_new_with_model(model); -+#endif - - selfp->plug = gtk_plug_new((GdkNativeWindow) selfp->id); ---- build/src/mn-evolution-server.c.evolution 2010-02-01 10:06:36.484698060 -0500 -+++ build/src/mn-evolution-server.c 2010-02-01 10:09:01.946682081 -0500 -@@ -28,9 +28,14 @@ - #include <gobject/gvaluecollector.h> - #include <libedataserver/eds-version.h> - #include <camel/camel-folder.h> -+#if EDS_CHECK_VERSION(2,29,0) -+#include <shell/e-shell.h> -+#include <mail/e-mail-browser.h> -+#else - #include <mail/em-folder-view.h> - #include <mail/em-format.h> - #include <mail/em-message-browser.h> -+#endif - #include <mail/em-utils.h> - #include <mail/mail-session.h> - #include <mail/mail-tools.h> -@@ -568,6 +573,19 @@ mn_evolution_server_open_message (MNEvol - folder = self_lookup_folder(folder_uri, err); - if (folder) - { -+#if EDS_CHECK_VERSION(2,29,0) -+ EShell *shell; -+ EShellBackend *shell_backend; -+ GtkWidget *browser; -+ -+ shell = e_shell_get_default (); -+ shell_backend = e_shell_get_backend_by_name (shell, "mail"); -+ -+ browser = e_mail_browser_new (shell_backend); -+ e_mail_reader_set_folder (E_MAIL_READER (browser), folder, folder_uri); -+ e_mail_reader_set_message (E_MAIL_READER (browser), message_uid); -+ gtk_widget_show (browser); -+#else - GtkWidget *browser; - - /* modelled after Evolution's handleuri_got_folder() */ -@@ -578,6 +596,7 @@ mn_evolution_server_open_message (MNEvol - em_folder_view_set_folder((EMFolderView *) browser, folder, folder_uri); - em_folder_view_set_message((EMFolderView *) browser, message_uid, FALSE); - gtk_widget_show(((EMMessageBrowser *) browser)->window); -+#endif - - camel_object_unref(folder); - } ---- src/mn-evolution-plugin.c.evolution 2008-05-22 11:45:35.000000000 -0400 -+++ src/mn-evolution-plugin.c 2010-02-01 11:52:06.141664757 -0500 -@@ -204,7 +204,7 @@ connect_to_session_bus (void) - } - - int --e_plugin_lib_enable (EPluginLib *ep, int enable) -+e_plugin_lib_enable (EPlugin *ep, int enable) - { - static gboolean enabled = FALSE; - GError *err = NULL; diff --git a/extra/metacity/metacity-restartstyle.patch b/extra/metacity/metacity-restartstyle.patch deleted file mode 100644 index 54dd79e02..000000000 --- a/extra/metacity/metacity-restartstyle.patch +++ /dev/null @@ -1,139 +0,0 @@ -From a3de65d5d1861f755ced7cad291fbbd4f1b8ef51 Mon Sep 17 00:00:00 2001 -From: Owen W. Taylor <otaylor@fishsoup.net> -Date: Sat, 22 Aug 2009 15:00:57 -0400 -Subject: [PATCH] Should set RestartStyleHint to RestartIfRunning when replaced - -This reverts most of commit abbd057eb967e6ab462ffe305f41b2b04d417b25; - - - It's fine to call meta_session_shutdown() after the display - is closed, since it's talking over the ICE connection - - We should not call warn_about_lame_clients_and_finish_interact() - unless we are interacting with the window manager in a session - save. - -However, the part of abbd057 that fixed accessing freed memory was -fixing a real problem; this patches does the same thing in a simpler -way by fixing an obvious type in meta_display_close() where it was -NULL'ing out the local variable 'display' rather than the global -variable 'the_display' and adding keeping the check in meta_finalize() -that was added in abbd057. - -The order of calling meta_session_shutdown() and -calling meta_display_close() is reverted back to the old order to -make it clear that it's OK if the display way already closed previously. - -http://bugzilla.gnome.org/show_bug.cgi?id=588119 ---- - src/core/display-private.h | 2 +- - src/core/display.c | 16 ++++------------ - src/core/main.c | 5 ++--- - src/core/session.c | 8 -------- - 4 files changed, 7 insertions(+), 24 deletions(-) - -diff --git a/src/core/display-private.h b/src/core/display-private.h -index 19287f3..9c8ebc6 100644 ---- a/src/core/display-private.h -+++ b/src/core/display-private.h -@@ -329,7 +329,7 @@ MetaScreen* meta_display_screen_for_xwindow (MetaDisplay *display, - void meta_display_grab (MetaDisplay *display); - void meta_display_ungrab (MetaDisplay *display); - --void meta_display_unmanage_screen (MetaDisplay **display, -+void meta_display_unmanage_screen (MetaDisplay *display, - MetaScreen *screen, - guint32 timestamp); - -diff --git a/src/core/display.c b/src/core/display.c -index 55c374a..8e35a35 100644 ---- a/src/core/display.c -+++ b/src/core/display.c -@@ -926,7 +926,7 @@ meta_display_close (MetaDisplay *display, - meta_compositor_destroy (display->compositor); - - g_free (display); -- display = NULL; -+ the_display = NULL; - - meta_quit (META_EXIT_SUCCESS); - } -@@ -4762,13 +4762,10 @@ process_selection_clear (MetaDisplay *display, - meta_verbose ("Got selection clear for screen %d on display %s\n", - screen->number, display->name); - -- meta_display_unmanage_screen (&display, -+ meta_display_unmanage_screen (display, - screen, - event->xselectionclear.time); - -- if (!display) -- the_display = NULL; -- - /* display and screen may both be invalid memory... */ - - return; -@@ -4790,12 +4787,10 @@ process_selection_clear (MetaDisplay *display, - } - - void --meta_display_unmanage_screen (MetaDisplay **displayp, -+meta_display_unmanage_screen (MetaDisplay *display, - MetaScreen *screen, - guint32 timestamp) - { -- MetaDisplay *display = *displayp; -- - meta_verbose ("Unmanaging screen %d on display %s\n", - screen->number, display->name); - -@@ -4805,10 +4800,7 @@ meta_display_unmanage_screen (MetaDisplay **displayp, - display->screens = g_slist_remove (display->screens, screen); - - if (display->screens == NULL) -- { -- meta_display_close (display, timestamp); -- *displayp = NULL; -- } -+ meta_display_close (display, timestamp); - } - - void -diff --git a/src/core/main.c b/src/core/main.c -index a36a396..44d317e 100644 ---- a/src/core/main.c -+++ b/src/core/main.c -@@ -361,12 +361,11 @@ static void - meta_finalize (void) - { - MetaDisplay *display = meta_get_display(); -- -- meta_session_shutdown (); -- - if (display) - meta_display_close (display, - CurrentTime); /* I doubt correct timestamps matter here */ -+ -+ meta_session_shutdown (); - } - - static void -diff --git a/src/core/session.c b/src/core/session.c -index 7e3b389..0d69350 100644 ---- a/src/core/session.c -+++ b/src/core/session.c -@@ -376,14 +376,6 @@ meta_session_shutdown (void) - SmProp *props[1]; - char hint = SmRestartIfRunning; - -- if (!meta_get_display ()) -- { -- meta_verbose ("Cannot close session because there is no display"); -- return; -- } -- -- warn_about_lame_clients_and_finish_interact (FALSE); -- - if (session_connection == NULL) - return; - --- -1.6.4
\ No newline at end of file diff --git a/extra/nautilus/nautilus-condrestart.patch b/extra/nautilus/nautilus-condrestart.patch deleted file mode 100644 index 9634f35eb..000000000 --- a/extra/nautilus/nautilus-condrestart.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -up nautilus-2.25.93/data/nautilus.desktop.in.condrestart nautilus-2.25.93/nautilus.desktop.in ---- nautilus-2.25.93/data/nautilus.desktop.in.condrestart 2009-03-12 10:49:41.449753624 -0400 -+++ nautilus-2.25.93/data/nautilus.desktop.in 2009-03-12 10:49:51.814754208 -0400 -@@ -17,3 +17,4 @@ X-GNOME-Autostart-Phase=Desktop - X-GNOME-Autostart-Notify=true - X-GNOME-AutoRestart=true - X-GNOME-Provides=filemanager -+AutostartCondition=GNOME /apps/nautilus/preferences/show_desktop -diff -up nautilus-2.25.93/data/nautilus.desktop.in.in.condrestart nautilus-2.25.93/nautilus.desktop.in.in ---- nautilus-2.25.93/data/nautilus.desktop.in.in.condrestart 2009-03-12 10:47:41.681753834 -0400 -+++ nautilus-2.25.93/data/nautilus.desktop.in.in 2009-03-12 10:49:29.663754303 -0400 -@@ -17,3 +17,4 @@ X-GNOME-Autostart-Phase=Desktop - X-GNOME-Autostart-Notify=true - X-GNOME-AutoRestart=true - X-GNOME-Provides=filemanager -+AutostartCondition=GNOME /apps/nautilus/preferences/show_desktop diff --git a/extra/network-manager-applet/nm-applet-0.8.2-libnotify-0.7.patch b/extra/network-manager-applet/nm-applet-0.8.2-libnotify-0.7.patch deleted file mode 100644 index 54aa473af..000000000 --- a/extra/network-manager-applet/nm-applet-0.8.2-libnotify-0.7.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- src/applet.c -+++ src/applet.c -@@ -58,6 +58,10 @@ - #include <gnome-keyring.h> - #include <libnotify/notify.h> - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - #include "applet.h" - #include "applet-device-wired.h" - #include "applet-device-wifi.h" -@@ -626,12 +630,20 @@ - escaped = utils_escape_notify_message (message); - notify = notify_notification_new (summary, - escaped, -- icon ? icon : GTK_STOCK_NETWORK, -- NULL); -+ icon ? icon : GTK_STOCK_NETWORK -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - g_free (escaped); - applet->notification = notify; - -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ /* notify_notification_attach_to_status_icon was removed */ -+#else - notify_notification_attach_to_status_icon (notify, applet->status_icon); -+#endif - notify_notification_set_urgency (notify, urgency); - notify_notification_set_timeout (notify, NOTIFY_EXPIRES_DEFAULT); - diff --git a/extra/notification-daemon/notification-daemon-0.4.0-libnotify-0.7.patch b/extra/notification-daemon/notification-daemon-0.4.0-libnotify-0.7.patch deleted file mode 100644 index 8f5e4c909..000000000 --- a/extra/notification-daemon/notification-daemon-0.4.0-libnotify-0.7.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -Nur notification-daemon-0.4.0.orig/src/capplet/notification-properties.c notification-daemon-0.4.0/src/capplet/notification-properties.c ---- notification-daemon-0.4.0.orig/src/capplet/notification-properties.c 2008-11-20 02:46:16.000000000 -0800 -+++ notification-daemon-0.4.0/src/capplet/notification-properties.c 2011-03-07 03:23:07.293334003 -0800 -@@ -28,6 +28,10 @@ - #include <string.h> - #include <libnotify/notify.h> - -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif -+ - #include "../daemon/stack.h" - - #define GCONF_KEY_DAEMON "/apps/notification-daemon" -@@ -434,8 +438,12 @@ - - dialog->preview = notify_notification_new(_("Notification Test"), - _("Just a test"), -- "gnome-util", -- NULL); -+ "gnome-util" -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , NULL); -+#endif - - if (!notify_notification_show(dialog->preview, &error)) - { diff --git a/extra/ntfs-3g/25-ntfs-config-write-policy.fdi b/extra/ntfs-3g/25-ntfs-config-write-policy.fdi deleted file mode 100644 index 54195d8b3..000000000 --- a/extra/ntfs-3g/25-ntfs-config-write-policy.fdi +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<deviceinfo version="0.2"> - <device> - <match key="volume.fstype" string="ntfs"> - <append key="volume.fstype.alternative" type="copy_property">volume.fstype</append> - <merge key="volume.mount.ntfs.valid_options" type="copy_property">volume.mount.valid_options</merge> - <merge key="volume.unmount.ntfs.valid_options" type="copy_property">volume.unmount.valid_options</merge> - <merge key="volume.fstype" type="string">ntfs-3g</merge> - <merge key="volume.mount.valid_options" type="strlist">ro</merge> - <append key="volume.mount.valid_options" type="strlist">atime</append> - <append key="volume.mount.valid_options" type="strlist">noatime</append> - <append key="volume.mount.valid_options" type="strlist">relatime</append> - <append key="volume.mount.valid_options" type="strlist">fake_rw</append> - <append key="volume.mount.valid_options" type="strlist">no_def_opts</append> - <append key="volume.mount.valid_options" type="strlist">default_permissions</append> - <append key="volume.mount.valid_options" type="strlist">umask=</append> - <append key="volume.mount.valid_options" type="strlist">fmask=</append> - <append key="volume.mount.valid_options" type="strlist">dmask=</append> - <append key="volume.mount.valid_options" type="strlist">uid=</append> - <append key="volume.mount.valid_options" type="strlist">gid=</append> - <append key="volume.mount.valid_options" type="strlist">show_sys_files</append> - <append key="volume.mount.valid_options" type="strlist">silent</append> - <append key="volume.mount.valid_options" type="strlist">force</append> - <append key="volume.mount.valid_options" type="strlist">remove_hiberfile</append> - <append key="volume.mount.valid_options" type="strlist">locale=</append> - <append key="volume.mount.valid_options" type="strlist">streams_interface=</append> - <append key="volume.mount.valid_options" type="strlist">debug</append> - <append key="volume.mount.valid_options" type="strlist">no_detatch</append> - <append key="volume.mount.valid_options" type="strlist">sync</append> - <append key="volume.mount.valid_options" type="strlist">dirsync</append> - <append key="volume.mount.valid_options" type="strlist">nodiratime</append> - <append key="volume.mount.valid_options" type="strlist">noexec</append> - <append key="volume.mount.valid_options" type="strlist">quiet</append> - <append key="volume.mount.valid_options" type="strlist">remount</append> - <append key="volume.mount.valid_options" type="strlist">exec</append> - <append key="volume.mount.valid_options" type="strlist">recover</append> - <append key="volume.mount.valid_options" type="strlist">norecover</append> - <merge key="volume.unmount.valid_options" type="strlist">lazy</merge> - <merge key="volume.policy.mount_filesystem" type="string">ntfs-3g</merge> - </match> - </device> -</deviceinfo> diff --git a/extra/ntfs-3g/PKGBUILD b/extra/ntfs-3g/PKGBUILD deleted file mode 100644 index f651864bd..000000000 --- a/extra/ntfs-3g/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 108992 2011-02-05 10:41:54Z ronald $ -# Maintainer: Ronald van Haren <ronald.archlinux.org> -# Contributor: Thomas Bächler <thomas.archlinux.org> - -pkgname=ntfs-3g -pkgver=2011.1.15 -pkgrel=1 -pkgdesc="Stable read and write NTFS driver" -url="http://www.tuxera.com" -arch=('i686' 'x86_64') -license=('GPL2') -depends=('glibc' 'fuse') -makedepends=('pkgconfig') -options=('!libtool') -source=(http://www.tuxera.com/opensource/${pkgname}-${pkgver}.tgz - 25-ntfs-config-write-policy.fdi) -sha1sums=('d7cf0c5e8730568f5fa8802869d6fe8cdd4a0213' - '200029f2999a2c284fd30ae25734abf6459c3501') -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ac_cv_path_LDCONFIG=/bin/true ./configure --prefix=/usr \ - --with-fuse=external --disable-static - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - ln -s /bin/ntfs-3g "${pkgdir}/sbin/mount.ntfs" - install -m755 -d "${pkgdir}/usr/share/hal/fdi/policy/10osvendor" - install -m644 "${srcdir}/25-ntfs-config-write-policy.fdi" "${pkgdir}/usr/share/hal/fdi/policy/10osvendor/" -} diff --git a/extra/ntfsprogs/PKGBUILD b/extra/ntfsprogs/PKGBUILD deleted file mode 100644 index 56bf76566..000000000 --- a/extra/ntfsprogs/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 48342 2009-08-01 14:46:45Z jgc $ -# Maintainer: Ronald van Haren <ronald.archlinux.org> - -pkgname=ntfsprogs -pkgver=2.0.0 -pkgrel=4 -depends=('glibc' 'fuse' 'util-linux-ng>=2.16') -makedepends=('pkgconfig') -pkgdesc="NTFS filesystem utilities" -arch=(i686 x86_64) -license=('GPL') -source=(http://downloads.sourceforge.net/sourceforge/linux-ntfs/${pkgname}-${pkgver}.tar.gz) -url="http://www.linux-ntfs.org/" -options=(!libtool) -md5sums=('2c402b647bb7aeb1d3f8ce1cc354fd68') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --disable-gnome-vfs \ - --mandir=/usr/share/man || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 -} - diff --git a/extra/octave/octave-3.2.0_as_needed.patch b/extra/octave/octave-3.2.0_as_needed.patch deleted file mode 100644 index bce3e01a3..000000000 --- a/extra/octave/octave-3.2.0_as_needed.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Naur octave-3.2.0/liboctave/Makefile.in octave-3.2.0.new/liboctave/Makefile.in ---- octave-3.2.0/liboctave/Makefile.in 2009-05-25 02:04:59.000000000 -0400 -+++ octave-3.2.0.new/liboctave/Makefile.in 2009-07-10 10:32:09.000000000 -0400 -@@ -35,6 +35,7 @@ - DLL_CXXDEFS = @OCTAVE_DLL_DEFS@ - - LINK_DEPS = \ -+ -lpthread \ - -L../libcruft -L. $(RLD_FLAG) \ - $(LIBCRUFT) $(CHOLMOD_LIBS) $(UMFPACK_LIBS) $(AMD_LIBS) \ - $(CAMD_LIBS) $(COLAMD_LIBS) $(CCOLAMD_LIBS) $(CXSPARSE_LIBS) \ diff --git a/extra/octave/octave-3.2.0_parallel_make.patch b/extra/octave/octave-3.2.0_parallel_make.patch deleted file mode 100644 index bcc2f7d29..000000000 --- a/extra/octave/octave-3.2.0_parallel_make.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur octave-3.2.0/doc/Makefile.in octave-3.2.0.new/doc/Makefile.in ---- octave-3.2.0/doc/Makefile.in 2009-06-03 07:55:40.000000000 -0400 -+++ octave-3.2.0.new/doc/Makefile.in 2009-07-07 18:20:14.000000000 -0400 -@@ -30,6 +30,8 @@ - all: conf.texi $(SUBDIRS) - .PHONY: all - -+$(SUBDIRS): conf.texi -+ - conf.texi: conf.texi.in $(TOPDIR)/Makeconf - @$(do-subst-texinfo-vals) - diff --git a/extra/rhino/PKGBUILD b/extra/rhino/PKGBUILD deleted file mode 100644 index 27d7c46fc..000000000 --- a/extra/rhino/PKGBUILD +++ /dev/null @@ -1,18 +0,0 @@ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=rhino -pkgver=1.7R1 -pkgrel=1 -pkgdesc="Open-source implementation of JavaScript written entirely in Java" -arch=('i686' 'x86_64') -url="http://www.mozilla.org/rhino/" -license=('MPL' 'GPL2') -source=(ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino1_7R1.zip) -md5sums=('613eed8201d37be201805e5048ebb0c3') - -build() { - cd ${srcdir}/rhino1_7R1 - install -m755 -d ${pkgdir}/usr/share/java - install -m644 js.jar ${pkgdir}/usr/share/java/ || return 1 -} diff --git a/extra/seahorse/seahorse-2.32.0-libnotify-0.7.patch b/extra/seahorse/seahorse-2.32.0-libnotify-0.7.patch deleted file mode 100644 index 1a6b478ac..000000000 --- a/extra/seahorse/seahorse-2.32.0-libnotify-0.7.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- libseahorse/seahorse-notification.c -+++ libseahorse/seahorse-notification.c -@@ -37,6 +37,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - /* ----------------------------------------------------------------------------- -@@ -231,7 +234,12 @@ - heading = format_key_text (snotif->heading); - message = format_key_text (snotif->message); - -- notif = notify_notification_new (heading, message, snotif->icon, attachto); -+ notif = notify_notification_new (heading, message, snotif->icon -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ ); -+#else -+ , attachto); -+#endif - - g_free (heading); - g_free (message); diff --git a/extra/slim/slim b/extra/slim/slim deleted file mode 100755 index b0be7ffc5..000000000 --- a/extra/slim/slim +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/bin/slim` -case "$1" in - start) - stat_busy "Starting Simple Login Manager" - [ -z "$PID" ] && /usr/bin/slim -d &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon slim - stat_done - fi - ;; - stop) - stat_busy "Stopping Simple Login Manager" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon slim - stat_done - fi - ;; - restart) - $0 stop - sleep 3 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/extra/slim/slim.install b/extra/slim/slim.install deleted file mode 100644 index 65aa77d72..000000000 --- a/extra/slim/slim.install +++ /dev/null @@ -1,7 +0,0 @@ -post_install() { - cat <<EOF - -==> Add slim to the DAEMONS array in /etc/rc.conf or update /etc/inittab. - -EOF -} diff --git a/extra/slim/slim.logrotate b/extra/slim/slim.logrotate deleted file mode 100644 index 26ec3b0f4..000000000 --- a/extra/slim/slim.logrotate +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/slim.log { - compress - rotate 1 - size 1024k - notifempty - missingok - copytruncate - noolddir -} diff --git a/extra/slim/slim.pam b/extra/slim/slim.pam deleted file mode 100644 index 78a981f74..000000000 --- a/extra/slim/slim.pam +++ /dev/null @@ -1,10 +0,0 @@ -#%PAM-1.0 -auth requisite pam_nologin.so -auth required pam_env.so -auth required pam_unix.so -account required pam_unix.so -password required pam_unix.so -session required pam_limits.so -session required pam_unix.so -session optional pam_loginuid.so -session optional pam_ck_connector.so diff --git a/extra/xarchiver/ChangeLog b/extra/xarchiver/ChangeLog deleted file mode 100644 index c3abc0d0e..000000000 --- a/extra/xarchiver/ChangeLog +++ /dev/null @@ -1,9 +0,0 @@ -2008-11-27 Alexander Fehr <pizzapunk gmail com> - - * xarchiver-0.5.2-1: - New upstream release. - New maintainer. - Changed license to GPL. - Added dependencies on desktop-file-utils and hicolor-icon-theme. - Replaced install message with optdepends. - Added ChangeLog. diff --git a/extra/zenity/zenity-2.32.1-libnotify-0.7.patch b/extra/zenity/zenity-2.32.1-libnotify-0.7.patch deleted file mode 100644 index 4d5bf7447..000000000 --- a/extra/zenity/zenity-2.32.1-libnotify-0.7.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- src/notification.c -+++ src/notification.c -@@ -30,6 +30,9 @@ - - #ifdef HAVE_LIBNOTIFY - #include <libnotify/notify.h> -+#ifndef NOTIFY_CHECK_VERSION -+#define NOTIFY_CHECK_VERSION(x,y,z) 0 -+#endif - #endif - - #include "zenity.h" -@@ -184,10 +187,14 @@ - icon = freeme = g_filename_to_uri (icon_file, NULL, NULL); - } - -+#if NOTIFY_CHECK_VERSION (0, 7, 0) -+ /* notify_notification_new_with_status_icon was removed */ -+#else - notif = notify_notification_new_with_status_icon ( - message[0] /* title */, - message[1] /* summary */, - icon, status_icon); -+#endif - - g_strfreev (message); - g_free (freeme); diff --git a/extra/zip/ChangeLog b/extra/zip/ChangeLog deleted file mode 100644 index bc7e1fb02..000000000 --- a/extra/zip/ChangeLog +++ /dev/null @@ -1,13 +0,0 @@ -2008-08-10 Eric Belanger <eric@archlinux.org> - - * zip 3.0-1 - * Removed zcrypt reference as it's now included in zip 3.0 - * Added bzip2 depends - * Added license - * FHS man pages - * Disabled SMP build - -2008-07-27 Douglas Soares de Andrade <douglas@archlinux.org> - - * Updating for i686: 3.0 - |