summary refs log tree commit diff
path: root/pkgs/desktops/gnome-3/core/caribou/default.nix
blob: 9b083ff5644b748e8febee9101b59b60a8700a22 (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
{ fetchurl, stdenv, pkgconfig, gnome3, clutter, dbus, python3Packages, libxml2
, libxklavier, libXtst, gtk2, intltool, libxslt, at-spi2-core, autoreconfHook
, wrapGAppsHook }:

let
  majorVersion = "0.4";
  pythonEnv = python3Packages.python.withPackages ( ps: with ps; [ pygobject3 ] );
in
stdenv.mkDerivation rec {
  name = "caribou-${majorVersion}.21";

  src = fetchurl {
    url = "mirror://gnome/sources/caribou/${majorVersion}/${name}.tar.xz";
    sha256 = "0mfychh1q3dx0b96pjz9a9y112bm9yqyim40yykzxx1hppsdjhww";
  };

  nativeBuildInputs = [ pkgconfig intltool libxslt libxml2 autoreconfHook wrapGAppsHook ];

  buildInputs = with gnome3;
    [ glib gtk clutter at-spi2-core dbus pythonEnv python3Packages.pygobject3
      libXtst gtk2 ];

  propagatedBuildInputs = [ gnome3.libgee libxklavier ];

  postPatch = ''
    patchShebangs .
    substituteInPlace libcaribou/Makefile.am --replace "--shared-library=libcaribou.so.0" "--shared-library=$out/lib/libcaribou.so.0"
  '';

  meta = with stdenv.lib; {
    platforms = platforms.linux;
    maintainers = gnome3.maintainers;
  };

}