Commit af38d77a authored by lucasew's avatar lucasew Committed by Anderson Torres
Browse files

pidgin: put packages in a different scope



Signed-off-by: default avatarlucasew <lucas59356@gmail.com>
parent 99d417ba
Loading
Loading
Loading
Loading
+139 −89
Original line number Diff line number Diff line
{ callPackage, stdenv, fetchurl, makeWrapper, pkg-config, gtk2, gtk2-x11, gtkspell2, aspell
, gst_all_1, libstartup_notification, gettext, perlPackages, libxml2, nss
, nspr, farstream, libXScrnSaver, avahi, dbus, dbus-glib, intltool, libidn
, lib, python3, libICE, libXext, libSM, libgnt, ncurses, cyrus_sasl, openssl
, gnutls, libgcrypt, cacert, plugins, withOpenssl, withGnutls, withCyrus_sasl ? true
{ stdenv
, callPackage
, fetchurl
, makeWrapper
, aspell
, avahi
, cacert
, dbus
, dbus-glib
, farstream
, gettext
, gst_all_1
, gtk2
, gtk2-x11
, gtkspell2
, intltool
, lib
, libICE
, libSM
, libXScrnSaver
, libXext
, libgcrypt
, libgnt
, libidn
, libstartup_notification
, libxml2
, ncurses
, nspr
, nss
, perlPackages
, pkg-config
, python3
, pidgin
, plugins        ? []
, withOpenssl    ? false, openssl
, withGnutls     ? false , gnutls
, withCyrus_sasl ? true, cyrus_sasl
, pidginPackages
}:

# FIXME: clean the mess around choosing the SSL library (nss by default)

let unwrapped = stdenv.mkDerivation rec {
let
  unwrapped = stdenv.mkDerivation rec {
    pname = "pidgin";
    version = "2.14.12";

@@ -23,13 +57,25 @@ let unwrapped = stdenv.mkDerivation rec {
    buildInputs = let
      python-with-dbus = python3.withPackages (pp: with pp; [ dbus-python ]);
    in [
    aspell libstartup_notification
    gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
    libxml2 nss nspr
    libXScrnSaver python-with-dbus
    avahi dbus dbus-glib libidn
    libICE libXext libSM cyrus_sasl
    libgnt ncurses # optional: build finch - the console UI
      aspell
      avahi
      cyrus_sasl
      dbus
      dbus-glib
      gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
      gst_all_1.gstreamer
      libICE
      libSM
      libXScrnSaver
      libXext
      libgnt
      libidn
      libstartup_notification
      libxml2
      ncurses # optional: build finch - the console UI
      nspr
      nss
      python-with-dbus
    ]
    ++ lib.optional withOpenssl openssl
    ++ lib.optionals withGnutls [ gnutls libgcrypt ]
@@ -42,7 +88,10 @@ let unwrapped = stdenv.mkDerivation rec {
      ++ lib.optional stdenv.isLinux gtk2
      ++ lib.optional stdenv.isDarwin gtk2-x11;

  patches = [ ./pidgin-makefile.patch ./add-search-path.patch ];
    patches = [
      ./add-search-path.patch
      ./pidgin-makefile.patch
    ];

    configureFlags = [
      "--with-nspr-includes=${nspr.dev}/include/nspr"
@@ -81,19 +130,20 @@ let unwrapped = stdenv.mkDerivation rec {

    passthru = {
      makePluginPath = lib.makeSearchPathOutput "lib" "lib/purple-${lib.versions.major version}";
      withPlugins = pluginfn: callPackage ./wrapper.nix {
        plugins = pluginfn pidginPackages;
        pidgin = unwrapped;
      };
    };

  meta = with lib; {
    meta = {
      description = "Multi-protocol instant messaging client";
      homepage = "https://pidgin.im/";
    license = licenses.gpl2Plus;
    platforms = platforms.unix;
    maintainers = [ ];
      license = lib.licenses.gpl2Plus;
      platforms = lib.platforms.unix;
      maintainers = [ lib.maintainers.lucasew ];
    };
  };

in if plugins == [] then unwrapped
    else callPackage ./wrapper.nix {
      inherit plugins;
      pidgin = unwrapped;
    }
  else unwrapped.withPlugins (_: plugins)
+70 −0
Original line number Diff line number Diff line
{ lib
, newScope
, pidgin
, texlive
, config
}:

lib.makeScope newScope (self:
  let callPackage = self.callPackage;
  in {
    pidgin = callPackage ../. {
      withOpenssl = config.pidgin.openssl or true;
      withGnutls = config.pidgin.gnutls or false;
      plugins = [];
    };

    pidginPackages = self;

    pidgin-indicator = callPackage ./pidgin-indicator { };

    pidgin-latex = callPackage ./pidgin-latex {
      texLive = texlive.combined.scheme-basic;
    };

    pidgin-msn-pecan = callPackage ./msn-pecan { };

    pidgin-mra = callPackage ./pidgin-mra { };

    pidgin-skypeweb = callPackage ./pidgin-skypeweb { };

    pidgin-carbons = callPackage ./carbons { };

    pidgin-xmpp-receipts = callPackage ./pidgin-xmpp-receipts { };

    pidgin-otr = callPackage ./otr { };

    pidgin-osd = callPackage ./pidgin-osd { };

    pidgin-sipe = callPackage ./sipe { };

    pidgin-window-merge = callPackage ./window-merge { };

    purple-discord = callPackage ./purple-discord { };

    purple-googlechat = callPackage ./purple-googlechat { };

    purple-hangouts = callPackage ./purple-hangouts { };

    purple-lurch = callPackage ./purple-lurch { };

    purple-matrix = callPackage ./purple-matrix { };

    purple-mm-sms = callPackage ./purple-mm-sms { };

    purple-plugin-pack = callPackage ./purple-plugin-pack { };

    purple-signald = callPackage ./purple-signald { };

    purple-slack = callPackage ./purple-slack { };

    purple-vk-plugin = callPackage ./purple-vk-plugin { };

    purple-xmpp-http-upload = callPackage ./purple-xmpp-http-upload { };

    tdlib-purple = callPackage ./tdlib-purple { };

    pidgin-opensteamworks = callPackage ./pidgin-opensteamworks { };

    purple-facebook = callPackage ./purple-facebook { };
})
Loading