about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/graphics/xournal/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/default.nix21
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/01_remove-disable-deprecated.patch17
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix30
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/default.nix21
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecanvasmm/default.nix14
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecups/cups_1.6.patch285
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecups/default.nix20
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch38
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprint/bug653388.patch21
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix30
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix14
-rw-r--r--pkgs/desktops/gnome-2/platform/libgtkhtml/default.nix17
-rw-r--r--pkgs/desktops/gnome/default.nix2
-rw-r--r--pkgs/desktops/gnome/misc/gtkhtml/default.nix15
-rw-r--r--pkgs/desktops/xfce/default.nix3
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin/default.nix41
-rw-r--r--pkgs/top-level/all-packages.nix4
18 files changed, 25 insertions, 572 deletions
diff --git a/pkgs/applications/graphics/xournal/default.nix b/pkgs/applications/graphics/xournal/default.nix
index 47a47ae4f25d6..2372178b974e7 100644
--- a/pkgs/applications/graphics/xournal/default.nix
+++ b/pkgs/applications/graphics/xournal/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, makeDesktopItem
 , ghostscript, atk, gtk2, glib, fontconfig, freetype
-, libgnomecanvas, libgnomeprint, libgnomeprintui
+, libgnomecanvas
 , pango, libX11, xorgproto, zlib, poppler
 , autoconf, automake, libtool, pkg-config}:
 
@@ -20,8 +20,6 @@ stdenv.mkDerivation rec {
     ghostscript atk gtk2 glib fontconfig freetype
     libgnomecanvas
     pango libX11 xorgproto zlib poppler
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    libgnomeprint libgnomeprintui
   ];
 
   nativeBuildInputs = [ autoconf automake libtool pkg-config ];
diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix
index 3dfcc51909740..b360924dc9ef3 100644
--- a/pkgs/desktops/gnome-2/default.nix
+++ b/pkgs/desktops/gnome-2/default.nix
@@ -14,20 +14,10 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   libglade = callPackage ./platform/libglade { };
 
-  libgnomeprint = callPackage ./platform/libgnomeprint { };
-
-  libgnomeprintui = callPackage ./platform/libgnomeprintui { };
-
-  libgnomecups = callPackage ./platform/libgnomecups { };
-
-  libgtkhtml = callPackage ./platform/libgtkhtml { };
-
   GConf = callPackage ./platform/GConf { };
 
   libgnomecanvas = callPackage ./platform/libgnomecanvas { };
 
-  libgnomecanvasmm = callPackage ./platform/libgnomecanvasmm { };
-
   # for git-head builds
   gnome-common = callPackage platform/gnome-common { };
 
@@ -43,10 +33,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   libbonoboui = callPackage ./platform/libbonoboui { };
 
-  gtkhtml = callPackage ./platform/gtkhtml { enchant = pkgs.enchant1; };
-
-  gtkhtml4 = callPackage ./platform/gtkhtml/4.x.nix { enchant = pkgs.enchant2; };
-
   gtkglext = callPackage ./platform/gtkglext { };
 
 #### DESKTOP
@@ -79,6 +65,13 @@ lib.makeScope pkgs.newScope (self: with self; {
   gnome_common = gnome-common;
   gnome_python = throw "gnome2.gnome_python has been removed"; # 2023-01-14
   gnome_python_desktop = throw "gnome2.gnome_python_desktop has been removed"; # 2023-01-14
+  gtkhtml = throw "gnome2.gtkhtml has been removed"; # 2023-01-15
+  gtkhtml4 = throw "gnome2.gtkhtml4 has been removed"; # 2023-01-15
   libglademm = throw "gnome2.libglademm has been removed"; # 2022-01-15
+  libgnomecanvasmm = "gnome2.libgnomecanvasmm has been removed"; # 2022-01-15
+  libgnomecups = throw "gnome2.libgnomecups has been removed"; # 2023-01-15
+  libgnomeprint = throw "gnome2.libgnomeprint has been removed"; # 2023-01-15
+  libgnomeprintui = throw "gnome2.libgnomeprintui has been removed"; # 2023-01-15
+  libgtkhtml = throw "gnome2.libgtkhtml has been removed"; # 2023-01-15
   python_rsvg = throw "gnome2.python_rsvg has been removed"; # 2023-01-14
 })
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/01_remove-disable-deprecated.patch b/pkgs/desktops/gnome-2/platform/gtkhtml/01_remove-disable-deprecated.patch
deleted file mode 100644
index 1d9a179d236b0..0000000000000
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/01_remove-disable-deprecated.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -Naur gtkhtml-3.32.2-orig/configure gtkhtml-3.32.2/configure
---- gtkhtml-3.32.2-orig/configure	2011-02-05 23:12:31.000000000 -0500
-+++ gtkhtml-3.32.2/configure	2011-04-22 13:03:18.228874636 -0400
-@@ -5761,12 +5761,7 @@
- 
- if test "x${enable_deprecated_flags}" = "xyes"; then
- 
--  list="-DG_DISABLE_DEPRECATED
--		-DPANGO_DISABLE_DEPRECATED
--		-DGDK_DISABLE_DEPRECATED
--		-DGDK_PIXBUF_DISABLE_DEPRECATED
--		-DGTK_DISABLE_DEPRECATED
--		-DGNOME_DISABLE_DEPRECATED"
-+  list=""
-   flags_supported=""
-   flags_unsupported=""
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for supported compiler flags" >&5
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
deleted file mode 100644
index 72422cf41c35a..0000000000000
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ stdenv, fetchFromGitLab, pkg-config, gtk3, intltool, autoreconfHook, fetchpatch
-, GConf, enchant, isocodes, gnome-icon-theme, gsettings-desktop-schemas }:
-
-stdenv.mkDerivation rec {
-  version = "4.10.0";
-  pname = "gtkhtml";
-
-  src = fetchFromGitLab {
-    domain = "gitlab.gnome.org";
-    owner = "Archive";
-    repo = "gtkhtml";
-    rev = "master";
-    sha256 = "sha256-jL8YADvhW0o6I/2Uo5FNARMAnSbvtmFp+zWH1yCVvQk=";
-  };
-
-  patches = [
-    # Enables enchant2 support.
-    # Upstream is dead, no further releases are coming.
-    (fetchpatch {
-      name ="enchant-2.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/enchant-2.patch?h=gtkhtml4&id=0218303a63d64c04d6483a6fe9bb55063fcfaa43";
-      sha256 = "f0OToWGHZwxvqf+0qosfA9FfwJ/IXfjIPP5/WrcvArI=";
-      extraPrefix = "";
-    })
-  ];
-
-  propagatedBuildInputs = [ gsettings-desktop-schemas gtk3 gnome-icon-theme GConf ];
-  nativeBuildInputs = [ pkg-config autoreconfHook intltool ];
-  buildInputs = [ enchant isocodes ];
-}
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
deleted file mode 100644
index 206494e70224b..0000000000000
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk2, intltool,
-GConf, enchant, isocodes, gnome-icon-theme }:
-
-stdenv.mkDerivation rec {
-  pname = "gtkhtml";
-  version = "3.32.2";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/gtkhtml/${lib.versions.majorMinor version}/gtkhtml-${version}.tar.bz2";
-    sha256 = "17z3jwvpn8waz7bhwrk7a6vs9pad6sqmlxxcqwvxxq89ywy0ail7";
-  };
-
-  #From Debian, fixes build issue described here:
-  #http://www.mail-archive.com/debian-bugs-rc@lists.debian.org/msg250091.html
-  patches = [ ./01_remove-disable-deprecated.patch ];
-
-  nativeBuildInputs = [ pkg-config intltool ];
-  buildInputs = [ gtk2 GConf enchant isocodes gnome-icon-theme ];
-
-  NIX_LDFLAGS = "-lgthread-2.0";
-}
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecanvasmm/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecanvasmm/default.nix
deleted file mode 100644
index 9cc2d169b7c39..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomecanvasmm/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, libgnomecanvas, gtkmm2 }:
-
-stdenv.mkDerivation rec {
-  pname = "libgnomecanvasmm";
-  version = "2.26.0";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/libgnomecanvasmm/${lib.versions.majorMinor version}/libgnomecanvasmm-${version}.tar.bz2";
-    sha256 = "996577f97f459a574919e15ba7fee6af8cda38a87a98289e9a4f54752d83e918";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ libgnomecanvas gtkmm2 ];
-}
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecups/cups_1.6.patch b/pkgs/desktops/gnome-2/platform/libgnomecups/cups_1.6.patch
deleted file mode 100644
index 68f379c251095..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomecups/cups_1.6.patch
+++ /dev/null
@@ -1,285 +0,0 @@
-From ae783efde4fa69578651994505462f02b8639220 Mon Sep 17 00:00:00 2001
-From: Alexandre Rostovtsev <tetromino@gentoo.org>
-Date: Tue, 7 Aug 2012 06:53:09 -0400
-Subject: [PATCH] Use CUPS-1.6 IPP API getter/setter functions
-
-CUPS 1.6 makes various structures private and introduces these ippGet
-and ippSet functions for all of the fields in these structures.
-http://www.cups.org/str.php?L3928
-
-We define our own accessors when building against CUPS < 1.6.
-
-Based on work by Jiri Popelka <jpopelka@redhat.com> at
-https://bugzilla.gnome.org/show_bug.cgi?id=679759
----
- libgnomecups/gnome-cups-printer.c |   48 +++++++++++++++++++++++++++++-------
- libgnomecups/gnome-cups-queue.c   |   43 +++++++++++++++++++++++++++------
- libgnomecups/gnome-cups-request.c |   44 ++++++++++++++++++++++++++++-----
- 3 files changed, 110 insertions(+), 25 deletions(-)
-
-diff --git a/libgnomecups/gnome-cups-printer.c b/libgnomecups/gnome-cups-printer.c
-index c924af0..f5e1ef7 100644
---- a/libgnomecups/gnome-cups-printer.c
-+++ b/libgnomecups/gnome-cups-printer.c
-@@ -37,6 +37,34 @@
- 
- #define UPDATE_TIMEOUT 5000
- 
-+#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
-+#define HAVE_CUPS_1_6 1
-+#endif
-+
-+#ifndef HAVE_CUPS_1_6
-+#define ippGetCount(attr)     attr->num_values
-+#define ippGetName(attr)      attr->name
-+#define ippGetInteger(attr, element) attr->values[element].integer
-+#define ippGetString(attr, element, language) attr->values[element].string.text
-+
-+static ipp_attribute_t *
-+ippFirstAttribute(ipp_t *ipp)
-+{
-+  if (!ipp)
-+    return (NULL);
-+  return (ipp->current = ipp->attrs);
-+}
-+
-+static ipp_attribute_t *
-+ippNextAttribute(ipp_t *ipp)
-+{
-+  if (!ipp || !ipp->current)
-+    return (NULL);
-+  return (ipp->current = ipp->current->next);
-+}
-+#endif
-+
-+
- struct _GnomeCupsPPDFile {
- 	char name[1];
- };
-@@ -173,9 +201,9 @@ map_reasons (GnomeCupsPrinter *printer,
- 	printer->details->state_reasons = NULL;
- 
- 	/* cf. RFC2911 4.4.12 */
--	for (i = 0; i < attr->num_values; i++) {
-+	for (i = 0; i < ippGetCount (attr); i++) {
- 		const char *p;
--		const char *keyword = attr->values [i].string.text;
-+		const char *keyword = ippGetString (attr, i, NULL);
- 
- 		reason = g_new (GnomeCupsPrinterReason, 1);
- 
-@@ -224,8 +252,8 @@ gnome_cups_printer_get_info (GnomeCupsPrinter *printer)
- 	return printer->details->info;
- }
- 
--#define MAP_INT(v,a) {if (!g_ascii_strcasecmp (attr->name, (a))) { if ((v) != attr->values[0].integer) { changed = TRUE; } (v) = attr->values[0].integer; }}
--#define MAP_STRING(v,a) {if (!g_ascii_strcasecmp (attr->name, (a))) { if (!v || strcmp (v, attr->values[0].string.text)) { g_free (v); changed = TRUE; (v) = g_strdup (attr->values[0].string.text); }}}
-+#define MAP_INT(v,a) {if (!g_ascii_strcasecmp (ippGetName (attr), (a))) { if ((v) != ippGetInteger (attr, 0)) { changed = TRUE; } (v) = ippGetInteger (attr, 0); }}
-+#define MAP_STRING(v,a) {if (!g_ascii_strcasecmp (ippGetName (attr), (a))) { if (!v || strcmp (v, ippGetString (attr, 0, NULL))) { g_free (v); changed = TRUE; (v) = g_strdup (ippGetString (attr, 0, NULL)); }}}
- 
- static void
- attributes_update_cb (guint id,
-@@ -243,14 +271,14 @@ attributes_update_cb (guint id,
- 	changed = FALSE;
- 
- 	if (!error && response) {
--		for (attr = response->attrs; attr != NULL; attr = attr->next) {
--			if (!attr->name) {
-+		for (attr = ippFirstAttribute (response); attr != NULL; attr = ippNextAttribute (response)) {
-+			if (!ippGetName (attr)) {
- 				continue;
- 			} 
--			if (!g_ascii_strcasecmp (attr->name, "attributes-charset") || !strcmp (attr->name, "attributes-charset")) {
-+			if (!g_ascii_strcasecmp (ippGetName (attr), "attributes-charset") || !strcmp (ippGetName (attr), "attributes-charset")) {
- 				continue;
- 			}
--			if (!g_ascii_strcasecmp (attr->name, "printer-state-reasons")) {
-+			if (!g_ascii_strcasecmp (ippGetName (attr), "printer-state-reasons")) {
- 				map_reasons (printer, attr);
- 			}
- 			MAP_INT (printer->details->state, "printer-state");
-@@ -570,7 +598,7 @@ get_default (void)
- 	
- 	attr = ippFindAttribute (response, "printer-name", IPP_TAG_NAME);
- 	if (attr) {
--		name = g_strdup (attr->values[0].string.text);
-+		name = g_strdup (ippGetString (attr, 0, NULL));
- 	} else {
- 		name = NULL;
- 	}
-@@ -698,7 +726,7 @@ get_printer_names (void)
- 	attr = ippFindAttribute (response, "printer-name", IPP_TAG_NAME);
- 	while (attr) {
- 		ret = g_list_prepend (ret, 
--				      g_strdup (attr->values[0].string.text));
-+				      g_strdup (ippGetString (attr, 0, NULL)));
- 		
- 		attr = ippFindNextAttribute (response, 
- 					     "printer-name", 
-diff --git a/libgnomecups/gnome-cups-queue.c b/libgnomecups/gnome-cups-queue.c
-index 9f98ed9..298db42 100644
---- a/libgnomecups/gnome-cups-queue.c
-+++ b/libgnomecups/gnome-cups-queue.c
-@@ -15,6 +15,33 @@
- 
- #define UPDATE_TIMEOUT 3000
- 
-+#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
-+#define HAVE_CUPS_1_6 1
-+#endif
-+
-+#ifndef HAVE_CUPS_1_6
-+#define ippGetName(attr)      attr->name
-+#define ippGetInteger(attr, element) attr->values[element].integer
-+#define ippGetString(attr, element, language) attr->values[element].string.text
-+
-+static ipp_attribute_t *
-+ippFirstAttribute(ipp_t *ipp)
-+{
-+  if (!ipp)
-+    return (NULL);
-+  return (ipp->current = ipp->attrs);
-+}
-+
-+static ipp_attribute_t *
-+ippNextAttribute(ipp_t *ipp)
-+{
-+  if (!ipp || !ipp->current)
-+    return (NULL);
-+  return (ipp->current = ipp->current->next);
-+}
-+#endif
-+
-+
- struct _GnomeCupsQueueDetails {
- 	char *queue_name;
- 	GList *jobs;
-@@ -199,8 +226,8 @@ finish_job (GnomeCupsJob *job)
- 	job->size = job->size * 1024;
- }
- 
--#define MAP_STR(dest, src) { if (!g_ascii_strcasecmp (attr->name, (src))) { if ((dest) != NULL) g_free (dest); (dest) = g_strdup (attr->values[0].string.text);}}
--#define MAP_INT(dest, src) { if (!g_ascii_strcasecmp (attr->name, (src))) { (dest) = attr->values[0].integer; } }
-+#define MAP_STR(dest, src) { if (!g_ascii_strcasecmp (ippGetName (attr), (src))) { if ((dest) != NULL) g_free (dest); (dest) = g_strdup (ippGetString (attr, 0, NULL));}}
-+#define MAP_INT(dest, src) { if (!g_ascii_strcasecmp (ippGetName (attr), (src))) { (dest) = ippGetInteger (attr, 0); } }
- 
- static void
- get_jobs_cb (guint id,
-@@ -231,8 +258,8 @@ get_jobs_cb (guint id,
- 	
- 	if (response) {
- 		job = g_new0 (GnomeCupsJob, 1);
--		for (attr = response->attrs; attr != NULL; attr = attr->next) {
--			if (attr->name == NULL) {
-+		for (attr = ippFirstAttribute (response); attr != NULL; attr = ippNextAttribute (response)) {
-+			if (ippGetName (attr) == NULL) {
- 				if (job->name) {
- 					finish_job (job);
- 					jobs = g_list_prepend (jobs, job);	
-@@ -244,7 +271,7 @@ get_jobs_cb (guint id,
- 				continue;
- 			}
- 			
--			if (!g_ascii_strcasecmp (attr->name, "attributes-charset") || !g_ascii_strcasecmp (attr->name, "attributes-charset")) {
-+			if (!g_ascii_strcasecmp (ippGetName (attr), "attributes-charset") || !g_ascii_strcasecmp (ippGetName (attr), "attributes-charset")) {
- 				continue;
- 				
- 			}
-@@ -355,8 +382,8 @@ gnome_cups_queue_get_job_nocache (GnomeCupsQueue *queue,
- 
- 	if (response) {
- 		job = g_new0 (GnomeCupsJob, 1);
--		for (attr = response->attrs; attr != NULL; attr = attr->next) {
--			if (attr->name == NULL) {
-+		for (attr = ippFirstAttribute (response); attr != NULL; attr = ippNextAttribute (response)) {
-+			if (ippGetName (attr) == NULL) {
- 				if (job->name) {
- 					finish_job (job);
- 				} else {
-@@ -366,7 +393,7 @@ gnome_cups_queue_get_job_nocache (GnomeCupsQueue *queue,
- 				break;
- 			}
- 			
--			if (!g_ascii_strcasecmp (attr->name, "attributes-charset") || !g_ascii_strcasecmp (attr->name, "attributes-charset")) {
-+			if (!g_ascii_strcasecmp (ippGetName (attr), "attributes-charset") || !g_ascii_strcasecmp (ippGetName (attr), "attributes-charset")) {
- 				continue;
- 			}
- 			
-diff --git a/libgnomecups/gnome-cups-request.c b/libgnomecups/gnome-cups-request.c
-index c94f623..13f0948 100644
---- a/libgnomecups/gnome-cups-request.c
-+++ b/libgnomecups/gnome-cups-request.c
-@@ -19,6 +19,36 @@
- #define STOP_UNUSED_THREADS_TIMEOUT 60
- #define CLOSE_UNUSED_CONNECTIONS_TIMEOUT 30
- 
-+#if (CUPS_VERSION_MAJOR > 1) || (CUPS_VERSION_MINOR > 5)
-+#define HAVE_CUPS_1_6 1
-+#endif
-+
-+#ifndef HAVE_CUPS_1_6
-+#define ippGetCount(attr)     attr->num_values
-+#define ippGetValueTag(attr)  attr->value_tag
-+#define ippGetName(attr)      attr->name
-+#define ippGetBoolean(attr, element) attr->values[element].boolean
-+#define ippGetInteger(attr, element) attr->values[element].integer
-+#define ippGetString(attr, element, language) attr->values[element].string.text
-+
-+static ipp_attribute_t *
-+ippFirstAttribute(ipp_t *ipp)
-+{
-+  if (!ipp)
-+    return (NULL);
-+  return (ipp->current = ipp->attrs);
-+}
-+
-+static ipp_attribute_t *
-+ippNextAttribute(ipp_t *ipp)
-+{
-+  if (!ipp || !ipp->current)
-+    return (NULL);
-+  return (ipp->current = ipp->current->next);
-+}
-+#endif
-+
-+
- typedef struct
- {
- 	GMutex *mutex;
-@@ -276,14 +306,14 @@ dump_request (ipp_t const *req)
- 	unsigned i;
- 	ipp_attribute_t *attr;
- 
--	for (attr = req->attrs; attr != NULL; attr = attr->next) {
--		g_print ("%s", attr->name);
--		for (i = 0 ; i < attr->num_values ; i++) {
-+	for (attr = ippFirstAttribute (req); attr != NULL; attr = ippNextAttribute (req)) {
-+		g_print ("%s", ippGetName (attr));
-+		for (i = 0 ; i < ippGetCount (attr) ; i++) {
- 			g_print ("\t[%d] = ", i);
--			switch (attr->value_tag & ~IPP_TAG_COPY) {
-+			switch (ippGetValueTag (attr) & ~IPP_TAG_COPY) {
- 			case IPP_TAG_INTEGER:
- 			case IPP_TAG_ENUM:
--				g_print ("%d\n", attr->values[i].integer);
-+				g_print ("%d\n", ippGetInteger (attr, i));
- 				break;
- 
- 			case IPP_TAG_STRING:
-@@ -294,11 +324,11 @@ dump_request (ipp_t const *req)
- 			case IPP_TAG_CHARSET:
- 			case IPP_TAG_LANGUAGE:
- 			case IPP_TAG_MIMETYPE:
--				g_print ("'%s'\n", attr->values[i].string.text);
-+				g_print ("'%s'\n", ippGetString (attr, i, NULL));
- 				break;
- 
- 			case IPP_TAG_BOOLEAN:
--				g_print ("%s\n", (int)attr->values[i].boolean ? "true" : "false");
-+				g_print ("%s\n", (int)ippGetBoolean (attr, i) ? "true" : "false");
- 				break;
- 
- 			default:
--- 
-1.7.8.6
-
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix b/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
deleted file mode 100644
index 8d6bcce60205c..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomecups/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk2, gettext, libxml2, intltool, libart_lgpl }:
-
-stdenv.mkDerivation rec {
-  pname = "libgnomecups";
-  version = "0.2.3";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/libgnomecups/${lib.versions.majorMinor version}/libgnomecups-${version}.tar.bz2";
-    sha256 = "0a8xdaxzz2wc0n1fjcav65093gixzyac3948l8cxx1mk884yhc71";
-  };
-
-  hardeningDisable = [ "format" ];
-
-  patches = [ ./glib.patch ./cups_1.6.patch ];
-
-  nativeBuildInputs = [ pkg-config intltool ];
-  buildInputs = [ gtk2 gettext libart_lgpl ];
-
-  propagatedBuildInputs = [ libxml2 ];
-}
diff --git a/pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch b/pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch
deleted file mode 100644
index 3f73af861c04d..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomecups/glib.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From d84eee9450b3b6f6155074915efc61bedcc8d446 Mon Sep 17 00:00:00 2001
-From: Dominique Leuenberger <dimstar@opensuse.org>
-Date: Sun, 27 Nov 2011 21:36:41 +0100
-Subject: [PATCH] Fix: Only glib.h can be included
-
----
- libgnomecups/gnome-cups-i18n.c |    2 +-
- libgnomecups/gnome-cups-init.h |    3 +--
- 2 files changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/libgnomecups/gnome-cups-i18n.c b/libgnomecups/gnome-cups-i18n.c
-index 8987c5c..127756d 100644
---- a/libgnomecups/gnome-cups-i18n.c
-+++ b/libgnomecups/gnome-cups-i18n.c
-@@ -1,5 +1,5 @@
- #include <config.h>
--#include <glib/gmacros.h>
-+#include <glib.h>
- #include "gnome-cups-i18n.h"
- 
- #ifdef ENABLE_NLS
-diff --git a/libgnomecups/gnome-cups-init.h b/libgnomecups/gnome-cups-init.h
-index 22b682a..c4600fc 100644
---- a/libgnomecups/gnome-cups-init.h
-+++ b/libgnomecups/gnome-cups-init.h
-@@ -1,8 +1,7 @@
- #ifndef GNOME_CUPS_INIT
- #define GNOME_CUPS_INIT
- 
--#include <glib/gtypes.h>
--#include <glib/gmacros.h>
-+#include <glib.h>
- 
- G_BEGIN_DECLS
- 
--- 
-1.7.7
-
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprint/bug653388.patch b/pkgs/desktops/gnome-2/platform/libgnomeprint/bug653388.patch
deleted file mode 100644
index 468f8e287a7ca..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomeprint/bug653388.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 9b82b7e75b83395e7c5692085e1934202cf7f65f Mon Sep 17 00:00:00 2001
-From: Jeremy Huddleston <jeremyhu@freedesktop.org>
-Date: Wed, 12 Oct 2011 15:08:59 +0000
-Subject: Add missing include
-
-https://bugzilla.gnome.org/show_bug.cgi?id=653388
----
-diff --git a/libgnomeprint/modules/cups/gnome-print-cups-transport.c b/libgnomeprint/modules/cups/gnome-print-cups-transport.c
-index aeb7111..85de91b 100644
---- a/libgnomeprint/modules/cups/gnome-print-cups-transport.c
-+++ b/libgnomeprint/modules/cups/gnome-print-cups-transport.c
-@@ -34,6 +34,7 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <fcntl.h>
-+#include <stdio.h>
- #include <unistd.h>
- #include <locale.h>
- 
---
-cgit v0.9.0.2
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
deleted file mode 100644
index 5f7a254c8fbdd..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomeprint/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, stdenv, fetchurl, fetchpatch, pkg-config, gtk2, gettext, libxml2, intltool, libart_lgpl
-, libgnomecups, bison, flex }:
-
-stdenv.mkDerivation rec {
-  pname = "libgnomeprint";
-  version = "2.18.8";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/libgnomeprint/${lib.versions.majorMinor version}/libgnomeprint-${version}.tar.bz2";
-    sha256 = "1034ec8651051f84d2424e7a1da61c530422cc20ce5b2d9e107e1e46778d9691";
-  };
-
-  patches = [
-    ./bug653388.patch
-    # Fix compatibility with bison 3
-    (fetchpatch {
-      url = "https://github.com/pld-linux/libgnomeprint/raw/54c0f9c3675b86c53f6d77a5bc526ce9ef0e38cd/bison3.patch";
-      sha256 = "1sp04jbv34i1gcwf377hhmwdsmqzig70dd06rjz1isb6zwh4y01l";
-    })
-  ];
-
-  nativeBuildInputs = [ pkg-config intltool ];
-  buildInputs = [ gtk2 gettext libart_lgpl libgnomecups bison flex ];
-
-  propagatedBuildInputs = [ libxml2 ];
-
-  meta = with lib; {
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
deleted file mode 100644
index f8a647a5b5a5f..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk2, gettext, intltool, libgnomecanvas, libgnomeprint, gnome-icon-theme }:
-
-stdenv.mkDerivation rec {
-  pname = "libgnomeprintui";
-  version = "2.18.6";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/libgnomeprintui/${lib.versions.majorMinor version}/libgnomeprintui-${version}.tar.bz2";
-    sha256 = "0spl8vinb5n6n1krnfnr61dwaxidg67h8j94z9p59k2xdsvfashm";
-  };
-
-  nativeBuildInputs = [ pkg-config intltool ];
-  buildInputs = [ gtk2 gettext libgnomecanvas libgnomeprint gnome-icon-theme];
-}
diff --git a/pkgs/desktops/gnome-2/platform/libgtkhtml/default.nix b/pkgs/desktops/gnome-2/platform/libgtkhtml/default.nix
deleted file mode 100644
index 9c7189c117ac8..0000000000000
--- a/pkgs/desktops/gnome-2/platform/libgtkhtml/default.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk2, gettext, libxml2 }:
-
-stdenv.mkDerivation rec {
-  pname = "libgtkhtml";
-  version = "2.11.1";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/libgtkhtml/${lib.versions.majorMinor version}/libgtkhtml-${version}.tar.bz2";
-    sha256 = "0msajafd42545dxzyr5zqka990cjrxw2yz09ajv4zs8m1w6pm9rw";
-  };
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ gtk2 gettext ];
-  propagatedBuildInputs = [ libxml2 ];
-
-  hardeningDisable = [ "format" ];
-}
diff --git a/pkgs/desktops/gnome/default.nix b/pkgs/desktops/gnome/default.nix
index 52e37c05b39f6..fa9b8eef06593 100644
--- a/pkgs/desktops/gnome/default.nix
+++ b/pkgs/desktops/gnome/default.nix
@@ -254,7 +254,7 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   nautilus-python = callPackage ./misc/nautilus-python { };
 
-  gtkhtml = callPackage ./misc/gtkhtml { enchant = pkgs.enchant1; };
+  gtkhtml = callPackage ./misc/gtkhtml { enchant = pkgs.enchant2; };
 
   pomodoro = callPackage ./misc/pomodoro { };
 
diff --git a/pkgs/desktops/gnome/misc/gtkhtml/default.nix b/pkgs/desktops/gnome/misc/gtkhtml/default.nix
index f4454e15bb9e6..9eb93bc8bc44a 100644
--- a/pkgs/desktops/gnome/misc/gtkhtml/default.nix
+++ b/pkgs/desktops/gnome/misc/gtkhtml/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gtk3, intltool
+{ lib, stdenv, fetchurl, fetchpatch, autoreconfHook, pkg-config, gtk3, intltool
 , gnome, enchant, isocodes, gsettings-desktop-schemas }:
 
 stdenv.mkDerivation rec {
@@ -10,11 +10,22 @@ stdenv.mkDerivation rec {
     sha256 = "ca3b6424fb2c7ac5d9cb8fdafb69318fa2e825c9cf6ed17d1e38d9b29e5606c3";
   };
 
+  patches = [
+    # Enables enchant2 support.
+    # Upstream is dead, no further releases are coming.
+    (fetchpatch {
+      name ="enchant-2.patch";
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/enchant-2.patch?h=gtkhtml4&id=0218303a63d64c04d6483a6fe9bb55063fcfaa43";
+      sha256 = "f0OToWGHZwxvqf+0qosfA9FfwJ/IXfjIPP5/WrcvArI=";
+      extraPrefix = "";
+    })
+  ];
+
   passthru = {
     updateScript = gnome.updateScript { packageName = "gtkhtml"; attrPath = "gnome.gtkhtml"; };
   };
 
-  nativeBuildInputs = [ pkg-config intltool ];
+  nativeBuildInputs = [ autoreconfHook pkg-config intltool ];
   buildInputs = [ gtk3 gnome.adwaita-icon-theme
                   gsettings-desktop-schemas ];
 
diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix
index 2e4adb61eed1c..6ac1199314242 100644
--- a/pkgs/desktops/xfce/default.nix
+++ b/pkgs/desktops/xfce/default.nix
@@ -135,8 +135,6 @@ makeScopeWithSplicing
 
       xfce4-genmon-plugin = callPackage ./panel-plugins/xfce4-genmon-plugin { };
 
-      xfce4-hardware-monitor-plugin = callPackage ./panel-plugins/xfce4-hardware-monitor-plugin { };
-
       xfce4-i3-workspaces-plugin = callPackage ./panel-plugins/xfce4-i3-workspaces-plugin { };
 
       xfce4-namebar-plugin = callPackage ./panel-plugins/xfce4-namebar-plugin { };
@@ -176,4 +174,5 @@ makeScopeWithSplicing
 
       thunar-bare = self.thunar.override { thunarPlugins = [ ]; }; # added 2019-11-04
 
+      xfce4-hardware-monitor-plugin = throw "xfce.xfce4-hardware-monitor-plugin has been removed: abandoned by upstream and does not build"; # added 2023-01-15
     })
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin/default.nix
deleted file mode 100644
index 3f1f9c25c5094..0000000000000
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib, stdenv, fetchurl, pkg-config, intltool, autoreconfHook, gnome2, gtkmm2,
-  libgtop, libxfce4ui, libxfce4util, xfce4-panel, lm_sensors, xfce
-}:
-
-stdenv.mkDerivation rec {
-  pname  = "xfce4-hardware-monitor-plugin";
-  version = "1.6.0";
-
-  src = fetchurl {
-    url = "https://git.xfce.org/archive/${pname}/snapshot/${pname}-${version}.tar.gz";
-    sha256 = "sha256-aLpNY+qUhmobGb8OkbjtJxQMDO9xSlvurVjNLgOpZ4Y=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-    intltool
-  ];
-
-  buildInputs = [
-    gtkmm2
-    gnome2.libgnomecanvas
-    gnome2.libgnomecanvasmm
-    libgtop
-    libxfce4ui
-    libxfce4util
-    xfce4-panel
-    lm_sensors
-   ];
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    homepage = "https://goodies.xfce.org/projects/panel-plugins/xfce4-hardware-monitor-plugin";
-    description = "Hardware monitor plugin for the XFCE4 panel";
-    license = licenses.gpl3Only;
-    platforms = platforms.unix;
-    broken = true; # unmaintained plugin; no longer compatible with xfce 4.16
-    maintainers = with maintainers; [ ] ++ teams.xfce.members;
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index dfc1c7b4a8a6b..bc4a079783f90 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -33701,11 +33701,11 @@ with pkgs;
   };
 
   xiphos = callPackage ../applications/misc/xiphos {
-    gtkhtml = gnome2.gtkhtml4;
+    gtkhtml = gnome.gtkhtml;
   };
 
   xournal = callPackage ../applications/graphics/xournal {
-    inherit (gnome2) libgnomeprint libgnomeprintui libgnomecanvas;
+    inherit (gnome2) libgnomecanvas;
   };
 
   xournalpp = callPackage ../applications/graphics/xournalpp {