summary refs log tree commit diff
path: root/pkgs/desktops/e17/ecore/default.nix
blob: 010a8022fca5bce5f6afee5bbd0c98a49369046d (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
{ stdenv, fetchurl, pkgconfig, eina, evas, libX11, libXext }:
stdenv.mkDerivation rec {
  name = "ecore-${version}";
  version = "1.1.0";
  src = fetchurl {
    url = "http://download.enlightenment.org/releases/${name}.tar.gz";
    sha256 = "12iqhrklp3k5lvbxf7lhqd53wpl1csvricfkzlcv2nny4y3r31m0";
  };
  buildInputs = [ pkgconfig eina evas ];
  propagatedBuildInputs = [ libX11 libXext ];
  meta = {
    description = "Enlightenment's core mainloop, display abstraction and utility library";
    longDescription = ''
      Enlightenment's Ecore is a clean and tiny event loop library
      with many modules to do lots of convenient things for a
      programmer, to save time and effort.

      It's small and lean, designed to work on embedded systems all
      the way to large and powerful multi-cpu workstations. It
      serialises all system signals, events etc. into a single event
      queue, that is easily processed without needing to worry about
      concurrency. A properly written, event-driven program using this
      kind of programming doesn't need threads, nor has to worry about
      concurrency. It turns a program into a state machine, and makes
      it very robust and easy to follow.
    '';
    homepage = http://enlightenment.org/;
    license = stdenv.lib.licenses.bsd2;  # not sure
  };
}