[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#396642: cupsys-driver-gutenprint: Install fails to symlink ppd's where cups can find them.



tags 396642 + confirmed patch pending
thanks

Roger Leigh <rleigh@whinlatter.ukfsn.org> writes:

> Donovan Baarda <abo@minkirri.apana.org.au> writes:
>
> [...]
>> The *.ppd.gz files generated by
>> cupsys-drivers-gutenprint are in
>> /usr/share/cups/model/gutenprint/5.0/en/. So I created the following
>> symlink;
>>
>> /usr/share/ppd/gutenprint -> /usr/share/cups/model/gutenprint/5.0/en
>>
>> After doing this and re-adding my printer, CUPS was able to find and
>> suggest the correct gutenprint ppd and everything worked.
>>
>> Either the postinst for cupsys-driver-gutenprint should create this
>> symlink, or cupsys should be updated to look in the ../model/..
>> directory.
>
> Yes, cupsys-driver-gutenprint does need updating to meet the
> specification.  However, the PPDs are generated by
> /usr/sbin/cups-genppd.5.0 and /usr/sbin/cups-genppdconfig.5.0 and
> auto-updated by /usr/sbin/cups-genppdupdate.5.0, and this will need
> some work to update and test.

The following patch makes cupsys-driver-gutenprint use the new
location.  I'll upload it shortly.


Regards,
Roger


diff -urN gutenprint-5.0.0.original/debian/changelog gutenprint-5.0.0/debian/changelog
--- gutenprint-5.0.0.original/debian/changelog	2006-11-02 22:06:09.000000000 +0000
+++ gutenprint-5.0.0/debian/changelog	2006-11-02 23:56:30.000000000 +0000
@@ -1,3 +1,17 @@
+gutenprint (5.0.0-3) unstable; urgency=low
+
+  * cupsys-driver-gutenprint: Move PPD files from
+    /usr/share/cups/model/gutenprint/5.0 to /usr/share/ppd/gutenprint/5.0, to
+    comply with the Debian PPD File Structure Specification
+    (http://wiki.debian.org/PpdFileStructureSpecification).  The postinst and
+    postrm scripts have been updated to remove the old PPDs, generate new PPDs
+    in the new location, and to upgrade PPDs using the new location.
+    Closes: #396642.
+  * debian/control: cupsys-driver-gutenprint Depends upon cupsys or cups >=
+    1.2.5, so CUPS is guaranteed to find the PPDs in the new location.
+
+ -- Roger Leigh <rleigh@debian.org>  Thu,  2 Nov 2006 22:42:04 +0000
+
 gutenprint (5.0.0-2) unstable; urgency=low
 
   * debian/control.in: cupsys-driver-gutenprint does not recommend
diff -urN gutenprint-5.0.0.original/debian/control gutenprint-5.0.0/debian/control
--- gutenprint-5.0.0.original/debian/control	2006-11-02 22:06:09.000000000 +0000
+++ gutenprint-5.0.0/debian/control	2006-11-02 22:59:32.000000000 +0000
@@ -36,7 +36,7 @@
 Package: cupsys-driver-gutenprint
 Architecture: any
 Section: graphics
-Depends: ${shlibs:Depends}, perl (>= 5.8.0), cupsys (>= 1.1.23) | cups (>= 1.1.23)
+Depends: ${shlibs:Depends}, perl (>= 5.8.0), cupsys (>= 1.2.5) | cups (>= 1.2.5)
 Suggests: gutenprint-doc (>= ${Source-Version}), gutenprint-locales (>= ${Source-Version})
 Replaces: cupsys-driver-gimpprint, cupsys-driver-gimpprint-data
 Description: printer drivers for CUPS
diff -urN gutenprint-5.0.0.original/debian/control.in gutenprint-5.0.0/debian/control.in
--- gutenprint-5.0.0.original/debian/control.in	2006-11-02 22:06:09.000000000 +0000
+++ gutenprint-5.0.0/debian/control.in	2006-11-02 22:41:59.000000000 +0000
@@ -36,7 +36,7 @@
 Package: cupsys-driver-gutenprint
 Architecture: any
 Section: graphics
-Depends: ${shlibs:Depends}, perl (>= 5.8.0), cupsys (>= 1.1.23) | cups (>= 1.1.23)
+Depends: ${shlibs:Depends}, perl (>= 5.8.0), cupsys (>= 1.2.5) | cups (>= 1.2.5)
 Suggests: gutenprint-doc (>= ${Source-Version}), gutenprint-locales (>= ${Source-Version})
 Replaces: cupsys-driver-gimpprint, cupsys-driver-gimpprint-data
 Description: printer drivers for CUPS
diff -urN gutenprint-5.0.0.original/debian/cupsys-driver-gutenprint.postinst gutenprint-5.0.0/debian/cupsys-driver-gutenprint.postinst
--- gutenprint-5.0.0.original/debian/cupsys-driver-gutenprint.postinst	2006-11-02 22:06:09.000000000 +0000
+++ gutenprint-5.0.0/debian/cupsys-driver-gutenprint.postinst	2006-11-02 22:20:38.000000000 +0000
@@ -26,8 +26,8 @@
 
 if [ "$1" = "configure" ]; then
 # Upgrade in-use PPD files
-  /usr/sbin/cups-genppdconfig.5.0 -u
-  /usr/sbin/cups-genppdupdate.5.0
+  /usr/sbin/cups-genppdconfig.5.0 -u -d /usr/share/ppd/gutenprint/5.0
+  /usr/sbin/cups-genppdupdate.5.0 -s /usr/share/ppd/gutenprint/5.0
 # Restart CUPSys (to register new and updated PPDs)
   [ -x /etc/init.d/cupsys ] && invoke-rc.d cupsys force-reload || true
 elif [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-remove" ] || [ "$1" = "abort-deconfigure" ]; then
diff -urN gutenprint-5.0.0.original/debian/cupsys-driver-gutenprint.postrm gutenprint-5.0.0/debian/cupsys-driver-gutenprint.postrm
--- gutenprint-5.0.0.original/debian/cupsys-driver-gutenprint.postrm	2006-11-02 22:06:09.000000000 +0000
+++ gutenprint-5.0.0/debian/cupsys-driver-gutenprint.postrm	2006-11-02 23:39:24.000000000 +0000
@@ -18,14 +18,13 @@
 
 if [ "$1" = remove ]; then
     # Remove generated PPDs
-    rm -rf /usr/share/cups/model/gutenprint/5.0
+    rm -rf /usr/share/ppd/gutenprint
     [ -x /etc/init.d/cupsys ] && invoke-rc.d cupsys force-reload || true
 fi
 
 if [ "$1" = purge ]; then
     # Remove /etc/cups if it is empty
     rmdir --ignore-fail-on-non-empty /etc/cups
-    rmdir --ignore-fail-on-non-empty /usr/share/cups/model/gutenprint
 fi
 
 # dh_installdeb will replace this with shell code automatically
diff -urN gutenprint-5.0.0.original/debian/cupsys-driver-gutenprint.preinst gutenprint-5.0.0/debian/cupsys-driver-gutenprint.preinst
--- gutenprint-5.0.0.original/debian/cupsys-driver-gutenprint.preinst	1970-01-01 01:00:00.000000000 +0100
+++ gutenprint-5.0.0/debian/cupsys-driver-gutenprint.preinst	2006-11-02 22:13:56.000000000 +0000
@@ -0,0 +1,26 @@
+#! /bin/sh
+# preinst script for cupsys-driver-gutenprint
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <new-preinst> `install'
+#        * <new-preinst> `install' <old-version>
+#        * <new-preinst> `upgrade' <old-version>
+#        * <old-preinst> `abort-upgrade' <new-version>
+
+case "$1" in
+install|upgrade)
+    if dpkg --compare-versions "$2" le "5.0.0-2"; then
+        rm -rf /usr/share/cups/model/gutenprint
+    fi
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0


-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux             http://people.debian.org/~rleigh/
 `. `'   Printing on GNU/Linux?       http://gutenprint.sourceforge.net/
   `-    GPG Public Key: 0x25BFB848   Please GPG sign your mail.

Attachment: pgpe4OLkrqXyV.pgp
Description: PGP signature


Reply to: