Package: libgnomeprint2.2-0 Version: 2.8.2-1 Severity: important If using lprng (and presumably lpd), choosing a non-default printer always prints to the default printer. This is:
http://bugzilla.gnome.org/show_bug.cgi?id=169963 Though this is fixed in 2.10.2, on sarge, when coupled with http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=334450 you just can't print to anything except the default printer when not using cups. This is a major shortcoming. Attached is a patch from CVS to fix this issue. Just drop into debian/patches and recompile and printing will work properly. Jamie Strandboge -- System Information: Debian Release: 3.1 Architecture: i386 (i686) Kernel: Linux 2.6.13.4 Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Versions of packages libgnomeprint2.2-0 depends on: ii libart-2.0-2 2.3.17-1 Library of functions for 2D graphi ii libc6 2.3.2.ds1-22 GNU C Library: Shared libraries an ii libcupsys2-gnutls10 1.1.23-10 Common UNIX Printing System(tm) - ii libfontconfig1 2.3.1-2 generic font configuration library ii libfreetype6 2.1.7-2.4 FreeType 2 font engine, shared lib ii libglib2.0-0 2.6.4-1 The GLib library of C routines ii libgnomecups1.0-1 0.1.14-1 GNOME library for CUPS interaction ii libgnomeprint2.2-data 2.8.2-1 The GNOME 2.2 print architecture - ii libpango1.0-0 1.8.1-1 Layout and rendering of internatio ii libpopt0 1.7-5 lib for parsing cmdline parameters ii libxml2 2.6.16-7 GNOME XML library ii zlib1g 1:1.2.2-4.sarge.2 compression library - runtime -- no debconf information
diff -Naur libgnomeprint-2.8.2.orig/libgnomeprint/modules/lpd/gnome-print-lpd.c libgnomeprint-2.8.2/libgnomeprint/modules/lpd/gnome-print-lpd.c --- libgnomeprint-2.8.2.orig/libgnomeprint/modules/lpd/gnome-print-lpd.c 2004-07-30 20:49:57.000000000 -0400 +++ libgnomeprint-2.8.2/libgnomeprint/modules/lpd/gnome-print-lpd.c 2005-10-17 19:42:56.000000000 -0400 @@ -95,16 +95,19 @@ gboolean retval = FALSE; char *xml; gchar *description = NULL; - gchar *id = NULL; + gchar *id = g_strconcat ("LPD-", name, NULL); - model = gpa_model_get_by_id ("LPD-unknown-unknown", TRUE); + model = gpa_model_get_by_id (id, TRUE); - if (model == NULL) { - xml = g_strdup_printf (lpd_model_unknown_xml_template, - "LPD-unknown-unknown", name); - model = gpa_model_new_from_xml_str (xml); - g_free (xml); + if (model != NULL) { + g_warning ("There is already a printer model '%s'", id); + g_free(id); + return FALSE; } + xml = g_strdup_printf (lpd_model_unknown_xml_template, id, name); + model = gpa_model_new_from_xml_str (xml); + g_free (xml); + g_free (id); if (model == NULL) return FALSE;