From e3ccdb4bcdcdea22397438c5b9cea750908e5753 Mon Sep 17 00:00:00 2001 From: Alexander Tsamutali Date: Mon, 26 Sep 2011 22:28:35 +0000 Subject: desktops/e17: Add e17. WIP. Make hangs during build of enlightenment. svn path=/nixpkgs/trunk/; revision=29506 --- pkgs/desktops/e17/default.nix | 39 +++++++++++++++++++++++++++++ pkgs/desktops/e17/e_dbus/default.nix | 28 +++++++++++++++++++++ pkgs/desktops/e17/ecore/d.nix | 18 +++++++++++++ pkgs/desktops/e17/ecore/default.nix | 30 ++++++++++++++++++++++ pkgs/desktops/e17/edje/default.nix | 24 ++++++++++++++++++ pkgs/desktops/e17/eet/default.nix | 29 +++++++++++++++++++++ pkgs/desktops/e17/eeze/default.nix | 23 +++++++++++++++++ pkgs/desktops/e17/efreet/default.nix | 29 +++++++++++++++++++++ pkgs/desktops/e17/eina/default.nix | 18 +++++++++++++ pkgs/desktops/e17/embryo/default.nix | 21 ++++++++++++++++ pkgs/desktops/e17/enlightenment/default.nix | 25 ++++++++++++++++++ pkgs/desktops/e17/evas/default.nix | 22 ++++++++++++++++ pkgs/top-level/all-packages.nix | 5 ++++ 13 files changed, 311 insertions(+) create mode 100644 pkgs/desktops/e17/default.nix create mode 100644 pkgs/desktops/e17/e_dbus/default.nix create mode 100644 pkgs/desktops/e17/ecore/d.nix create mode 100644 pkgs/desktops/e17/ecore/default.nix create mode 100644 pkgs/desktops/e17/edje/default.nix create mode 100644 pkgs/desktops/e17/eet/default.nix create mode 100644 pkgs/desktops/e17/eeze/default.nix create mode 100644 pkgs/desktops/e17/efreet/default.nix create mode 100644 pkgs/desktops/e17/eina/default.nix create mode 100644 pkgs/desktops/e17/embryo/default.nix create mode 100644 pkgs/desktops/e17/enlightenment/default.nix create mode 100644 pkgs/desktops/e17/evas/default.nix (limited to 'pkgs') diff --git a/pkgs/desktops/e17/default.nix b/pkgs/desktops/e17/default.nix new file mode 100644 index 000000000000..6822c6419136 --- /dev/null +++ b/pkgs/desktops/e17/default.nix @@ -0,0 +1,39 @@ +{ callPackage, pkgs }: +rec { + #### CORE EFL + + eina = callPackage ./eina { }; + + eet = callPackage ./eet { }; + + evas = callPackage ./evas { }; + + ecore = callPackage ./ecore { }; + + embryo = callPackage ./embryo { }; + + edje = callPackage ./edje { lua = pkgs.lua5; }; + + efreet = callPackage ./efreet { }; + + e_dbus = callPackage ./e_dbus { }; + + eeze = callPackage ./eeze { }; + + + #### WINDOW MANAGER + + enlightenment = callPackage ./enlightenment { }; + + + #### APPLICATIONS + + + + + #### ART + + + + +} diff --git a/pkgs/desktops/e17/e_dbus/default.nix b/pkgs/desktops/e17/e_dbus/default.nix new file mode 100644 index 000000000000..44be90f7af93 --- /dev/null +++ b/pkgs/desktops/e17/e_dbus/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, pkgconfig, ecore, eina, evas, dbus_libs }: +stdenv.mkDerivation rec { + name = "e_dbus-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "1ifkijy4ap2mlqw2nd1dlvzlppyi7bnp15bxiy40nhdly8vhpbdl"; + }; + buildInputs = [ pkgconfig ecore eina evas ]; + propagatedBuildInputs = [ dbus_libs ]; + configureFlags = '' + --disable-edbus-test + --disable-edbus-test-client + --disable-edbus-notify-send + --disable-edbus-notify-test + ''; + meta = { + description = "Enlightenment's D-Bus wrapping and glue layer library"; + longDescription = '' + Enlightenment's E_Dbus is a set of wrappers around DBus APIs by + third party, so they can be easily used by EFL applications, + automatically providing Ecore/main loop integration, as well as + Eina data types. + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/desktops/e17/ecore/d.nix b/pkgs/desktops/e17/ecore/d.nix new file mode 100644 index 000000000000..73b318c4cde9 --- /dev/null +++ b/pkgs/desktops/e17/ecore/d.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl, pkgconfig, eina, evas, xproto, libX11, libXext }: +stdenv.mkDerivation rec { + name = "ecore-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "1vi03zxnsdnrjv1rh5r3v0si0b20ikrfb8hf5374i2sqvi1g65j0"; + }; + buildInputs = [ pkgconfig eina evas xproto ]; + propagatedBuildInputs = [ libX11 libXext ]; + meta = { + description = ""; + longDescription = '' + ''; + homepage = http://enlightenment.org/; + license = "BSD-style???"; + }; +} diff --git a/pkgs/desktops/e17/ecore/default.nix b/pkgs/desktops/e17/ecore/default.nix new file mode 100644 index 000000000000..004d708070c3 --- /dev/null +++ b/pkgs/desktops/e17/ecore/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchurl, pkgconfig, eina, evas, libX11, libXext }: +stdenv.mkDerivation rec { + name = "ecore-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "1vi03zxnsdnrjv1rh5r3v0si0b20ikrfb8hf5374i2sqvi1g65j0"; + }; + 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 + }; +} diff --git a/pkgs/desktops/e17/edje/default.nix b/pkgs/desktops/e17/edje/default.nix new file mode 100644 index 000000000000..3272963b8b63 --- /dev/null +++ b/pkgs/desktops/e17/edje/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pkgconfig, lua, eina, eet, evas, ecore, embryo }: +stdenv.mkDerivation rec { + name = "edje-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "0z7gjj4ccjr36ba763ijmjkya58fc173vpdw1m298zwhy8n4164j"; + }; + buildInputs = [ pkgconfig lua eina eet evas ecore embryo ]; + meta = { + description = "Enlightenment's abstract GUI layout and animation object library"; + longDescription = '' + Enlightenment's Edje is a complex graphical design & layout + library based on Evas that provides an abstraction layer between + the application code and the interface, while allowing extremely + flexible dynamic layouts and animations. + + In more popular terms, Edje makes every application that uses it + "skinable". + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/desktops/e17/eet/default.nix b/pkgs/desktops/e17/eet/default.nix new file mode 100644 index 000000000000..7f2809c0aa0a --- /dev/null +++ b/pkgs/desktops/e17/eet/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, pkgconfig, eina, zlib, libjpeg }: +stdenv.mkDerivation rec { + name = "eet-${version}"; + version = "1.4.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "1hlznlmgkgzxnkmc3qgqjrc62bmwqj5af8lsh59vac2gf4jnymnc"; + }; + buildInputs = [ pkgconfig eina zlib libjpeg ]; + meta = { + description = "Enlightenment's data encode/decode and storage library"; + longDescription = '' + Enlightenment's EET is a tiny library designed to write an + arbitary set of chunks of data to a file and optionally compress + each chunk (very much like a zip file) and allow fast + random-access reading of the file later on. EET files are + perfect for storing data that is written once (or rarely) and + read many times, especially when the program does not want to + have to read all the data in at once. + + Use this library when you need to pack C structure and you want + to retrieve it quickly with as few as possible memory use. You + can also use it to serialize data quickly and exchange them + between two program over ipc or network link. + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/desktops/e17/eeze/default.nix b/pkgs/desktops/e17/eeze/default.nix new file mode 100644 index 000000000000..3499d29dbb11 --- /dev/null +++ b/pkgs/desktops/e17/eeze/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl, pkgconfig, eina, ecore, udev }: +stdenv.mkDerivation rec { + name = "eeze-${version}"; + version = "1.0.2"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "0g6afhnl862clj1rfh0s4nzdnhdikylbalfp8zmsw56dj0zncynq"; + }; + buildInputs = [ pkgconfig eina ecore ]; + propagatedBuildInputs = [ udev ]; + meta = { + description = "Enlightenment's device abstraction library"; + longDescription = '' + Enlightenment's Eeze is a library for manipulating devices + through udev with a simple and fast api. It interfaces directly + with libudev, avoiding such middleman daemons as udisks/upower + or hal, to immediately gather device information the instant it + becomes known to the system. + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/desktops/e17/efreet/default.nix b/pkgs/desktops/e17/efreet/default.nix new file mode 100644 index 000000000000..e1e8d34197fd --- /dev/null +++ b/pkgs/desktops/e17/efreet/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, pkgconfig, eina, eet, ecore }: +stdenv.mkDerivation rec { + name = "efreet-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "0fakczsrr1idyvrp04mxw51ww017kn65xa77vq8wka4js8y0nagi"; + }; + buildInputs = [ pkgconfig eina eet ecore ]; + meta = { + description = "Enlightenment's standards handling for freedesktop.org standards"; + longDescription = '' + Enlightenment's Efreet is a library designed to help apps work + several of the Freedesktop.org standards regarding Icons, + Desktop files and Menus. To that end it implements the following + specifications: + + * XDG Base Directory Specification + * Icon Theme Specification + * Desktop Entry Specification + * Desktop Menu Specification + * FDO URI Specification + * Shared Mime Info Specification + * Trash Specification + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/desktops/e17/eina/default.nix b/pkgs/desktops/e17/eina/default.nix new file mode 100644 index 000000000000..b4c3d0a72919 --- /dev/null +++ b/pkgs/desktops/e17/eina/default.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl }: +stdenv.mkDerivation rec { + name = "eina-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "1v2z1l6nqr7hnp5gki3972kprlvylpalp5wq9xdppm250z91kaas"; + }; + meta = { + description = "Enlightenment's core data structure library"; + longDescription = '' + Enlightenment's Eina is a core data structure and common utility + library. + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.lgpl21; + }; +} diff --git a/pkgs/desktops/e17/embryo/default.nix b/pkgs/desktops/e17/embryo/default.nix new file mode 100644 index 000000000000..e23b3f4b0b15 --- /dev/null +++ b/pkgs/desktops/e17/embryo/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchurl }: +stdenv.mkDerivation rec { + name = "embryo-${version}"; + version = "1.0.0"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "0ch9vps83s892vda1ss1cf1fbgzff9p51df2fip7fqlj8y1shvvx"; + }; + meta = { + description = "Enlightenment's small Pawn based virtual machine and compiler"; + longDescription = '' + Enlightenment's Embryo is a tiny library designed to interpret + limited Small programs compiled by the included compiler, + embryo_cc. It is mostly a cleaned up and smaller version of the + original Small abstract machine. The compiler is mostly + untouched. + ''; + homepage = http://enlightenment.org/; + license = with stdenv.lib.licenses; [ bsd2 bsd3 ]; # not sure + }; +} diff --git a/pkgs/desktops/e17/enlightenment/default.nix b/pkgs/desktops/e17/enlightenment/default.nix new file mode 100644 index 000000000000..d3d74cac82a9 --- /dev/null +++ b/pkgs/desktops/e17/enlightenment/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchurl, pkgconfig, eina, eet, evas, ecore, edje, efreet, e_dbus }: +stdenv.mkDerivation rec { + name = "enlightenment-0.16.999.55225"; + src = fetchurl { + url = "http://download.enlightenment.org/snapshots/2010-12-03/${name}.tar.gz"; + sha256 = "1cv701fidp9mx3g5m9klmzsp0fj149rb133v1w76rzms3a0wljl1"; + }; + buildInputs = [ pkgconfig eina eet ecore evas edje efreet e_dbus ]; + configureFlags = "--with-profile=FAST_PC"; + meta = { + description = "Enlightenment, the window manager"; + longDescription = '' + The Enlightenment Desktop shell provides an efficient yet + breathtaking window manager based on the Enlightenment + Foundation Libraries along with other essential desktop + components like a file manager, desktop icons and widgets. + + It boasts a un-precedented level of theme-ability while still + being capable of performing on older hardware or embedded + devices. + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/desktops/e17/evas/default.nix b/pkgs/desktops/e17/evas/default.nix new file mode 100644 index 000000000000..9d7edc89c21c --- /dev/null +++ b/pkgs/desktops/e17/evas/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, pkgconfig, eina, freetype }: +stdenv.mkDerivation rec { + name = "evas-${version}"; + version = "1.0.1"; + src = fetchurl { + url = "http://download.enlightenment.org/releases/${name}.tar.gz"; + sha256 = "0xkwyvxy32dwja0i3j8r8bzlybjwlrgmrhcri1bscp3aaj75x2rx"; + }; + buildInputs = [ pkgconfig eina freetype ]; + meta = { + description = "Enlightenment's canvas and scenegraph rendering library"; + longDescription = '' + Enlightenment's Evas is a clean display canvas API that + implements a scene graph, not an immediate-mode rendering + target, is cross-platform, for several target display systems + that can draw anti-aliased text, smooth super and sub-sampled + scaled images, alpha-blend objects and much more. + ''; + homepage = http://enlightenment.org/; + license = stdenv.lib.licenses.bsd2; # not sure + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 98d38c8d14b7..6c16d51f9960 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7832,6 +7832,11 @@ let enlightenment = callPackage ../desktops/enlightenment { }; + # e17 = recurseIntoAttrs ( + # let callPackage = newScope pkgs.e17; in + # import ../desktops/e17 { inherit callPackage pkgs; } + # ); + gnome28 = recurseIntoAttrs (import ../desktops/gnome-2.28 pkgs); gnome = gnome28; -- cgit 1.4.1