From 78310258e332209d7b4d86b353c7dfab3d31a75a Mon Sep 17 00:00:00 2001 From: Antono Vasiljev Date: Tue, 10 Jul 2012 19:03:13 +0300 Subject: [PATCH] Attempt to define isolated attrset for gnome-3 --- .../gnome-3/core/at-spi2-atk/default.nix | 14 +++++ .../gnome-3/core/at-spi2-core/default.nix | 14 +++++ pkgs/desktops/gnome-3/core/atk/default.nix | 38 +++++++++++ pkgs/desktops/gnome-3/core/gconf/default.nix | 22 +++++++ .../gnome-3/core/gdk-pixbuf/default.nix | 33 ++++++++++ pkgs/desktops/gnome-3/core/glib/default.nix | 44 +++++++++++++ .../gnome-3/core/gnome-terminal/default.nix | 20 ++++++ .../core/gobject-introspection/default.nix | 28 +++++++++ .../gsettings-desktop-schemas/default.nix | 21 +++++++ pkgs/desktops/gnome-3/core/gtk/default.nix | 63 +++++++++++++++++++ pkgs/desktops/gnome-3/core/pango/default.nix | 41 ++++++++++++ pkgs/desktops/gnome-3/core/vte/default.nix | 46 ++++++++++++++ pkgs/desktops/gnome-3/core/zenity/default.nix | 20 ++++++ pkgs/desktops/gnome-3/default.nix | 49 +++++++++++++++ .../gnome-3/desktop/gnome-desktop/default.nix | 18 ++++++ .../desktop/gnome-dictionary/default.nix | 15 +++++ .../gnome-3/desktop/rarian/default.nix | 11 ++++ .../gnome-3/desktop/scrollkeeper/default.nix | 18 ++++++ pkgs/top-level/all-packages.nix | 5 ++ 19 files changed, 520 insertions(+) create mode 100644 pkgs/desktops/gnome-3/core/at-spi2-atk/default.nix create mode 100644 pkgs/desktops/gnome-3/core/at-spi2-core/default.nix create mode 100644 pkgs/desktops/gnome-3/core/atk/default.nix create mode 100644 pkgs/desktops/gnome-3/core/gconf/default.nix create mode 100644 pkgs/desktops/gnome-3/core/gdk-pixbuf/default.nix create mode 100644 pkgs/desktops/gnome-3/core/glib/default.nix create mode 100644 pkgs/desktops/gnome-3/core/gnome-terminal/default.nix create mode 100644 pkgs/desktops/gnome-3/core/gobject-introspection/default.nix create mode 100644 pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/default.nix create mode 100644 pkgs/desktops/gnome-3/core/gtk/default.nix create mode 100644 pkgs/desktops/gnome-3/core/pango/default.nix create mode 100644 pkgs/desktops/gnome-3/core/vte/default.nix create mode 100644 pkgs/desktops/gnome-3/core/zenity/default.nix create mode 100644 pkgs/desktops/gnome-3/default.nix create mode 100644 pkgs/desktops/gnome-3/desktop/gnome-desktop/default.nix create mode 100644 pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix create mode 100644 pkgs/desktops/gnome-3/desktop/rarian/default.nix create mode 100644 pkgs/desktops/gnome-3/desktop/scrollkeeper/default.nix diff --git a/pkgs/desktops/gnome-3/core/at-spi2-atk/default.nix b/pkgs/desktops/gnome-3/core/at-spi2-atk/default.nix new file mode 100644 index 00000000000..a26928fadf7 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/at-spi2-atk/default.nix @@ -0,0 +1,14 @@ +{ stdenv, fetchurl, python, pkgconfig, popt, atk, libX11, libICE, xlibs, libXi +, intltool, dbus_glib }: + +stdenv.mkDerivation { + name = "at-spi2-atk-2.5.3"; + + src = fetchurl { + url = mirror://gnome/sources/at-spi2-atk/2.5/at-spi2-atk-2.5.3.tar.xz; + sha256 = "16y6q0v3va7r77ns1r6w4mg3rvyxmnyzx1b3n0wqjzmqkd8avgmx"; + }; + + buildInputs = [ python pkgconfig popt atk libX11 libICE xlibs.libXtst libXi + intltool dbus_glib ]; +} diff --git a/pkgs/desktops/gnome-3/core/at-spi2-core/default.nix b/pkgs/desktops/gnome-3/core/at-spi2-core/default.nix new file mode 100644 index 00000000000..5d7170f4450 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/at-spi2-core/default.nix @@ -0,0 +1,14 @@ +{ stdenv, fetchurl, python, pkgconfig, popt, libX11, libICE, xlibs, libXi +, intltool, dbus_glib }: + +stdenv.mkDerivation { + name = "at-spi2-core-2.5.3"; + + src = fetchurl { + url = mirror://gnome/sources/at-spi2-core/2.5/at-spi2-core-2.5.3.tar.xz; + sha256 = "0g1w8k13xjz6jcbkdy3h8w4x8g5g1f0nwykidairvfyi6yi9xdpm"; + }; + + buildInputs = [ python pkgconfig popt libX11 libICE xlibs.libXtst libXi + intltool dbus_glib ]; +} diff --git a/pkgs/desktops/gnome-3/core/atk/default.nix b/pkgs/desktops/gnome-3/core/atk/default.nix new file mode 100644 index 00000000000..98ff11cd12e --- /dev/null +++ b/pkgs/desktops/gnome-3/core/atk/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchurl, pkgconfig, perl, gnome3 }: + +stdenv.mkDerivation rec { + versionMajor = "2.5"; + versionMinor = "3"; + name = "atk-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/atk/${versionMajor}/atk-${versionMajor}.${versionMinor}.tar.xz"; + sha256 = "04v3hzdgp2cajpgkbgr36wlxcdbpzzywyl6g2fhhyjgm9vrqw4dc"; + }; + + buildNativeInputs = [ pkgconfig perl ]; + + propagatedBuildInputs = [ gnome3.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 antono ]; + platforms = stdenv.lib.platforms.linux; + }; + +} diff --git a/pkgs/desktops/gnome-3/core/gconf/default.nix b/pkgs/desktops/gnome-3/core/gconf/default.nix new file mode 100644 index 00000000000..cfe2b2e4465 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gconf/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, pkgconfig, dbus_glib, gnome3, libxml2 +, intltool, dbus_libs, polkit }: + +stdenv.mkDerivation rec { + + versionMajor = "3.2"; + versionMinor = "5"; + moduleName = "GConf"; + + origName = "${moduleName}-${versionMajor}.${versionMinor}"; + + name = "gconf-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${origName}.tar.xz"; + sha256 = "1ijqks0jxc4dyfxg4vnbqds4aj6miyahlsmlqlkf2bi1798akpjd"; + }; + + buildInputs = [ dbus_libs dbus_glib libxml2 polkit gnome3.gtk ]; + propagatedBuildInputs = [ gnome3.glib ]; + buildNativeInputs = [ pkgconfig intltool ]; +} diff --git a/pkgs/desktops/gnome-3/core/gdk-pixbuf/default.nix b/pkgs/desktops/gnome-3/core/gdk-pixbuf/default.nix new file mode 100644 index 00000000000..6daea5abf02 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gdk-pixbuf/default.nix @@ -0,0 +1,33 @@ +{ stdenv, fetchurl, pkgconfig, gnome3, libtiff, libjpeg, libpng, libX11, xz, jasper }: + +stdenv.mkDerivation rec { + versionMajor = "2.26"; + versionMinor = "1"; + + name = "gdk-pixbuf-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/gdk-pixbuf/${versionMajor}/gdk-pixbuf-${versionMajor}.${versionMinor}.tar.xz"; + sha256 = "1fn79r5vk1ck6xd5f7dgckbfhf2xrqq6f3389jx1bk6rb0mz22m6"; + }; + + # !!! We might want to factor out the gdk-pixbuf-xlib subpackage. + buildInputs = [ libX11 ]; + + buildNativeInputs = [ pkgconfig ]; + + propagatedBuildInputs = [ gnome3.glib libtiff libjpeg libpng jasper ]; + + configureFlags = "--with-libjasper --with-x11"; + + postInstall = "rm -rf $out/share/gtk-doc"; + + meta = { + description = "A library for image loading and manipulation"; + + homepage = http://library.gnome.org/devel/gdk-pixbuf/; + + maintainers = [ stdenv.lib.maintainers.antono ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/gnome-3/core/glib/default.nix b/pkgs/desktops/gnome-3/core/glib/default.nix new file mode 100644 index 00000000000..8d60e48ffee --- /dev/null +++ b/pkgs/desktops/gnome-3/core/glib/default.nix @@ -0,0 +1,44 @@ +{ stdenv, fetchurl, pkgconfig, gettext, perl, libiconv, zlib, libffi, python, pcre }: + +stdenv.mkDerivation rec { + versionMajor = "2.33"; + versionMinor = "3"; + moduleName = "glib"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "1409vc8ac296x341s80q36qvgbzpwpcvxg2xdis5w1vzzxfnkqja"; + }; + + # configure script looks for d-bus but it is only needed for tests + buildInputs = [ pcre ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv; + buildNativeInputs = [ perl pkgconfig gettext python ]; + + propagatedBuildInputs = [ zlib libffi ]; + + configureFlags = "--disable-fam"; + + passthru.gioModuleDir = "lib/gio/modules"; + + 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 antono ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix new file mode 100644 index 00000000000..ccd827b8d5d --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, pkgconfig, cairo, libxml2, libxslt, gnome3, pango +, gnome_doc_utils, intltool, libX11, which, GConf3 }: + +stdenv.mkDerivation rec { + + versionMajor = "3.4"; + versionMinor = "1.1"; + + name = "gnome-terminal-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-terminal/${versionMajor}/${name}.tar.xz"; + sha256 = "1p9zqjmkxryf2kyghhhwwpsh4kd8y1jzzwc9zxghmpxszi9a5m0l"; + }; + + configureFlags = "--disable-scrollkeeper"; + buildInputs = [ gnome3.gtk gnome3.gsettings_desktop_schemas gnome3.vte GConf3 ]; + + buildNativeInputs = [ pkgconfig intltool gnome_doc_utils which ]; +} diff --git a/pkgs/desktops/gnome-3/core/gobject-introspection/default.nix b/pkgs/desktops/gnome-3/core/gobject-introspection/default.nix new file mode 100644 index 00000000000..b630e210762 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gobject-introspection/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, glib, flex, bison, pkgconfig, libffi, python, cairo }: + +stdenv.mkDerivation rec { + + versionMajor = "1.33"; + versionMinor = "3"; + moduleName = "gobject-introspection"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "1dziqpas9hg2nkyzy6l53mrjnp2argfszj4cqzdw7ia0zfccmc4q"; + }; + + buildInputs = [ flex bison glib pkgconfig python ]; + propagatedBuildInputs = [ libffi ]; + + postInstall = "rm -rf $out/share/gtk-doc"; + + meta = with stdenv.lib; { + maintainers = [ maintainers.antono ]; + platforms = platforms.linux; + homepage = http://live.gnome.org/GObjectIntrospection; + }; + + configureFlags = [ "--disable-tests" ]; +} diff --git a/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/default.nix b/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/default.nix new file mode 100644 index 00000000000..4de69511fd1 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/default.nix @@ -0,0 +1,21 @@ +{ stdenv, fetchurl, pkgconfig, cairo, libxml2, libxslt, gnome3, pango +, gnome_doc_utils, intltool, libX11, which }: + +stdenv.mkDerivation rec { + + versionMajor = "3.5"; + versionMinor = "3"; + moduleName = "gsettings-desktop-schemas"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "0vxbpwqvm55a4ssaddfsw2jy0q8bvsv8wbjps4yyyi9iykfylwli"; + }; + + configureFlags = "--disable-scrollkeeper"; + buildInputs = [ gnome3.glib libxml2 libxslt libX11 ]; + + buildNativeInputs = [ pkgconfig intltool gnome_doc_utils which ]; +} diff --git a/pkgs/desktops/gnome-3/core/gtk/default.nix b/pkgs/desktops/gnome-3/core/gtk/default.nix new file mode 100644 index 00000000000..6fb9d05ece8 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/gtk/default.nix @@ -0,0 +1,63 @@ +{ stdenv, fetchurl, pkgconfig, gnome3, cairo, perl, xlibs +, xz +, xineramaSupport ? true +, cupsSupport ? true, cups ? null +}: + +assert xineramaSupport -> xlibs.libXinerama != null; +assert cupsSupport -> cups != null; + +stdenv.mkDerivation rec { + versionMajor = "3.5"; + versionMinor = "6"; + moduleName = "gtk+"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "1088d5n3yzzjxm13c29sys83m28dmd5b95i1wxc6459vq2d4l14g"; + }; + + enableParallelBuilding = true; + + configureFlags = + [ "--without-atk-bridge" + "--enable-gtk-doc-html=no" + "--enable-x11-backend" + "--disable-tests" + ]; + + buildNativeInputs = [ perl pkgconfig ]; + + propagatedBuildInputs = + [ xlibs.xlibs gnome3.glib gnome3.atk gnome3.gdk_pixbuf gnome3.pango cairo + xlibs.libXrandr xlibs.libXrender xlibs.libXcomposite xlibs.libXi + ] + ++ stdenv.lib.optional xineramaSupport xlibs.libXinerama + ++ stdenv.lib.optionals cupsSupport [ cups ]; + + 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 antono ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/desktops/gnome-3/core/pango/default.nix b/pkgs/desktops/gnome-3/core/pango/default.nix new file mode 100644 index 00000000000..86ec72fec2f --- /dev/null +++ b/pkgs/desktops/gnome-3/core/pango/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, pkgconfig, gettext, x11, glib, cairo, libpng }: + +stdenv.mkDerivation rec { + + versionMajor = "1.30"; + versionMinor = "1"; + moduleName = "pango"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "1ghc49b5ahv2is7hlq6is5jbpkvhx5kkays6spf2s9rw2hg0d31s"; + }; + + buildInputs = stdenv.lib.optional stdenv.isDarwin gettext; + + buildNativeInputs = [ pkgconfig ]; + + 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.linux; + }; +} diff --git a/pkgs/desktops/gnome-3/core/vte/default.nix b/pkgs/desktops/gnome-3/core/vte/default.nix new file mode 100644 index 00000000000..ffc3aab8706 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/vte/default.nix @@ -0,0 +1,46 @@ +{ stdenv, fetchurl, intltool, pkgconfig, gnome3, ncurses +, pythonSupport ? false, python, pygtk}: + +stdenv.mkDerivation rec { + + versionMajor = "0.32"; + versionMinor = "2"; + moduleName = "vte"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "0sj837b9ib36gx00hzdinv23f7w91fd5mcw1p6wdi053yxqw17nn"; + }; + + buildInputs = [ intltool pkgconfig gnome3.glib gnome3.gtk ncurses ] ++ + stdenv.lib.optionals pythonSupport [python pygtk]; + + configureFlags = '' + ${if pythonSupport then "--enable-python" else "--disable-python"} + ''; + + postInstall = stdenv.lib.optionalString pythonSupport '' + cd $(toPythonPath $out)/gtk-2.0 + for n in *; do + ln -s "gtk-2.0/$n" "../$n" + done + ''; + + meta = { + homepage = http://www.gnome.org/; + description = "A library implementing a terminal emulator widget for GTK+"; + longDescription = '' + VTE is a library (libvte) implementing a terminal emulator widget for + GTK+, and a minimal sample application (vte) using that. Vte is + mainly used in gnome-terminal, but can also be used to embed a + console/terminal in games, editors, IDEs, etc. VTE supports Unicode and + character set conversion, as well as emulating any terminal known to + the system's terminfo database. + ''; + license = "LGPLv2"; + maintainers = with stdenv.lib.maintainers; [ astsmtl antono ]; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/desktops/gnome-3/core/zenity/default.nix b/pkgs/desktops/gnome-3/core/zenity/default.nix new file mode 100644 index 00000000000..3a7aac08da6 --- /dev/null +++ b/pkgs/desktops/gnome-3/core/zenity/default.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl, pkgconfig, cairo, libxml2, libxslt, gnome3, pango +, gnome_doc_utils, intltool, libX11, which }: + +stdenv.mkDerivation rec { + + versionMajor = "3.4"; + versionMinor = "0"; + + name = "zenity-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/zenity/${versionMajor}/zenity-${versionMajor}.${versionMinor}.tar.xz"; + sha256 = "1bqbfcvd3kj2xk15fvbcdaqvyg9qvymlhn8cwvg5m6v4gicniw2w"; + }; + + configureFlags = "--disable-scrollkeeper"; + buildInputs = [ gnome3.gtk libxml2 libxslt libX11 ]; + + buildNativeInputs = [ pkgconfig intltool gnome_doc_utils which ]; +} diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix new file mode 100644 index 00000000000..b9558fa7ec6 --- /dev/null +++ b/pkgs/desktops/gnome-3/default.nix @@ -0,0 +1,49 @@ +{ callPackage, lib, self, stdenv, gettext, overrides ? {} }: + +{ + + inherit (lib) lowPrio hiPrio appendToName makeOverridable; + + __overrides = overrides; + +#### Core (http://ftp.acc.umu.se/pub/GNOME/core/) + + at_spi2_atk = callPackage ./core/at-spi2-atk { }; + + at_spi2_core = callPackage ./core/at-spi2-core { }; + + atk = callPackage ./core/atk { }; + + gconf = callPackage ./core/gconf { }; + + gdk_pixbuf = callPackage ./core/gdk-pixbuf { }; + + glib = callPackage ./core/glib { }; + + gobject_introspection = callPackage ./core/gobject-introspection { }; + + gtk = callPackage ./core/gtk { }; + + gnome_terminal = callPackage ./core/gnome-terminal { }; + + gsettings_desktop_schemas = lib.lowPrio (callPackage ./core/gsettings-desktop-schemas { }); + + pango = callPackage ./core/pango { }; + + vte = callPackage ./core/vte { }; + + zenity = callPackage ./core/zenity { }; + +#### Apps (http://ftp.acc.umu.se/pub/GNOME/apps/) + + gnome_dictionary = callPackage ./desktop/gnome-dictionary { }; + + gnome_desktop = callPackage ./desktop/gnome-desktop { }; + + # Removed from recent GNOME releases, but still required + scrollkeeper = callPackage ./desktop/scrollkeeper { }; + + # scrollkeeper replacement + rarian = callPackage ./desktop/rarian { }; + +} diff --git a/pkgs/desktops/gnome-3/desktop/gnome-desktop/default.nix b/pkgs/desktops/gnome-3/desktop/gnome-desktop/default.nix new file mode 100644 index 00000000000..4d22f6ad746 --- /dev/null +++ b/pkgs/desktops/gnome-3/desktop/gnome-desktop/default.nix @@ -0,0 +1,18 @@ +{ stdenv, fetchurl, pkgconfig, python, libxml2Python, libxslt, which, libX11, gnome3 +, intltool, gnome_doc_utils}: + +stdenv.mkDerivation rec { + + majorVersion = "3.5"; + minorVersion = "3"; + name = "gnome-desktop-${majorVersion}.${minorVersion}"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-desktop/${majorVersion}/${name}.tar.xz"; + sha256 = "1nrqcp1p5cxhfjjy5hjpvkqmzsgl2353a08fg0b11c932v95bsba"; + }; + + configureFlags = "--disable-scrollkeeper"; + buildInputs = [ pkgconfig python libxml2Python libxslt which libX11 + gnome3.gtk gnome3.glib intltool gnome_doc_utils ]; +} diff --git a/pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix b/pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix new file mode 100644 index 00000000000..2c3efcf3a07 --- /dev/null +++ b/pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix @@ -0,0 +1,15 @@ +{ stdenv, fetchurl, pkgconfig, gnome3, gnome_doc_utils, intltool, which +, libxml2, libxslt }: + +stdenv.mkDerivation rec { + version = "3.5.2"; + name = "gnome-dictionary-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-dictionary/3.5/${name}.tar.xz"; + sha256 = "1cq32csxn27vir5nlixx337ym2nal9ykq3s1j7yynh2adh4m0jil"; + }; + + buildInputs = [ gnome3.gtk ]; + buildNativeInputs = [ pkgconfig intltool gnome_doc_utils which libxml2 libxslt gnome3.scrollkeeper ]; +} diff --git a/pkgs/desktops/gnome-3/desktop/rarian/default.nix b/pkgs/desktops/gnome-3/desktop/rarian/default.nix new file mode 100644 index 00000000000..77a2b710f44 --- /dev/null +++ b/pkgs/desktops/gnome-3/desktop/rarian/default.nix @@ -0,0 +1,11 @@ +{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42}: + +stdenv.mkDerivation rec { + name = "rarian-0.8.1"; + src = fetchurl { + url = "mirror://gnome/sources/rarian/0.8/${name}.tar.bz2"; + sha256 = "aafe886d46e467eb3414e91fa9e42955bd4b618c3e19c42c773026b205a84577"; + }; + buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt]; + configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat"; +} diff --git a/pkgs/desktops/gnome-3/desktop/scrollkeeper/default.nix b/pkgs/desktops/gnome-3/desktop/scrollkeeper/default.nix new file mode 100644 index 00000000000..97dcbf4e004 --- /dev/null +++ b/pkgs/desktops/gnome-3/desktop/scrollkeeper/default.nix @@ -0,0 +1,18 @@ +{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42, automake}: + +stdenv.mkDerivation { + name = "scrollkeeper-0.3.14"; + src = fetchurl { + url = mirror://gnome/sources/scrollkeeper/0.3/scrollkeeper-0.3.14.tar.bz2; + sha256 = "08n1xgj1f53zahwm0wpn3jid3rfbhi3iwby0ilaaldnid5qriqgc"; + }; + + # The fuloong2f is not supported by scrollkeeper-0.3.14 config.guess + preConfigure = " + substituteInPlace extract/dtds/Makefile.am --replace /usr/bin/xmlcatalog xmlcatalog + cp ${automake}/share/automake*/config.{sub,guess} . + "; + + buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt]; + configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat"; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2acb2bb9ed6..bf5b5fe0ace 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8055,6 +8055,11 @@ let inherit (pkgs) libsoup libwnck gtk_doc gnome_doc_utils; }; + gnome3 = callPackage ../desktops/gnome-3 { + callPackage = pkgs.newScope pkgs.gnome3; + self = pkgs.gnome3; + }; + gnome = recurseIntoAttrs gnome2; kde3 = recurseIntoAttrs {