about summary refs log tree commit diff
path: root/pkgs/applications/networking/instant-messengers/salut-a-toi/default.nix
blob: 6b9593a24b7f1b73781e79415682764b8b52e029 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
{ stdenv, fetchurl, python27Packages, file }:

let
  inherit (python27Packages) python;
  requirements = (import ./requirements.nix {
    inherit stdenv fetchurl;
    pythonPackages = python27Packages;
  });

in
  stdenv.mkDerivation rec {
    pname = "salut-a-toi";
    version = "0.6.1";

    src = fetchurl {
      url = "ftp://ftp.goffi.org/sat/sat-${version}.tar.bz2";
      sha256 = "0kn9403n8fpzl0hsb9kkzicsmzq2fjl627l31yykbqzc4nsr780d";
    };

    buildInputs = with python27Packages;
    [
      python twisted urwid wxPython pygobject2
      dbus-python wrapPython setuptools file
      pycrypto pyxdg
    ] ++  (with requirements; [
      pyfeed
      wokkel
    ]);

    configurePhase = ''
      sed -i "/use_setuptools/d" setup.py
      sed -e "s@sys.prefix@'$out'@g" -i setup.py
      sed -e "1aexport PATH=\"\$PATH\":\"$out/bin\":\"${python27Packages.twisted}/bin\"" -i src/sat.sh
      sed -e "1aexport PYTHONPATH=\"\$PYTHONPATHPATH\":\"$PYTHONPATH\":"$out/${python.sitePackages}"" -i src/sat.sh

      echo 'import wokkel.muc' | python
    '';

    buildPhase = ''
      ${python.interpreter} setup.py build
    '';

    installPhase = ''
      ${python.interpreter} setup.py install --prefix="$out"

      for i in "$out/bin"/*; do
      head -n 1 "$i" | grep -E '[/ ]python( |$)' && {
        wrapProgram "$i" --prefix PYTHONPATH : "$PYTHONPATH:$out/${python.sitePackages}"
      } || true
      done
    '';

    meta = with stdenv.lib; {
      homepage = "http://sat.goffi.org/";
      description = "A multi-frontend XMPP client";
      platforms = platforms.linux;
      maintainers = [ maintainers.raskin ];
      license = licenses.gpl3Plus;
    };
  }