about summary refs log tree commit diff
path: root/overrides
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2014-07-01 19:18:44 +0200
committeraszlig <aszlig@redmoonstudios.org>2014-07-01 19:18:44 +0200
commit83ba20511bf553d2dd395a6fe4af73fc9d86d57c (patch)
tree728e974e087cd6027dbfff6cbcf9363fa6aa2406 /overrides
parentb124643d26e17d4d96e7e2c30223d9920e74a3c0 (diff)
gajim: Update to latest 0.16 mercurial branch.
This also needs nbxmpp as a dependency, so let's revert this entire
commit when the next upstream version is released.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Diffstat (limited to 'overrides')
-rw-r--r--overrides/default.nix4
-rw-r--r--overrides/gajim/0.16-pre.nix89
-rw-r--r--overrides/nbxmpp/default.nix17
3 files changed, 110 insertions, 0 deletions
diff --git a/overrides/default.nix b/overrides/default.nix
index e2531051..e8a37552 100644
--- a/overrides/default.nix
+++ b/overrides/default.nix
@@ -88,9 +88,13 @@ let
     axbo = callPackage ./axbo { };
     blop = callPackage ./blop { };
     fish = callPackage ./fish { };
+    gajim = callPackage ./gajim/0.16-pre.nix {
+      inherit (pkgs.xlibs) libX11;
+    };
     libCMT = callPackage ./libcmt { };
     librxtx_java = callPackage ./librxtx-java { };
     lockdev = callPackage ./lockdev { };
+    nbxmpp = callPackage ./nbxmpp { };
     pvolctrl = callPackage ./pvolctrl { };
     tkabber_urgent_plugin = callPackage ./tkabber-urgent-plugin { };
 
diff --git a/overrides/gajim/0.16-pre.nix b/overrides/gajim/0.16-pre.nix
new file mode 100644
index 00000000..c11e0284
--- /dev/null
+++ b/overrides/gajim/0.16-pre.nix
@@ -0,0 +1,89 @@
+{ stdenv, fetchurl, fetchhg, python, intltool, pkgconfig, libX11, gtk
+, host, pyopenssl, pythonDBus, pythonPackages, nbxmpp
+
+, enableJingle ? true, farstream ? null, gst_plugins_bad ? null
+,                      libnice ? null
+, enableE2E ? true
+, enableRST ? true
+, enableSpelling ? true, gtkspell ? null
+, enableNotifications ? false
+, enableLaTeX ? false, texLive ? null
+
+# FIXME: Remove after final release.
+, autoconf, automake, libtool
+}:
+
+assert enableJingle -> farstream != null && gst_plugins_bad != null
+                    && libnice != null;
+assert enableE2E -> pythonPackages.pycrypto != null;
+assert enableRST -> pythonPackages.docutils != null;
+assert enableSpelling -> gtkspell != null;
+assert enableNotifications -> pythonPackages.notify != null;
+assert enableLaTeX -> texLive != null;
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "gajim-${version}";
+  version = "0.16";
+
+  src = fetchhg {
+    url = "http://hg.gajim.org/gajim";
+    rev = "f38e5fd4f8e3";
+    sha256 = "17wmy355znfkv4fbwa4hzicr17k8if75mh3b14yphszfw3bh3mfw";
+  };
+
+  preConfigure = ''
+    sed -e 's/\<which\>/type -P/' autogen.sh | sh
+  '';
+
+  postPatch = ''
+    sed -i -e '0,/^[^#]/ {
+      /^[^#]/i export \\\
+        PYTHONPATH="'"$PYTHONPATH\''${PYTHONPATH:+:}\$PYTHONPATH"'" \\\
+        GST_PLUGIN_PATH="'"\$GST_PLUGIN_PATH''${GST_PLUGIN_PATH:+:}${""
+        }$GST_PLUGIN_PATH"'"
+    }' scripts/gajim.in
+
+    sed -i -e 's/return helpers.is_in_path('"'"'nslookup.*/return True/' \
+      src/features_window.py
+    sed -i -e '/is_in_path\|return \[.host/'"s|'host'|'${host}/bin/host'|" \
+      src/common/resolver.py
+  '' + optionalString enableSpelling ''
+    sed -i -e 's|=.*find_lib.*|= "${gtkspell}/lib/libgtkspell.so"|'   \
+      src/gtkspell.py
+  '' + optionalString enableLaTeX ''
+    sed -i -e "s|try_run(.'dvipng'|try_run(['${texLive}/bin/dvipng'|" \
+           -e "s|try_run(.'latex'|try_run(['${texLive}/bin/latex'|"   \
+           -e 's/tmpfd.close()/os.close(tmpfd)/'                      \
+           src/common/latex.py
+  '';
+
+  buildInputs = [
+    python intltool pkgconfig libX11
+    pythonPackages.pygobject pythonPackages.pyGtkGlade
+    pythonPackages.sqlite3 pythonPackages.pyasn1
+    pythonPackages.pyxdg nbxmpp
+    pyopenssl pythonDBus
+    # FIXME: Remove after final release.
+    autoconf automake libtool
+  ] ++ optionals enableJingle [ farstream gst_plugins_bad libnice ]
+    ++ optional enableE2E pythonPackages.pycrypto
+    ++ optional enableRST pythonPackages.docutils
+    ++ optional enableNotifications pythonPackages.notify
+    ++ optional enableLaTeX texLive;
+
+  postInstall = ''
+    install -m 644 -t "$out/share/gajim/icons/hicolor" \
+                      "icons/hicolor/index.theme"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = "http://gajim.org/";
+    description = "Jabber client written in PyGTK";
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.raskin maintainers.aszlig ];
+  };
+}
diff --git a/overrides/nbxmpp/default.nix b/overrides/nbxmpp/default.nix
new file mode 100644
index 00000000..fa306432
--- /dev/null
+++ b/overrides/nbxmpp/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, buildPythonPackage }:
+
+buildPythonPackage rec {
+  name = "nbxmpp-0.4";
+
+  src = fetchurl {
+    name = "${name}.tar.gz";
+    url = "https://python-nbxmpp.gajim.org/downloads/4";
+    sha256 = "073qhz6vgsym4rkgwj801girl8xqhlbr37xn5lg0za9c61vmwayh";
+  };
+
+  meta = {
+    homepage = "https://python-nbxmpp.gajim.org/";
+    description = "Non-blocking Jabber/XMPP module";
+    license = stdenv.lib.licenses.gpl3;
+  };
+}