summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorRaghav Gururajan <rg@raghavgururajan.name>2020-12-31 00:30:09 -0500
committerDanny Milosavljevic <dannym@scratchpost.org>2021-01-03 17:30:30 +0100
commit3fd4477809caaeb6681999941f21baac14d87e84 (patch)
treeffccc09c34e335c184ba1f5e71b09dfa1a2dbbb1 /gnu
parent554120687687a022e4604ae8a9e33ea5dffeb15c (diff)
downloadguix-3fd4477809caaeb6681999941f21baac14d87e84.tar.gz
gnu: pidgin: Enable MultiMedia and A/V support.
* gnu/packages/messaging.scm (pidgin) [patches]<search-patches>
[pidgin-vv-gst.patch]: New patch.
[arguments]<#:configure-flags>[--diable-vv]: Remove flag.
[--disable-gstreamer]: Remove flag.
[CFLAGS]: New flag.
[inputs]: Add farstream and gstreamer. Move gtk+-2 to ...
[propagated-inputs]: ... here.
* gnu/packages/patches/pidgin-vv-gst.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add entry.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/messaging.scm16
-rw-r--r--gnu/packages/patches/pidgin-vv-gst.patch48
3 files changed, 58 insertions, 7 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 0aad15740c..53a67e6ffe 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1471,6 +1471,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/picard-fix-id3-rename-test.patch		\
   %D%/packages/patches/picprog-non-intel-support.patch		\
   %D%/packages/patches/pidgin-add-search-path.patch		\
+  %D%/packages/patches/pidgin-vv-gst.patch                        \
   %D%/packages/patches/pinball-const-fix.patch			\
   %D%/packages/patches/pinball-cstddef.patch			\
   %D%/packages/patches/pinball-missing-separators.patch		\
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 99cb3e8f1a..4a368c0be4 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -729,7 +729,8 @@ authentication.")
         (base32 "1c4dzxg9c3d9zfqqa7jwijj9rv9fm6w95igmpljwy88lxq7v5w11"))
        (patches
         (search-patches
-         "pidgin-add-search-path.patch"))
+         "pidgin-add-search-path.patch"
+         "pidgin-vv-gst.patch"))
        (modules '((guix build utils)))
        (snippet
         '(begin
@@ -752,10 +753,9 @@ authentication.")
        ("dbus" ,dbus)
        ("dbus-glib" ,dbus-glib)
        ;; ("evolution-data-server" ,evolution-data-server)
-       ;; ("farstream" ,farstream)
+       ("farstream" ,farstream)
        ("gnutls" ,gnutls)
-       ;; ("gstreamer" ,gstreamer)
-       ("gtk+" ,gtk+-2)
+       ("gstreamer" ,gstreamer)
        ;; ("gtkspell2" ,gtkspell2)
        ("libgadu" ,libgadu)
        ("libgcrypt" ,libgcrypt)
@@ -786,16 +786,18 @@ authentication.")
        ("tcl" ,tcl)
        ("tk" ,tk)))
     (propagated-inputs
-     `(("glib" ,glib)))
+     `(("glib" ,glib)
+       ("gtk+" ,gtk+-2)))
     (arguments
      `(#:configure-flags
        (list
+        (string-append "CFLAGS=-I"
+                       (assoc-ref %build-inputs "gst-plugins-base")
+                       "/include/gstreamer-1.0")
         "--disable-gtkspell"
         ;; "--enable-gevolution"
         "--enable-cap"
         "--enable-mono"
-        "--disable-vv" ; XXX remove when we have farstream and gstreamer
-        "--disable-gstreamer" ; XXX patches needed to support gstreamer-1.0
         "--enable-cyrus-sasl"
         (string-append "--with-ncurses-headers="
                        (assoc-ref %build-inputs "ncurses")
diff --git a/gnu/packages/patches/pidgin-vv-gst.patch b/gnu/packages/patches/pidgin-vv-gst.patch
new file mode 100644
index 0000000000..e0553dd119
--- /dev/null
+++ b/gnu/packages/patches/pidgin-vv-gst.patch
@@ -0,0 +1,48 @@
+Name: Gary Kramlich
+Date: 2020-07-12
+Source: https://keep.imfreedom.org/pidgin/pidgin/rev/39ac50435cfb
+
+diff --git a/libpurple/mediamanager.c b/libpurple/mediamanager.c
+--- a/libpurple/mediamanager.c
++++ b/libpurple/mediamanager.c
+@@ -2231,6 +2231,7 @@
+ purple_media_manager_unregister_gst_device(PurpleMediaManager *manager,
+ 		GstDevice *device)
+ {
++#ifdef USE_VV
+ 	GList *i;
+ 	gchar *name;
+ 	gchar *device_class;
+@@ -2277,6 +2278,7 @@
+ 
+ 	g_free(name);
+ 	g_free(device_class);
++#endif /* USE_VV */
+ }
+ 
+ static gboolean
+@@ -2304,7 +2306,7 @@
+ static void
+ purple_media_manager_init_device_monitor(PurpleMediaManager *manager)
+ {
+-#if GST_CHECK_VERSION(1, 4, 0)
++#if GST_CHECK_VERSION(1, 4, 0) && defined(USE_VV)
+ 	GstBus *bus;
+ 	GList *i;
+ 
+@@ -2334,6 +2336,7 @@
+ 		PurpleMediaElementType type)
+ {
+ 	GList *result = NULL;
++#ifdef USE_VV
+ 	GList *i;
+ 
+ 	for (i = manager->priv->elements; i; i = i->next) {
+@@ -2347,6 +2350,7 @@
+ 			result = g_list_prepend(result, info);
+ 		}
+ 	}
++#endif /* USE_VV */
+ 
+ 	return result;
+ }