mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-21 13:10:33 +00:00
Add gtk-3.x libraries
Let hydra build it but do not show in nix-env -qa svn path=/nixpkgs/trunk/; revision=29398
This commit is contained in:
parent
03e747c41a
commit
de89582238
37
pkgs/development/libraries/atk/2.1.x.nix
Normal file
37
pkgs/development/libraries/atk/2.1.x.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{ stdenv, fetchurl_gnome, pkgconfig, perl, glib, xz }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = src.pkgname;
|
||||
|
||||
src = fetchurl_gnome {
|
||||
project = "atk";
|
||||
major = "2"; minor = "1"; patchlevel = "5"; extension = "xz";
|
||||
sha256 = "005b9sq8p9ykp4f35b59si3mcbw4p9hyxps1ij4x73p07rrbf0z9";
|
||||
};
|
||||
|
||||
buildNativeInputs = [ pkgconfig perl xz ];
|
||||
|
||||
propagatedBuildInputs = [ glib ];
|
||||
|
||||
postInstall = "rm -rf $out/share/gtk-doc";
|
||||
|
||||
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 = with stdenv.lib.maintainers; [ raskin urkud ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
|
||||
}
|
49
pkgs/development/libraries/glib/2.29.x.nix
Normal file
49
pkgs/development/libraries/glib/2.29.x.nix
Normal file
|
@ -0,0 +1,49 @@
|
|||
{ stdenv, fetchurl_gnome, pkgconfig, gettext, perl, libiconv, zlib, xz, libffi
|
||||
, python }:
|
||||
|
||||
# TODO:
|
||||
# * Add gio-module-fam
|
||||
# Problem: cyclic dependency on gamin
|
||||
# Possible solution: build as a standalone module, set env. vars
|
||||
# * Make it build without python
|
||||
# Problem: an example (test?) program needs it.
|
||||
# Possible solution: disable compilation of this example somehow
|
||||
# Reminder: add 'sed -e 's@python2\.[0-9]@python@' -i
|
||||
# $out/bin/gtester-report' to postInstall if this is solved
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = src.pkgname;
|
||||
|
||||
src = fetchurl_gnome {
|
||||
project = "glib";
|
||||
major = "2"; minor = "29"; patchlevel = "18"; extension = "xz";
|
||||
sha256 = "1hc198x625w1w8if1xlvqyjs9aazc27s0l374kqc4sr51wcpbxpy";
|
||||
};
|
||||
|
||||
# configure script looks for d-bus but it is only needed for tests
|
||||
buildInputs = stdenv.lib.optional (!stdenv.isLinux) libiconv;
|
||||
buildNativeInputs = [ perl pkgconfig gettext xz python ];
|
||||
|
||||
propagatedBuildInputs = [ zlib libffi ];
|
||||
|
||||
# glib buildsystem fails to find python, thus hardcodes python2.4 in #!
|
||||
postInstall = ''rm -rvf $out/share/gtk-doc'';
|
||||
|
||||
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 = with stdenv.lib.maintainers; [raskin urkud];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
55
pkgs/development/libraries/gtk+/3.1.x.nix
Normal file
55
pkgs/development/libraries/gtk+/3.1.x.nix
Normal file
|
@ -0,0 +1,55 @@
|
|||
{ stdenv, fetchurl_gnome, pkgconfig, glib, atk, pango, cairo, perl, xlibs
|
||||
, gdk_pixbuf, xz
|
||||
, xineramaSupport ? true
|
||||
, cupsSupport ? true, cups ? null
|
||||
}:
|
||||
|
||||
assert xineramaSupport -> xlibs.libXinerama != null;
|
||||
assert cupsSupport -> cups != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = src.pkgname;
|
||||
|
||||
src = fetchurl_gnome {
|
||||
project = "gtk+";
|
||||
major = "3"; minor = "1"; patchlevel = "16"; extension = "xz";
|
||||
sha256 = "15arbf75qpchr9wrawb3zkn52rzf5wm2qv4dq10zfzlflimrq2rg";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildNativeInputs = [ perl pkgconfig xz ];
|
||||
|
||||
propagatedBuildInputs =
|
||||
[ xlibs.xlibs glib atk pango gdk_pixbuf cairo
|
||||
xlibs.libXrandr xlibs.libXrender xlibs.libXcomposite xlibs.libXi
|
||||
]
|
||||
++ stdenv.lib.optional xineramaSupport xlibs.libXinerama
|
||||
++ stdenv.lib.optionals cupsSupport [ cups ];
|
||||
|
||||
configureFlags = "--with-xinput=yes";
|
||||
|
||||
postInstall = "rm -rf $out/share/gtk-doc";
|
||||
|
||||
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 = with stdenv.lib.maintainers; [urkud raskin];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
37
pkgs/development/libraries/pango/1.29.x.nix
Normal file
37
pkgs/development/libraries/pango/1.29.x.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{ stdenv, fetchurl_gnome, pkgconfig, gettext, x11, glib, cairo, libpng, xz }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = src.pkgname;
|
||||
|
||||
src = fetchurl_gnome {
|
||||
project = "pango";
|
||||
major = "1"; minor = "29"; patchlevel = "3"; extension = "xz";
|
||||
sha256 = "0vp88j3ghngkkc4dpya443qng0bb1g86g54bcwf4lf3zmk6r1nmh";
|
||||
};
|
||||
|
||||
buildInputs = stdenv.lib.optional stdenv.isDarwin gettext;
|
||||
|
||||
buildNativeInputs = [ pkgconfig xz ];
|
||||
|
||||
propagatedBuildInputs = [ x11 glib cairo libpng ];
|
||||
|
||||
postInstall = "rm -rf $out/share/gtk-doc";
|
||||
|
||||
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 = with stdenv.lib.maintainers; [ raskin urkud ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
|
@ -3564,6 +3564,23 @@ let
|
|||
|
||||
});
|
||||
|
||||
gtkLibs3x = let callPackage = newScope pkgs.gtkLibs3x; in {
|
||||
glib = callPackage ../development/libraries/glib/2.29.x.nix { };
|
||||
|
||||
gdk_pixbuf = callPackage ../development/libraries/gdk-pixbuf/2.24.x.nix { };
|
||||
|
||||
atk = callPackage ../development/libraries/atk/2.1.x.nix { };
|
||||
|
||||
cairo = callPackage ../development/libraries/cairo { };
|
||||
|
||||
pango = callPackage ../development/libraries/pango/1.29.x.nix { };
|
||||
|
||||
gtk = callPackage ../development/libraries/gtk+/3.1.x.nix { };
|
||||
|
||||
# Let hydra build gtk-3.x but do not show this to users yet
|
||||
recurseForRelease = true;
|
||||
};
|
||||
|
||||
gtkmozembedsharp = callPackage ../development/libraries/gtkmozembed-sharp {
|
||||
inherit (gnome) gtk;
|
||||
gtksharp = gtksharp2;
|
||||
|
|
Loading…
Reference in a new issue