summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Granseuer <jensgr@gmx.net>2008-10-29 18:33:24 +0000
committerJens Granseuer <jensg@src.gnome.org>2008-10-29 18:33:24 +0000
commite66924b7139d0dff25938ab6d3a0a6f215b57473 (patch)
treeec496fc6fc2344eb838d57f212c7ecbf39131a12
parente7143c9b5cbdd178d95921150d1cc0db2ffd437c (diff)
downloadgnome-settings-daemon-e66924b7139d0dff25938ab6d3a0a6f215b57473.tar.gz
Remove ESD-based sound plugin (bug #557806). This means that g-s-d will no
2008-10-29 Jens Granseuer <jensgr@gmx.net> Remove ESD-based sound plugin (bug #557806). This means that g-s-d will no longer start a sound server (esd or PulseAudio) at session startup. This should be handled using the autostart mechanism of gnome-session instead. * configure.ac: * plugins/Makefile.am: * plugins/sound/Makefile.am: * plugins/sound/gsd-sound-manager.c: * plugins/sound/gsd-sound-manager.h: * plugins/sound/gsd-sound-plugin.c: * plugins/sound/gsd-sound-plugin.h: * plugins/sound/sound.gnome-settings-plugin.in: remove sound plugin svn path=/trunk/; revision=568
-rw-r--r--ChangeLog17
-rw-r--r--configure.ac51
-rw-r--r--plugins/Makefile.am1
-rw-r--r--plugins/sound/Makefile.am47
-rw-r--r--plugins/sound/gsd-sound-manager.c521
-rw-r--r--plugins/sound/gsd-sound-manager.h57
-rw-r--r--plugins/sound/gsd-sound-plugin.c104
-rw-r--r--plugins/sound/gsd-sound-plugin.h59
-rw-r--r--plugins/sound/sound.gnome-settings-plugin.in8
9 files changed, 17 insertions, 848 deletions
diff --git a/ChangeLog b/ChangeLog
index eabe1b5f..06523035 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2008-10-29 Jens Granseuer <jensgr@gmx.net>
+
+ Remove ESD-based sound plugin (bug #557806). This means that g-s-d
+ will no longer start a sound server (esd or PulseAudio) at session
+ startup. This should be handled using the autostart mechanism of
+ gnome-session instead.
+
+ * configure.ac:
+ * plugins/Makefile.am:
+ * plugins/sound/Makefile.am:
+ * plugins/sound/gsd-sound-manager.c:
+ * plugins/sound/gsd-sound-manager.h:
+ * plugins/sound/gsd-sound-plugin.c:
+ * plugins/sound/gsd-sound-plugin.h:
+ * plugins/sound/sound.gnome-settings-plugin.in:
+ remove sound plugin
+
2008-10-29 Rodrigo Moya <rodrigo@gnome-db.org>
* plugins/screensaver/gsd-screensaver-manager.c
diff --git a/configure.ac b/configure.ac
index d8d2af7e..70d569f3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -216,37 +216,6 @@ AC_SUBST(LIBGNOMEKBD_CFLAGS)
AC_SUBST(LIBGNOMEKBD_LIBS)
dnl ==============================================
-dnl Esd section
-dnl ==============================================
-
-AC_ARG_ENABLE(esd,
- AC_HELP_STRING([--disable-esd],
- [turn off ESD audio support]),
- [case "${enableval}" in
- yes) WANT_ESD=yes ;;
- no) WANT_ESD=no ;;
- *) AC_MSG_ERROR(bad value ${enableval} for --disable-esd) ;;
- esac],
- [WANT_ESD=yes]) dnl Default value
-
-if test x$WANT_ESD = xyes ; then
- PKG_CHECK_MODULES(ESD, esound >= 0.2.28,
- AC_DEFINE(HAVE_ESD, 1, [Define if ESD sound server should be used]),
- AC_MSG_RESULT([disabled]))
-
- GSD_ESD_LOCATION=`pkg-config esound --variable=esd_serverdir`
- if test "x$GSD_ESD_LOCATION" != "x"; then
- # Add slash so that if the ESD pkgconfig file does not
- # specify esd_serverdir, g-s-d will look in the PATH
- GSD_ESD_LOCATION="$GSD_ESD_LOCATION/"
- fi
-fi
-
-AC_SUBST(ESD_CFLAGS)
-AC_SUBST(ESD_LIBS)
-AC_SUBST(ESD_LOCATION)
-
-dnl ==============================================
dnl GStreamer section
dnl ==============================================
GST_MAJORMINOR=auto
@@ -337,23 +306,6 @@ fi
AM_CONDITIONAL(HAVE_ALSA, test x"$have_alsa" = "xyes")
# ---------------------------------------------------------------------------
-# Enable Legacy Sound Preference
-# ---------------------------------------------------------------------------
-PKG_CHECK_MODULES(PULSEAUDIO, libpulse, have_pulseaudio=yes, have_pulseaudio=no)
-if test x$have_pulseaudio = xyes; then
- default_enable_legacy_sound_pref=no
-else
- default_enable_legacy_sound_pref=yes
-fi
-AC_ARG_ENABLE(legacy-sound-pref,
- [AC_HELP_STRING([--enable-legacy-sound-pref],
- [check for preference to start ESD])],
- ,enable_legacy_sound_pref=$default_enable_legacy_sound_pref)
-if test "x$enable_legacy_sound_pref" = "xyes"; then
- AC_DEFINE(ENABLE_LEGACY_SOUND_PREF,1,[enable preference for ESD startup])
-fi
-
-# ---------------------------------------------------------------------------
# Enable Profiling
# ---------------------------------------------------------------------------
AC_ARG_ENABLE(profiling,
@@ -453,8 +405,6 @@ plugins/media-keys/Makefile
plugins/media-keys/actions/Makefile
plugins/mouse/Makefile
plugins/screensaver/Makefile
-plugins/sound/Makefile
-plugins/sound/libsounds/Makefile
plugins/typing-break/Makefile
plugins/xrandr/Makefile
plugins/xrdb/Makefile
@@ -495,7 +445,6 @@ echo "
OSS support: ${have_oss}
ALSA support: ${have_alsa}
GStreamer support: ${have_gstreamer}
- ESD support: ${WANT_ESD}
Profiling support: ${enable_profiling}
"
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index 2d33061d..6796dcdb 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -13,7 +13,6 @@ SUBDIRS = \
media-keys \
mouse \
screensaver \
- sound \
typing-break \
xrandr \
xrdb \
diff --git a/plugins/sound/Makefile.am b/plugins/sound/Makefile.am
deleted file mode 100644
index 1e6a1d40..00000000
--- a/plugins/sound/Makefile.am
+++ /dev/null
@@ -1,47 +0,0 @@
-SUBDIRS = libsounds
-
-plugin_LTLIBRARIES = \
- libsound.la
-
-libsound_la_SOURCES = \
- gsd-sound-plugin.h \
- gsd-sound-plugin.c \
- gsd-sound-manager.h \
- gsd-sound-manager.c
-
-libsound_la_CPPFLAGS = \
- -I$(top_srcdir)/gnome-settings-daemon \
- -I$(top_srcdir)/plugins/sounds/libsounds \
- -DGNOME_SETTINGS_LOCALEDIR=\""$(datadir)/locale"\" \
- $(AM_CPPFLAGS)
-
-libsound_la_CFLAGS = \
- -DESD_LOCATION=\"$(ESD_LOCATION)\" \
- $(SETTINGS_PLUGIN_CFLAGS) \
- $(GNOME_CFLAGS) \
- $(ESD_CFLAGS) \
- $(AM_CFLAGS)
-
-libsound_la_LDFLAGS = \
- $(GSD_PLUGIN_LDFLAGS)
-
-libsound_la_LIBADD = \
- $(top_builddir)/plugins/sound/libsounds/libsounds.la \
- $(SETTINGS_PLUGIN_LIBS) \
- $(ESD_LIBS)
-
-plugin_in_files = \
- sound.gnome-settings-plugin.in
-
-plugin_DATA = $(plugin_in_files:.gnome-settings-plugin.in=.gnome-settings-plugin)
-
-EXTRA_DIST = \
- $(plugin_in_files)
-
-CLEANFILES = \
- $(plugin_DATA)
-
-DISTCLEANFILES = \
- $(plugin_DATA)
-
-@GSD_INTLTOOL_PLUGIN_RULE@
diff --git a/plugins/sound/gsd-sound-manager.c b/plugins/sound/gsd-sound-manager.c
deleted file mode 100644
index ddaf90f2..00000000
--- a/plugins/sound/gsd-sound-manager.c
+++ /dev/null
@@ -1,521 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
- *
- * Copyright © 2001 Ximian, Inc.
- * Copyright (C) 2007 William Jon McCann <mccann@jhu.edu>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- */
-
-#include "config.h"
-
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <unistd.h>
-#include <string.h>
-#include <errno.h>
-
-#include <locale.h>
-
-#include <glib.h>
-#include <glib/gi18n.h>
-#include <gdk/gdk.h>
-#include <gdk/gdkx.h>
-#include <gtk/gtk.h>
-#include <gconf/gconf-client.h>
-
-#ifdef HAVE_ESD
-# include <esd.h>
-#endif
-
-#include <libgnome/gnome-sound.h>
-#include <libgnome/gnome-exec.h>
-#include <libgnome/gnome-program.h>
-#include "libsounds/sound-properties.h"
-
-#include "gsd-sound-manager.h"
-#include "gnome-settings-profile.h"
-
-#define GSD_SOUND_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_SOUND_MANAGER, GsdSoundManagerPrivate))
-
-struct GsdSoundManagerPrivate
-{
- /* esd/PulseAudio pid */
- GPid pid;
- guint child_watch_id;
-
- gboolean inited;
- guint notify;
-};
-
-#define GCONF_SOUND_DIR "/desktop/gnome/sound"
-
-static void gsd_sound_manager_class_init (GsdSoundManagerClass *klass);
-static void gsd_sound_manager_init (GsdSoundManager *sound_manager);
-static void gsd_sound_manager_finalize (GObject *object);
-
-G_DEFINE_TYPE (GsdSoundManager, gsd_sound_manager, G_TYPE_OBJECT)
-
-static gpointer manager_object = NULL;
-
-static void
-reset_esd_pid (GPid pid,
- int status,
- GsdSoundManager *manager)
-{
- g_debug ("GsdSoundManager: **** child (pid:%d) done (%s:%d)",
- (int) pid,
- WIFEXITED (status) ? "status"
- : WIFSIGNALED (status) ? "signal"
- : "unknown",
- WIFEXITED (status) ? WEXITSTATUS (status)
- : WIFSIGNALED (status) ? WTERMSIG (status)
- : -1);
-
- if (pid == manager->priv->pid) {
- manager->priv->pid = 0;
- }
-
- g_spawn_close_pid (manager->priv->pid);
- manager->priv->child_watch_id = 0;
-}
-
-static gboolean
-start_gnome_sound (GsdSoundManager *manager)
-{
- char *argv[] = { ESD_LOCATION "esd", "-nobeeps", NULL};
- GError *error;
- gboolean res;
- time_t starttime;
- gboolean ret;
-
- ret = FALSE;
-
- gnome_settings_profile_start (NULL);
-
- error = NULL;
- res = g_spawn_async (NULL,
- argv,
- NULL,
- G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD,
- NULL,
- NULL,
- &manager->priv->pid,
- &error);
- if (! res) {
- g_printerr ("Could not start esd: %s\n", error->message);
- g_error_free (error);
- goto out;
- }
-
- manager->priv->child_watch_id = g_child_watch_add (manager->priv->pid,
- (GChildWatchFunc)reset_esd_pid,
- manager);
-
- starttime = time (NULL);
- gnome_sound_init (NULL);
-
- while (gnome_sound_connection_get () < 0
- && ((time (NULL) - starttime) < 4)) {
- g_usleep (200);
- gnome_sound_init (NULL);
- }
-
- ret = gnome_sound_connection_get () >= 0;
-
- out:
- gnome_settings_profile_end (NULL);
-
- return ret;
-}
-
-static int
-wait_on_child (int pid)
-{
- int status;
-
- wait_again:
- if (waitpid (pid, &status, 0) < 0) {
- if (errno == EINTR) {
- goto wait_again;
- } else if (errno == ECHILD) {
- ; /* do nothing, child already reaped */
- } else {
- g_debug ("GsdSoundManager: waitpid () should not fail");
- }
- }
-
- return status;
-}
-
-static void
-stop_child (GsdSoundManager *manager)
-{
- int exit_status;
-
- if (manager->priv->pid <= 0) {
- return;
- }
-
- if (manager->priv->child_watch_id > 0) {
- g_source_remove (manager->priv->child_watch_id);
- manager->priv->child_watch_id = 0;
- }
-
- if (kill (manager->priv->pid, SIGTERM) == -1) {
- g_printerr ("Failed to kill esd (pid %d)\n", manager->priv->pid);
- return;
- }
-
- exit_status = wait_on_child (manager->priv->pid);
-
- g_spawn_close_pid (manager->priv->pid);
- manager->priv->pid = -1;
-}
-
-#ifdef HAVE_ESD
-static gboolean set_esd_standby = TRUE;
-#endif
-
-static void
-stop_gnome_sound (GsdSoundManager *manager)
-{
-#ifdef HAVE_ESD
- /* Can't think of a way to do this reliably, so we fake it for now */
- esd_standby (gnome_sound_connection_get ());
- set_esd_standby = TRUE;
-#else
- gnome_sound_shutdown ();
-
- stop_child (manager);
-#endif
-}
-
-struct reload_foreach_closure {
- gboolean enable_system_sounds;
-};
-
-/* reload_foreach_cb
- *
- * For a given SoundEvent, reload the sound file associate with the event.
- */
-static void
-reload_foreach_cb (SoundEvent *event, gpointer data)
-{
- struct reload_foreach_closure *closure;
- char *key, *file;
- int sid;
- gboolean do_load;
-
- closure = data;
-
- gnome_settings_profile_start (NULL);
-
- key = sound_event_compose_key (event);
-
-#ifdef HAVE_ESD
- /* We need to free up the old sample, because
- * esd allows multiple samples with the same name,
- * putting memory to waste. */
- sid = esd_sample_getid (gnome_sound_connection_get (), key);
- if (sid >= 0) {
- esd_sample_free (gnome_sound_connection_get (), sid);
- }
-#endif
- /* We only disable sounds for system events. Other events, like sounds
- * in games, should be preserved. The games should have their own
- * configuration for sound anyway.
- */
- if ((strcmp (event->category, "gnome-2") == 0
- || strcmp (event->category, "gtk-events-2") == 0)) {
- do_load = closure->enable_system_sounds;
- } else {
- do_load = TRUE;
- }
-
- if (!do_load) {
- goto out;
- }
-
- if (!event->file || !strcmp (event->file, "")) {
- goto out;
- }
-
- if (event->file[0] == '/') {
- file = g_strdup (event->file);
- } else {
- file = gnome_program_locate_file (NULL,
- GNOME_FILE_DOMAIN_SOUND,
- event->file, TRUE, NULL);
- }
-
- if (!file) {
- goto out;
- }
-
- sid = gnome_sound_sample_load (key, file);
-
- if (sid < 0) {
- g_warning (_("Couldn't load sound file %s as sample %s"),
- file, key);
- }
-
- g_free (file);
-
- out:
- gnome_settings_profile_end (NULL);
-
- g_free (key);
-}
-
-static void
-apply_settings (GsdSoundManager *manager)
-{
- GConfClient *client;
- gboolean enable_sound;
- gboolean event_sounds;
- struct reload_foreach_closure closure;
-
- gnome_settings_profile_start (NULL);
-
- client = gconf_client_get_default ();
-
- /* The "preference" here was just around because ESD introduced tradeoffs and was generally
- poor software. Pulseaudio is better and notably releases the sound device when not in
- use, so should have no impact for legacy applications. The reason we don't actually want
- to even read from the preference is because someone may have set it to false intending
- to disable ESD, but they will then disable Pulseaudio later.
- https://bugzilla.redhat.com/show_bug.cgi?id=430624
- */
-#ifdef ENABLE_LEGACY_SOUND_PREF
- enable_sound = gconf_client_get_bool (client, "/desktop/gnome/sound/enable_esd", NULL);
-#else
- enable_sound = TRUE;
-#endif
- event_sounds = gconf_client_get_bool (client, "/desktop/gnome/sound/event_sounds", NULL);
-
- closure.enable_system_sounds = event_sounds;
-
- if (enable_sound) {
- if (gnome_sound_connection_get () < 0) {
- if (!start_gnome_sound (manager)) {
- goto out;
- }
- }
-#ifdef HAVE_ESD
- else if (set_esd_standby) {
- esd_resume (gnome_sound_connection_get ());
- set_esd_standby = FALSE;
- }
-#endif
- } else {
-#ifdef HAVE_ESD
- if (! set_esd_standby)
-#endif
- stop_gnome_sound (manager);
- }
-
- if (enable_sound && !manager->priv->inited) {
- SoundProperties *props;
-
- manager->priv->inited = TRUE;
- props = sound_properties_new ();
- sound_properties_add_defaults (props, NULL);
- sound_properties_foreach (props, reload_foreach_cb, &closure);
- gtk_object_destroy (GTK_OBJECT (props));
- }
- out:
- gnome_settings_profile_end (NULL);
-
-}
-
-static guint
-register_config_callback (GsdSoundManager *manager,
- const char *path,
- GConfClientNotifyFunc func)
-{
- GConfClient *client;
- guint notify;
-
- client = gconf_client_get_default ();
-
- gconf_client_add_dir (client, path, GCONF_CLIENT_PRELOAD_NONE, NULL);
- notify = gconf_client_notify_add (client, path, func, manager, NULL, NULL);
-
- g_object_unref (client);
- return notify;
-}
-
-static void
-sound_callback (GConfClient *client,
- guint cnxn_id,
- GConfEntry *entry,
- GsdSoundManager *manager)
-{
- apply_settings (manager);
-}
-
-gboolean
-gsd_sound_manager_start (GsdSoundManager *manager,
- GError **error)
-{
- g_debug ("Starting sound manager");
-
- gnome_settings_profile_start (NULL);
-
- manager->priv->notify =
- register_config_callback (manager,
- GCONF_SOUND_DIR,
- (GConfClientNotifyFunc) sound_callback);
- apply_settings (manager);
-
- gnome_settings_profile_end (NULL);
-
- return TRUE;
-}
-
-void
-gsd_sound_manager_stop (GsdSoundManager *manager)
-{
- GsdSoundManagerPrivate *p = manager->priv;
-
- g_debug ("Stopping sound manager");
-
- if (p->notify != 0) {
- GConfClient *client = gconf_client_get_default ();
- gconf_client_remove_dir (client, GCONF_SOUND_DIR, NULL);
- gconf_client_notify_remove (client, p->notify);
- g_object_unref (client);
- p->notify = 0;
- }
-
- stop_gnome_sound (manager);
- p->inited = FALSE;
-}
-
-static void
-gsd_sound_manager_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
-{
- GsdSoundManager *self;
-
- self = GSD_SOUND_MANAGER (object);
-
- switch (prop_id) {
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-static void
-gsd_sound_manager_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- GsdSoundManager *self;
-
- self = GSD_SOUND_MANAGER (object);
-
- switch (prop_id) {
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-static GObject *
-gsd_sound_manager_constructor (GType type,
- guint n_construct_properties,
- GObjectConstructParam *construct_properties)
-{
- GsdSoundManager *sound_manager;
- GsdSoundManagerClass *klass;
-
- klass = GSD_SOUND_MANAGER_CLASS (g_type_class_peek (GSD_TYPE_SOUND_MANAGER));
-
- sound_manager = GSD_SOUND_MANAGER (G_OBJECT_CLASS (gsd_sound_manager_parent_class)->constructor (type,
- n_construct_properties,
- construct_properties));
-
- return G_OBJECT (sound_manager);
-}
-
-static void
-gsd_sound_manager_dispose (GObject *object)
-{
- GsdSoundManager *manager;
-
- manager = GSD_SOUND_MANAGER (object);
-
- stop_child (manager);
-
- G_OBJECT_CLASS (gsd_sound_manager_parent_class)->dispose (object);
-}
-
-static void
-gsd_sound_manager_class_init (GsdSoundManagerClass *klass)
-{
- GObjectClass *object_class = G_OBJECT_CLASS (klass);
-
- object_class->get_property = gsd_sound_manager_get_property;
- object_class->set_property = gsd_sound_manager_set_property;
- object_class->constructor = gsd_sound_manager_constructor;
- object_class->dispose = gsd_sound_manager_dispose;
- object_class->finalize = gsd_sound_manager_finalize;
-
- g_type_class_add_private (klass, sizeof (GsdSoundManagerPrivate));
-}
-
-static void
-gsd_sound_manager_init (GsdSoundManager *manager)
-{
- manager->priv = GSD_SOUND_MANAGER_GET_PRIVATE (manager);
-
-}
-
-static void
-gsd_sound_manager_finalize (GObject *object)
-{
- GsdSoundManager *sound_manager;
-
- g_return_if_fail (object != NULL);
- g_return_if_fail (GSD_IS_SOUND_MANAGER (object));
-
- sound_manager = GSD_SOUND_MANAGER (object);
-
- g_return_if_fail (sound_manager->priv != NULL);
-
- G_OBJECT_CLASS (gsd_sound_manager_parent_class)->finalize (object);
-}
-
-GsdSoundManager *
-gsd_sound_manager_new (void)
-{
- if (manager_object != NULL) {
- g_object_ref (manager_object);
- } else {
- manager_object = g_object_new (GSD_TYPE_SOUND_MANAGER, NULL);
- g_object_add_weak_pointer (manager_object,
- (gpointer *) &manager_object);
- }
-
- return GSD_SOUND_MANAGER (manager_object);
-}
diff --git a/plugins/sound/gsd-sound-manager.h b/plugins/sound/gsd-sound-manager.h
deleted file mode 100644
index b14a3334..00000000
--- a/plugins/sound/gsd-sound-manager.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 William Jon McCann <mccann@jhu.edu>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- */
-
-#ifndef __GSD_SOUND_MANAGER_H
-#define __GSD_SOUND_MANAGER_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#define GSD_TYPE_SOUND_MANAGER (gsd_sound_manager_get_type ())
-#define GSD_SOUND_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_SOUND_MANAGER, GsdSoundManager))
-#define GSD_SOUND_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_SOUND_MANAGER, GsdSoundManagerClass))
-#define GSD_IS_SOUND_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_SOUND_MANAGER))
-#define GSD_IS_SOUND_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSD_TYPE_SOUND_MANAGER))
-#define GSD_SOUND_MANAGER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSD_TYPE_SOUND_MANAGER, GsdSoundManagerClass))
-
-typedef struct GsdSoundManagerPrivate GsdSoundManagerPrivate;
-
-typedef struct
-{
- GObject parent;
- GsdSoundManagerPrivate *priv;
-} GsdSoundManager;
-
-typedef struct
-{
- GObjectClass parent_class;
-} GsdSoundManagerClass;
-
-GType gsd_sound_manager_get_type (void);
-
-GsdSoundManager * gsd_sound_manager_new (void);
-gboolean gsd_sound_manager_start (GsdSoundManager *manager,
- GError **error);
-void gsd_sound_manager_stop (GsdSoundManager *manager);
-
-G_END_DECLS
-
-#endif /* __GSD_SOUND_MANAGER_H */
diff --git a/plugins/sound/gsd-sound-plugin.c b/plugins/sound/gsd-sound-plugin.c
deleted file mode 100644
index 2b29d271..00000000
--- a/plugins/sound/gsd-sound-plugin.c
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 William Jon McCann <mccann@jhu.edu>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- */
-
-#include "config.h"
-
-#include <glib/gi18n-lib.h>
-#include <gmodule.h>
-
-#include "gnome-settings-plugin.h"
-#include "gsd-sound-plugin.h"
-#include "gsd-sound-manager.h"
-
-struct GsdSoundPluginPrivate {
- GsdSoundManager *manager;
-};
-
-#define GSD_SOUND_PLUGIN_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), GSD_TYPE_SOUND_PLUGIN, GsdSoundPluginPrivate))
-
-GNOME_SETTINGS_PLUGIN_REGISTER (GsdSoundPlugin, gsd_sound_plugin)
-
-static void
-gsd_sound_plugin_init (GsdSoundPlugin *plugin)
-{
- plugin->priv = GSD_SOUND_PLUGIN_GET_PRIVATE (plugin);
-
- g_debug ("GsdSoundPlugin initializing");
-
- plugin->priv->manager = gsd_sound_manager_new ();
-}
-
-static void
-gsd_sound_plugin_finalize (GObject *object)
-{
- GsdSoundPlugin *plugin;
-
- g_return_if_fail (object != NULL);
- g_return_if_fail (GSD_IS_SOUND_PLUGIN (object));
-
- g_debug ("GsdSoundPlugin finalizing");
-
- plugin = GSD_SOUND_PLUGIN (object);
-
- g_return_if_fail (plugin->priv != NULL);
-
- if (plugin->priv->manager != NULL) {
- g_object_unref (plugin->priv->manager);
- }
-
- G_OBJECT_CLASS (gsd_sound_plugin_parent_class)->finalize (object);
-}
-
-static void
-impl_activate (GnomeSettingsPlugin *plugin)
-{
- gboolean res;
- GError *error;
-
- g_debug ("Activating sound plugin");
-
- error = NULL;
- res = gsd_sound_manager_start (GSD_SOUND_PLUGIN (plugin)->priv->manager, &error);
- if (! res) {
- g_warning ("Unable to start sound manager: %s", error->message);
- g_error_free (error);
- }
-}
-
-static void
-impl_deactivate (GnomeSettingsPlugin *plugin)
-{
- g_debug ("Deactivating sound plugin");
- gsd_sound_manager_stop (GSD_SOUND_PLUGIN (plugin)->priv->manager);
-}
-
-static void
-gsd_sound_plugin_class_init (GsdSoundPluginClass *klass)
-{
- GObjectClass *object_class = G_OBJECT_CLASS (klass);
- GnomeSettingsPluginClass *plugin_class = GNOME_SETTINGS_PLUGIN_CLASS (klass);
-
- object_class->finalize = gsd_sound_plugin_finalize;
-
- plugin_class->activate = impl_activate;
- plugin_class->deactivate = impl_deactivate;
-
- g_type_class_add_private (klass, sizeof (GsdSoundPluginPrivate));
-}
diff --git a/plugins/sound/gsd-sound-plugin.h b/plugins/sound/gsd-sound-plugin.h
deleted file mode 100644
index 9f41099b..00000000
--- a/plugins/sound/gsd-sound-plugin.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 William Jon McCann <mccann@jhu.edu>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2, or (at your option)
- * any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- */
-
-#ifndef __GSD_SOUND_PLUGIN_H__
-#define __GSD_SOUND_PLUGIN_H__
-
-#include <glib.h>
-#include <glib-object.h>
-#include <gmodule.h>
-
-#include "gnome-settings-plugin.h"
-
-G_BEGIN_DECLS
-
-#define GSD_TYPE_SOUND_PLUGIN (gsd_sound_plugin_get_type ())
-#define GSD_SOUND_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GSD_TYPE_SOUND_PLUGIN, GsdSoundPlugin))
-#define GSD_SOUND_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), GSD_TYPE_SOUND_PLUGIN, GsdSoundPluginClass))
-#define GSD_IS_SOUND_PLUGIN(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GSD_TYPE_SOUND_PLUGIN))
-#define GSD_IS_SOUND_PLUGIN_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GSD_TYPE_SOUND_PLUGIN))
-#define GSD_SOUND_PLUGIN_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), GSD_TYPE_SOUND_PLUGIN, GsdSoundPluginClass))
-
-typedef struct GsdSoundPluginPrivate GsdSoundPluginPrivate;
-
-typedef struct
-{
- GnomeSettingsPlugin parent;
- GsdSoundPluginPrivate *priv;
-} GsdSoundPlugin;
-
-typedef struct
-{
- GnomeSettingsPluginClass parent_class;
-} GsdSoundPluginClass;
-
-GType gsd_sound_plugin_get_type (void) G_GNUC_CONST;
-
-/* All the plugins must implement this function */
-G_MODULE_EXPORT GType register_gnome_settings_plugin (GTypeModule *module);
-
-G_END_DECLS
-
-#endif /* __GSD_SOUND_PLUGIN_H__ */
diff --git a/plugins/sound/sound.gnome-settings-plugin.in b/plugins/sound/sound.gnome-settings-plugin.in
deleted file mode 100644
index 3d43ee86..00000000
--- a/plugins/sound/sound.gnome-settings-plugin.in
+++ /dev/null
@@ -1,8 +0,0 @@
-[GNOME Settings Plugin]
-Module=sound
-IAge=0
-_Name=Sound
-_Description=Sound plugin
-Authors=
-Copyright=Copyright © 2007
-Website=