Merge pull request #14423 from yokto/fix/psi

psi: fix remove psimedia and spellchecker
This commit is contained in:
zimbatm 2016-04-03 15:05:54 +01:00
commit c317c8f28c
4 changed files with 3 additions and 182 deletions

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, aspell, qt4, zlib, sox, libX11, xproto, libSM
, libICE, qca2, pkgconfig, liboil, speex, callPackage, which, glib
{ stdenv, fetchurl, enchant, qt4, zlib, sox, libX11, xproto, libSM
, libICE, qca2, pkgconfig, callPackage, which, glib
, libXScrnSaver, scrnsaverproto
}:
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
};
buildInputs =
[ aspell qt4 zlib sox libX11 xproto libSM libICE
[ enchant qt4 zlib sox libX11 xproto libSM libICE
qca2 pkgconfig which glib scrnsaverproto libXScrnSaver
];
@ -20,20 +20,8 @@ stdenv.mkDerivation rec {
NIX_LDFLAGS="-lqca";
psiMedia = callPackage ./psimedia.nix { };
enableParallelBuilding = true;
configureFlags = [
"--with-aspell-inc=${aspell}/include"
];
postInstall = ''
PSI_PLUGINS="$out/lib/psi/plugins"
mkdir -p "$PSI_PLUGINS"
ln -s "${psiMedia}"/share/psi/plugins/*.so "$PSI_PLUGINS"
'';
meta = {
description = "Psi, an XMPP (Jabber) client";
maintainers = [ stdenv.lib.maintainers.raskin ];

View File

@ -1,54 +0,0 @@
http://sources2.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-im/psimedia/files/psimedia-1.0.3-glib2.32.patch?view=log
Index: psimedia-1.0.3/gstprovider/gstcustomelements/gstcustomelements.h
===================================================================
--- psimedia-1.0.3.orig/gstprovider/gstcustomelements/gstcustomelements.h
+++ psimedia-1.0.3/gstprovider/gstcustomelements/gstcustomelements.h
@@ -21,7 +21,7 @@
#ifndef GSTCUSTOMELEMENTS_H
#define GSTCUSTOMELEMENTS_H
-#include <glib/gthread.h>
+#include <glib.h>
#include <gst/gst.h>
#include <gst/base/gstpushsrc.h>
#include <gst/video/video.h>
Index: psimedia-1.0.3/gstprovider/gstelements/static/gstelements.h
===================================================================
--- psimedia-1.0.3.orig/gstprovider/gstelements/static/gstelements.h
+++ psimedia-1.0.3/gstprovider/gstelements/static/gstelements.h
@@ -21,7 +21,7 @@
#ifndef PSI_GSTELEMENTS_H
#define PSI_GSTELEMENTS_H
-#include <glib/gmacros.h>
+#include <glib.h>
G_BEGIN_DECLS
Index: psimedia-1.0.3/gstprovider/gstthread.h
===================================================================
--- psimedia-1.0.3.orig/gstprovider/gstthread.h
+++ psimedia-1.0.3/gstprovider/gstthread.h
@@ -22,7 +22,7 @@
#define PSI_GSTTHREAD_H
#include <QThread>
-#include <glib/gmain.h>
+#include <glib.h>
namespace PsiMedia {
Index: psimedia-1.0.3/gstprovider/rwcontrol.h
===================================================================
--- psimedia-1.0.3.orig/gstprovider/rwcontrol.h
+++ psimedia-1.0.3/gstprovider/rwcontrol.h
@@ -28,7 +28,7 @@
#include <QMutex>
#include <QWaitCondition>
#include <QTimer>
-#include <glib/gmain.h>
+#include <glib.h>
#include "psimediaprovider.h"
#include "rtpworker.h"

View File

@ -1,86 +0,0 @@
http://pkgs.fedoraproject.org/gitweb/?p=psimedia.git;a=blob_plain;f=psimedia-remove-v4l.patch;hb=HEAD
--- a/gstprovider/deviceenum/deviceenum_unix.cpp
+++ b/gstprovider/deviceenum/deviceenum_unix.cpp
@@ -35,7 +35,7 @@
# include <sys/stat.h>
# include <dirent.h>
# include <sys/ioctl.h>
-# include <linux/videodev.h>
+# include <linux/videodev2.h>
#endif
namespace DeviceEnum {
@@ -478,72 +478,7 @@
// v4l detection scheme adapted from PWLib (used by Ekiga/Gnomemeeting)
static QList<Item> get_v4l_items()
{
-#ifdef Q_OS_LINUX
- QList<Item> out;
-
- QList<V4LName> list = get_v4l_names("/sys/class/video4linux", true);
- if(list.isEmpty())
- list = get_v4l_names("/proc/video/dev", false);
-
- // if we can't find anything, then do a raw scan for possibilities
- if(list.isEmpty())
- {
- QStringList possible = scan_for_videodevs("/dev");
- foreach(QString str, possible)
- {
- V4LName v;
- v.dev = str;
- list += v;
- }
- }
-
- for(int n = 0; n < list.count(); ++n)
- {
- V4LName &v = list[n];
-
- // if we already have a friendly name then we'll skip the confirm
- // in order to save resources. the only real drawback here that
- // I can think of is if the device isn't a capture type. but
- // what does it mean to have a V4L device that isn't capture??
- if(v.friendlyName.isEmpty())
- {
- int fd = open(QFile::encodeName(v.dev).data(), O_RDONLY | O_NONBLOCK);
- if(fd == -1)
- continue;
-
- // get video capabilities and close
- struct video_capability caps;
- memset(&caps, 0, sizeof(caps));
- int ret = ioctl(fd, VIDIOCGCAP, &caps);
- close(fd);
- if(ret == -1)
- continue;
-
- if(!(caps.type & VID_TYPE_CAPTURE))
- continue;
-
- v.friendlyName = caps.name;
- }
-
- Item i;
- i.type = Item::Video;
- i.dir = Item::Input;
- i.name = v.friendlyName;
- i.driver = "v4l";
- i.id = v.dev;
-
- // HACK
- if(v.friendlyName == "Labtec Webcam Notebook")
- i.explicitCaptureSize = QSize(640, 480);
-
- out += i;
- }
-
- return out;
-#else
- // return empty list if non-linux
return QList<Item>();
-#endif
}
static QList<Item> get_v4l2_items()

View File

@ -1,27 +0,0 @@
{ stdenv, fetchurl, qt4, gstreamer, gst_plugins_base, liboil, speex, which
, glib, pkgconfig }:
stdenv.mkDerivation rec {
name = "psimedia-1.0.3";
src = fetchurl {
url = "http://delta.affinix.com/download/psimedia/${name}.tar.bz2";
sha256 = "0fxjdz8afh75gfx2msysb1gss6zx578l3224jvc9jhm99w1ii781";
};
patches = [ ./glib-2.32.patch ./linux-headers.patch ];
buildInputs = [ qt4 gstreamer gst_plugins_base liboil speex which glib pkgconfig ];
configurePhase = ''./configure'';
postBuild = ''
TARGET="$out/share/psi/plugins"
mkdir -p "$TARGET"
cp gstprovider/*.so "$TARGET"/
'';
meta = {
description = "Psi Media, a plugin to provide Voice/Video over XMPP";
};
}