From 532827dfe590e92fed2f0f4aa8614ee65cb46b34 Mon Sep 17 00:00:00 2001 From: Kurt Jaeger Date: Mon, 11 Feb 2019 06:37:55 +0000 Subject: audio/libmatemixer: help mate_mixer_applet to save the "track to control" - Using mate 1.8.1 installed from packages. Unable to set the volume straight from the slider of the Mixer Applet, until I right click the icon, go to preferences, and select PCM as the track to control. If I restart the mate_mixer_applet (either via kill or regular shutdown) the setting goes back to Volume. - After the port patch the instelled libmatemixer backend works fine. - see also: https://forums.freebsd.org/threads/fixing-default-audio-device-in-mate.58957/ PR: 202578 Submitted by: Attila Reported by: Abilio Marques Reviewed by: Walter Schwarzenfeld --- .../files/patch-backends_oss_oss-backend.c | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 audio/libmatemixer/files/patch-backends_oss_oss-backend.c (limited to 'audio/libmatemixer/files/patch-backends_oss_oss-backend.c') diff --git a/audio/libmatemixer/files/patch-backends_oss_oss-backend.c b/audio/libmatemixer/files/patch-backends_oss_oss-backend.c new file mode 100644 index 000000000000..cc789ef95bcd --- /dev/null +++ b/audio/libmatemixer/files/patch-backends_oss_oss-backend.c @@ -0,0 +1,30 @@ +--- backends/oss/oss-backend.c.orig 2017-03-12 15:28:02 UTC ++++ backends/oss/oss-backend.c +@@ -40,6 +40,8 @@ + * from the sndstat file, but avoid even trying that on systems where this + * is not needed and the file is not present */ + #define OSS_PATH_SNDSTAT "/dev/sndstat" ++ /* remove SOUND_MIXER_INFO on FreeBSD, use OSS_PATH_SNDSTAT */ ++#undef SOUND_MIXER_INFO + #endif + + #define OSS_MAX_DEVICES 32 +@@ -377,6 +379,10 @@ read_device_label (OssBackend *oss, cons + { + guint index; + ++ /* default_device setting only in read_device_label_sndstat() ++ * on FreeBSD use OSS_PATH_SNDSTAT ++ */ ++ + #ifdef SOUND_MIXER_INFO + do { + struct mixer_info info; +@@ -430,6 +436,7 @@ read_device_label_sndstat (OssBackend * + + while (fgets (line, sizeof (line), fp) != NULL) { + gchar *p; ++ g_strchomp(line); // required for g_str_has_suffix() + + if (g_str_has_prefix (line, prefix) == FALSE) + continue; -- cgit v1.2.3