From 0695a9707c74dc59b405a991f7882661e43110cc Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sun, 18 Jul 2010 23:22:59 +0000 Subject: [PATCH] * GTK+ 2.20, Glib 2.24 etc. svn path=/nixpkgs/branches/x-updates/; revision=22652 --- pkgs/development/libraries/atk/1.30.x.nix | 33 ++++++++++++++ pkgs/development/libraries/glib/2.24.x.nix | 30 +++++++++++++ pkgs/development/libraries/gtk+/2.20.x.nix | 49 +++++++++++++++++++++ pkgs/development/libraries/pango/1.28.x.nix | 32 ++++++++++++++ pkgs/top-level/all-packages.nix | 36 ++++++++++++++- 5 files changed, 179 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/atk/1.30.x.nix create mode 100644 pkgs/development/libraries/glib/2.24.x.nix create mode 100644 pkgs/development/libraries/gtk+/2.20.x.nix create mode 100644 pkgs/development/libraries/pango/1.28.x.nix diff --git a/pkgs/development/libraries/atk/1.30.x.nix b/pkgs/development/libraries/atk/1.30.x.nix new file mode 100644 index 000000000000..4f370fd7a2b4 --- /dev/null +++ b/pkgs/development/libraries/atk/1.30.x.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl, pkgconfig, perl, glib }: + +stdenv.mkDerivation rec { + name = "atk-1.30.0"; + + src = fetchurl { + url = "mirror://gnome/sources/atk/1.30/${name}.tar.bz2"; + sha256 = "92b9b1213cafc68fe9c3806273b968c26423237d7b1f631dd83dc5270b8c268c"; + }; + + buildInputs = [ pkgconfig perl ]; + propagatedBuildInputs = [ glib ]; + + meta = { + description = "ATK, the accessibility toolkit"; + + longDescription = '' + ATK is the Accessibility Toolkit. It provides a set of generic + interfaces allowing accessibility technologies such as screen + readers to interact with a graphical user interface. Using the + ATK interfaces, accessibility tools have full access to view and + control running applications. + ''; + + homepage = http://library.gnome.org/devel/atk/; + + license = "LGPLv2+"; + + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; + +} diff --git a/pkgs/development/libraries/glib/2.24.x.nix b/pkgs/development/libraries/glib/2.24.x.nix new file mode 100644 index 000000000000..bc17f4b906ca --- /dev/null +++ b/pkgs/development/libraries/glib/2.24.x.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchurl, pkgconfig, gettext, perl, libiconv ? null, zlib }: + +stdenv.mkDerivation rec { + name = "glib-2.24.1"; + + src = fetchurl { + url = "mirror://gnome/sources/glib/2.24/${name}.tar.bz2"; + sha256 = "014c3da960bf17117371075c16495f05f36501db990851ceea658f15d2ea6d04"; + }; + + buildInputs = [ pkgconfig gettext perl libiconv zlib ]; + + meta = { + description = "GLib, a C library of programming buildings blocks"; + + longDescription = '' + GLib provides the core application building blocks for libraries + and applications written in C. It provides the core object + system used in GNOME, the main loop implementation, and a large + set of utility functions for strings and common data structures. + ''; + + homepage = http://www.gtk.org/; + + license = "LGPLv2+"; + + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/gtk+/2.20.x.nix b/pkgs/development/libraries/gtk+/2.20.x.nix new file mode 100644 index 000000000000..38537aae5956 --- /dev/null +++ b/pkgs/development/libraries/gtk+/2.20.x.nix @@ -0,0 +1,49 @@ +{ stdenv, fetchurl, pkgconfig, glib, atk, pango, libtiff, libjpeg +, libpng, cairo, perl, jasper, xlibs +, xineramaSupport ? true +, cupsSupport ? true, cups ? null +}: + +assert xineramaSupport -> xlibs.libXinerama != null; +assert cupsSupport -> cups != null; + +stdenv.mkDerivation rec { + name = "gtk+-2.20.1"; + + src = fetchurl { + url = "mirror://gnome/sources/gtk+/2.20/${name}.tar.bz2"; + sha256 = "0e081731d21e34ff45c82199490c2889504fa8b3c7e117c043e82ababaec0f65"; + }; + + buildNativeInputs = [ perl ]; + buildInputs = [ pkgconfig jasper ]; + + propagatedBuildInputs = + [ xlibs.xlibs glib atk pango libtiff libjpeg libpng cairo xlibs.libXrandr ] + ++ stdenv.lib.optional xineramaSupport xlibs.libXinerama + ++ stdenv.lib.optionals cupsSupport [ cups ]; + + passthru = { inherit libtiff libjpeg libpng; }; + + meta = { + description = "A multi-platform toolkit for creating graphical user interfaces"; + + longDescription = '' + GTK+ is a highly usable, feature rich toolkit for creating + graphical user interfaces which boasts cross platform + compatibility and an easy to use API. GTK+ it is written in C, + but has bindings to many other popular programming languages + such as C++, Python and C# among others. GTK+ is licensed + under the GNU LGPL 2.1 allowing development of both free and + proprietary software with GTK+ without any license fees or + royalties. + ''; + + homepage = http://www.gtk.org/; + + license = "LGPLv2+"; + + maintainers = [stdenv.lib.maintainers.raskin]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/pango/1.28.x.nix b/pkgs/development/libraries/pango/1.28.x.nix new file mode 100644 index 000000000000..14d425b23a26 --- /dev/null +++ b/pkgs/development/libraries/pango/1.28.x.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchurl, pkgconfig, gettext, x11, glib, cairo, libpng }: + +stdenv.mkDerivation rec { + name = "pango-1.28.1"; + + src = fetchurl { + url = "mirror://gnome/sources/pango/1.28/${name}.tar.bz2"; + sha256 = "8f3eaab506f613dd25bb1fa65ea87a145d523d066d90c227bdb3016523451bc2"; + }; + + buildInputs = [ pkgconfig ] ++ stdenv.lib.optional (stdenv.system == "i686-darwin") gettext; + + propagatedBuildInputs = [ x11 glib cairo libpng ]; + + meta = { + description = "A library for laying out and rendering of text, with an emphasis on internationalization"; + + longDescription = '' + Pango is a library for laying out and rendering of text, with an + emphasis on internationalization. Pango can be used anywhere + that text layout is needed, though most of the work on Pango so + far has been done in the context of the GTK+ widget toolkit. + Pango forms the core of text and font handling for GTK+-2.x. + ''; + + homepage = http://www.pango.org/; + license = "LGPLv2+"; + + maintainers = [ stdenv.lib.maintainers.raskin ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b43a5e59582b..6fe0bcabfc80 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4202,7 +4202,7 @@ let inherit (gnome) gtk; }; - gtkLibs = recurseIntoAttrs gtkLibs218; + gtkLibs = recurseIntoAttrs gtkLibs220; glib = gtkLibs.glib; @@ -4285,6 +4285,40 @@ let }; + gtkLibs220 = rec { + + glib = import ../development/libraries/glib/2.24.x.nix { + inherit fetchurl stdenv pkgconfig gettext perl zlib; + libiconv = if (stdenv.system == "i686-freebsd") then libiconv else null; + }; + + glibmm = import ../development/libraries/glibmm/2.22.x.nix { + inherit fetchurl stdenv pkgconfig glib libsigcxx; + }; + + atk = import ../development/libraries/atk/1.30.x.nix { + inherit fetchurl stdenv pkgconfig perl glib; + }; + + pango = import ../development/libraries/pango/1.28.x.nix { + inherit fetchurl stdenv pkgconfig gettext x11 glib cairo libpng; + }; + + pangomm = import ../development/libraries/pangomm/2.26.x.nix { + inherit fetchurl stdenv pkgconfig pango glibmm cairomm libpng; + }; + + gtk = import ../development/libraries/gtk+/2.20.x.nix { + inherit fetchurl stdenv pkgconfig perl jasper glib atk pango + libtiff libjpeg libpng cairo xlibs cups; + }; + + gtkmm = import ../development/libraries/gtkmm/2.18.x.nix { + inherit fetchurl stdenv pkgconfig gtk atk glibmm cairomm pangomm; + }; + + }; + gtkmozembedsharp = import ../development/libraries/gtkmozembed-sharp { inherit fetchurl stdenv mono pkgconfig monoDLLFixer; inherit (gnome) gtk;