summary refs log tree commit diff
path: root/pkgs/desktops/kde-4.12/kdelibs/kdelibs.nix
blob: 1698abfd00f72a4fce3bc79548cc3b7ebac5cc21 (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
{ kde, gcc, cmake, perl
, qt4, bzip2, fam, shared_mime_info, giflib, jasper, strigi
, openexr, avahi, kerberos, shared_desktop_ontologies, libXScrnSaver
, automoc4, soprano, qca2, attica, enchant, libdbusmenu_qt, grantlee
, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, acl, attr, libXtst
, udev, herqq, phonon, libjpeg, xz, ilmbase, libxslt
, pkgconfig, fetchpatch
}:

kde {

# TODO: media-player-info

  buildInputs =
    [ pkgconfig attica avahi bzip2 enchant fam giflib grantlee herqq
      libdbusmenu_qt libXScrnSaver polkit_qt_1 qca2 acl jasper libxslt
      shared_desktop_ontologies xz udev libjpeg kerberos openexr
      libXtst attr
    ];

  NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";

  propagatedBuildInputs = [ qt4 soprano phonon strigi ];

  propagatedNativeBuildInputs = [ automoc4 cmake perl shared_mime_info ];

  # TODO: make sonnet plugins (dictionaries) really work.
  # There are a few hardcoded paths.
  # Split plugins from libs?

  patches = [
    ../files/polkit-install.patch
    (fetchpatch {
      name = "CVE-2014-5033.patch";
      url = "http://quickgit.kde.org/?p=kdelibs.git"
        + "&a=commit&h=e4e7b53b71e2659adaf52691d4accc3594203b23";
      sha256 = "0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73";
    })
  ];

  cmakeFlags = [
    "-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook"
    "-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
    "-DHUPNP_ENABLED=ON"
    "-DWITH_SOLID_UDISKS2=ON"
  ];

  passthru.wantsUdisks2 = true;

  meta = {
    description = "KDE libraries";
    license = "LGPL";
  };
}