Fresh GTK

svn path=/nixpkgs/trunk/; revision=17499
This commit is contained in:
Michael Raskin 2009-09-29 13:39:14 +00:00
parent d993292f2e
commit 48e7d267d0
9 changed files with 281 additions and 0 deletions

View File

@ -0,0 +1,33 @@
args: with args;
stdenv.mkDerivation rec {
name = "atk-1.28.0";
src = fetchurl {
url = "mirror://gnome/sources/atk/1.28/${name}.tar.bz2";
sha256 = "11zyamivv7fcj9ap3w3bn3gm89mkni9waf51fx75zmfjh3jrznp4";
};
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;
};
}

View File

@ -0,0 +1,20 @@
args: with args;
rec {
glib = (import ./glib) args;
atk = (import ./atk) (args // { inherit glib; });
pango = (import ./pango) (args // { inherit glib cairo; });
gtk = (import ./gtk+) (args // {
inherit glib atk pango;
});
glibmm = (import ./glibmm) (args // { inherit glib; });
pangomm = (import ./pangomm) (args // { inherit pango glibmm cairomm; });
gtkmm = (import ./gtkmm) (args // { inherit gtk atk glibmm pangomm; });
}

View File

@ -0,0 +1,32 @@
args: with args;
stdenv.mkDerivation rec {
name = "glib-2.21.4";
src = fetchurl {
url = "mirror://gnome/sources/glib/2.21/${name}.tar.bz2";
sha256 = "b772e4bdf1b28dd23cdb4c4d7f1d219ddb748226d0207e57c75992bf0100182d";
};
buildInputs = [pkgconfig gettext perl];
# The nbd package depends on a static version of this library; hence
# the default configure flag --disable-static is switched off.
dontDisableStatic = true;
configureFlags = "--enable-static --enable-shared";
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+";
};
}

View File

@ -0,0 +1,35 @@
args: with args;
stdenv.mkDerivation rec {
name = "glib-2.22.0";
src = fetchurl {
url = "mirror://gnome/sources/glib/2.22/${name}.tar.bz2";
sha256 = "0wd6r0bdrrd9k1ipryf5dfk8cf5vcnhiib49s5x5xskwzaaxlz7p";
};
buildInputs = [pkgconfig gettext perl];
# The nbd package depends on a static version of this library; hence
# the default configure flag --disable-static is switched off.
dontDisableStatic = true;
configureFlags = "--enable-static --enable-shared";
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;
};
}

View File

@ -0,0 +1,24 @@
args: with args;
stdenv.mkDerivation rec {
name = "glibmm-2.22.1";
src = fetchurl {
url = "mirror://gnome/sources/glibmm/2.22/${name}.tar.bz2";
sha256 = "1h5nxhh6xr1m3jn6bawl3vq5i285k3kdpzqa65zxmxydzm5gy1gi";
};
buildInputs = [pkgconfig];
propagatedBuildInputs = [glib libsigcxx];
meta = {
description = "C++ interface to the GLib library";
homepage = http://gtkmm.org/;
license = "LGPLv2+";
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -0,0 +1,40 @@
args: with args;
stdenv.mkDerivation rec {
name = "gtk+-2.18.0";
src = fetchurl {
url = "mirror://gnome/sources/gtk+/2.18/${name}.tar.bz2";
sha256 = "0hfjib98m47nrmv31h6k82fz35hzahykhifdsi5afy5yglrfkz05";
};
buildInputs = [ pkgconfig perl jasper ];
propagatedBuildInputs = [
x11 glib atk pango libtiff libjpeg libpng cairo libXrandr
] ++ stdenv.lib.optional xineramaSupport libXinerama;
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;
};
}

View File

@ -0,0 +1,34 @@
args: with args;
stdenv.mkDerivation rec {
name = "gtkmm-2.18.1";
src = fetchurl {
url = "mirror://gnome/sources/gtkmm/2.18/${name}.tar.bz2";
sha256 = "09d66g7i6acfy5gijml54kw5gvynmrq04zl02x2k9aixpa9xybql";
};
buildInputs = [pkgconfig];
propagatedBuildInputs = [ glibmm gtk atk cairomm pangomm ];
meta = {
description = "C++ interface to the GTK+ graphical user interface library";
longDescription = ''
gtkmm is the official C++ interface for the popular GUI library
GTK+. Highlights include typesafe callbacks, and a
comprehensive set of widgets that are easily extensible via
inheritance. You can create user interfaces either in code or
with the Glade User Interface designer, using libglademm.
There's extensive documentation, including API reference and a
tutorial.
'';
homepage = http://gtkmm.org/;
license = "LGPLv2+";
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -0,0 +1,32 @@
args: with args;
stdenv.mkDerivation rec {
name = "pango-1.26.0";
src = fetchurl {
url = "mirror://gnome/sources/pango/1.26/${name}.tar.bz2";
sha256 = "1hx6v6w3xk9wfcrb26gg7rrfl6m6ykxk2bqm67aqdzql4vysxgz1";
};
buildInputs = [pkgconfig];
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.linux;
};
}

View File

@ -0,0 +1,31 @@
args: with args;
stdenv.mkDerivation rec {
name ="pangomm-2.26.0";
src = fetchurl {
url = "mirror://gnome/sources/pangomm/2.26/${name}.tar.bz2";
sha256 = "0ph93cjbzmb36k6a9cjd1pcch0ba4bzq1jnf69f1xj0j5kjfn9mz";
};
buildInputs = [ pkgconfig ];
propagatedBuildInputs = [ pango glibmm cairomm libpng ];
meta = {
description = "C++ interface to the Pango text rendering library";
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.linux;
};
}