diff --git a/pkgs/desktops/xfce-4.8/default.nix b/pkgs/desktops/xfce-4.8/default.nix index 821a8e92faba..056bc4368c62 100644 --- a/pkgs/desktops/xfce-4.8/default.nix +++ b/pkgs/desktops/xfce-4.8/default.nix @@ -5,7 +5,7 @@ rec { #### SUPPORT - #gnome_disk_utility = callPackage ./support/gnome-disk-utility.nix { }; + libgdu = callPackage ./support/libgdu.nix { }; # Gvfs is required by Thunar for the trash feature and for volume # mounting. Should use the one from Gnome, but I don't want to mess diff --git a/pkgs/desktops/xfce-4.8/support/gvfs.nix b/pkgs/desktops/xfce-4.8/support/gvfs.nix index d679e31a9972..6e50e6825dd6 100644 --- a/pkgs/desktops/xfce-4.8/support/gvfs.nix +++ b/pkgs/desktops/xfce-4.8/support/gvfs.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev }: +{ stdenv, fetchurl, pkgconfig, glib, dbus, intltool, udev, libgdu }: stdenv.mkDerivation rec { name = "gvfs-1.8.2"; @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "0895ac8f6d416e1b15433b6b6b68eb119c6e8b04fdb66db665d684355ef89345"; }; - buildInputs = [ pkgconfig glib dbus.libs intltool udev ]; + buildInputs = [ pkgconfig glib dbus.libs intltool udev libgdu ]; meta = { description = "Virtual Filesystem support library (for Xfce)"; diff --git a/pkgs/desktops/xfce-4.8/support/libgdu-only.patch b/pkgs/desktops/xfce-4.8/support/libgdu-only.patch new file mode 100644 index 000000000000..c5873c716811 --- /dev/null +++ b/pkgs/desktops/xfce-4.8/support/libgdu-only.patch @@ -0,0 +1,144 @@ +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/configure.ac gnome-disk-utility-2.30.1/configure.ac +--- gnome-disk-utility-2.30.1-orig/configure.ac 2010-03-22 16:54:09.000000000 +0100 ++++ gnome-disk-utility-2.30.1/configure.ac 2011-09-06 02:52:09.000000000 +0200 +@@ -106,17 +106,6 @@ + # GNOME + # ***** + +-GNOME_COMMON_INIT +-GNOME_DOC_INIT +-GNOME_DEBUG_CHECK +-GNOME_COMPILE_WARNINGS([maximum]) +-GNOME_MAINTAINER_MODE_DEFINES +- +-AC_ARG_ENABLE(gtk-doc, AS_HELP_STRING([--enable-gtk-doc], +- [use gtk-doc to build documentation [default=yes]]),, +- enable_gtk_doc=yes) +-GTK_DOC_CHECK([1.3]) +- + # *************************** + # Check for required packages + # *************************** +@@ -130,7 +119,6 @@ + UNIQUE_REQUIRED=1.0 + LIBNOTIFY_REQUIRED=0.3.0 + NAUTILUS_REQUIRED=2.24.0 +-AVAHI_UI_REQUIRED=0.6.25 + + UDISKS_REQUIRED=1.0.0 + UDISKS_NEXT_ABI_INCOMPATIBLE_VERSION=1.1.0 +@@ -144,13 +132,7 @@ + PKG_CHECK_MODULES(GIO_UNIX2, [gio-unix-2.0 >= $GIO2_REQUIRED]) + PKG_CHECK_MODULES(GTHREAD2, [gthread-2.0 >= $GLIB2_REQUIRED]) + PKG_CHECK_MODULES(DBUS_GLIB, [dbus-glib-1 >= $DBUS_GLIB_REQUIRED]) +-PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= $GTK2_REQUIRED]) +-PKG_CHECK_MODULES(UNIQUE, [unique-1.0 >= $UNIQUE_REQUIRED]) +-PKG_CHECK_MODULES(LIBNOTIFY, [libnotify >= $LIBNOTIFY_REQUIRED]) + PKG_CHECK_MODULES(UDISKS, [udisks >= $UDISKS_REQUIRED udisks < $UDISKS_NEXT_ABI_INCOMPATIBLE_VERSION]) +-PKG_CHECK_MODULES(X11, [x11]) +-PKG_CHECK_MODULES(LIBATASMART, [libatasmart >= 0.14]) +-PKG_CHECK_MODULES(AVAHI_UI, [avahi-ui >= $AVAHI_UI_REQUIRED]) + + # ************* + # Remote Access +@@ -183,21 +165,10 @@ + AC_SUBST(GNOME_KEYRING_CFLAGS) + AM_CONDITIONAL(ENABLE_GNOME_KEYRING, [test "$have_gnome_keyring" = "yes"]) + +-# ************* +-# Documentation +-# ************* +- +-AC_PATH_PROG(SCROLLKEEPER_CONFIG, scrollkeeper-config,no) +-if test x$SCROLLKEEPER_CONFIG = xno; then +- AC_MSG_ERROR(Couldn't find scrollkeeper-config, please install the scrollkeeper package) +-fi +- + # ******************** + # Internationalization + # ******************** + +-IT_PROG_INTLTOOL([$INTLTOOL_REQUIRED]) +- + GETTEXT_PACKAGE=gnome-disk-utility + AC_SUBST([GETTEXT_PACKAGE]) + AM_GLIB_GNU_GETTEXT +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/doc/Makefile.am gnome-disk-utility-2.30.1/doc/Makefile.am +--- gnome-disk-utility-2.30.1-orig/doc/Makefile.am 2009-12-02 20:52:38.000000000 +0100 ++++ gnome-disk-utility-2.30.1/doc/Makefile.am 2011-09-06 02:17:15.000000000 +0200 +@@ -70,9 +70,7 @@ + Makefile.in \ + $(NULL) + +-include $(top_srcdir)/gtk-doc.make +- +-CLEANFILES += *~ \ ++CLEANFILES = *~ \ + gnome-disk-utility-scan* \ + gnome-disk-utility.args \ + gnome-disk-utility.hierarchy \ +@@ -91,4 +89,4 @@ + $(NULL) + + # Version information for marking the documentation +-EXTRA_DIST += version.xml.in ++EXTRA_DIST = version.xml.in +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/gtk-doc.make gnome-disk-utility-2.30.1/gtk-doc.make +--- gnome-disk-utility-2.30.1-orig/gtk-doc.make 2010-03-16 00:08:20.000000000 +0100 ++++ gnome-disk-utility-2.30.1/gtk-doc.make 2011-09-06 02:15:33.000000000 +0200 +@@ -4,15 +4,9 @@ + # Everything below here is generic # + #################################### + +-if GTK_DOC_USE_LIBTOOL +-GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +-GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +-GTKDOC_RUN = $(LIBTOOL) --mode=execute +-else + GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) + GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) + GTKDOC_RUN = +-endif + + # We set GPATH here; this gives us semantics for GNU make + # which are more like other make's VPATH, when it comes to +@@ -49,22 +43,7 @@ + + CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) + +-if ENABLE_GTK_DOC +-if GTK_DOC_BUILD_HTML +-HTML_BUILD_STAMP=html-build.stamp +-else +-HTML_BUILD_STAMP= +-endif +-if GTK_DOC_BUILD_PDF +-PDF_BUILD_STAMP=pdf-build.stamp +-else +-PDF_BUILD_STAMP= +-endif +- +-all-local: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) +-else + all-local: +-endif + + docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) + +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/help/Makefile.am gnome-disk-utility-2.30.1/help/Makefile.am +--- gnome-disk-utility-2.30.1-orig/help/Makefile.am 2009-09-23 20:35:01.000000000 +0200 ++++ gnome-disk-utility-2.30.1/help/Makefile.am 2011-09-06 02:18:13.000000000 +0200 +@@ -1,4 +1,3 @@ +-include $(top_srcdir)/gnome-doc-utils.make + dist-hook: doc-dist-hook + + DOC_MODULE = palimpsest +diff -ru -x '*~' gnome-disk-utility-2.30.1-orig/Makefile.am gnome-disk-utility-2.30.1/Makefile.am +--- gnome-disk-utility-2.30.1-orig/Makefile.am 2010-03-16 00:12:39.000000000 +0100 ++++ gnome-disk-utility-2.30.1/Makefile.am 2011-09-06 02:17:34.000000000 +0200 +@@ -1,4 +1,4 @@ +-SUBDIRS = src data doc help po ++SUBDIRS = src data + + EXTRA_DIST = \ + autogen.sh \ diff --git a/pkgs/desktops/xfce-4.8/support/libgdu.nix b/pkgs/desktops/xfce-4.8/support/libgdu.nix new file mode 100644 index 000000000000..32835f0434ab --- /dev/null +++ b/pkgs/desktops/xfce-4.8/support/libgdu.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, gnome, pkgconfig, glib, dbus_glib, intltool, udev, gtk +, libnotify, udisks, libatasmart, avahi +, autoconf, automake, libtool }: + +let version = "2.30.1"; in + +stdenv.mkDerivation rec { + name = "libgdu-${version}"; + + src = fetchurl { + url = "mirror://gnome/sources/gnome-disk-utility/2.30/gnome-disk-utility-${version}.tar.bz2"; + sha256 = "df9b336c780b5d77ceda54e96f7c37c67645f5e73d48754ba0a8efba7c1836d7"; + }; + + # Only build libgdu, not all that Gnome crap. + patches = [ ./libgdu-only.patch ]; + + buildInputs = + [ pkgconfig glib dbus_glib udisks + autoconf automake libtool + ]; + + preConfigure = + '' + substituteInPlace src/gdu/Makefile.am --replace /usr/share/dbus-1/interfaces ${udisks}/share/dbus-1/interfaces + autoreconf -f -i + ''; + + postConfigure = "cd src/gdu"; + + meta = { + description = "Xfce/Gvfs support library for mounting filesystems"; + }; +}