--- gutenprint-5.2.6.orig/scripts/config.guess +++ gutenprint-5.2.6/scripts/config.guess @@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 # Free Software Foundation, Inc. -timestamp='2008-01-08' +timestamp='2009-06-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -139,16 +139,6 @@ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown -case "${UNAME_MACHINE}" in - i?86) - test -z "$VENDOR" && VENDOR=pc - ;; - *) - test -z "$VENDOR" && VENDOR=unknown - ;; -esac -test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse - # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in @@ -180,7 +170,7 @@ arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep __ELF__ >/dev/null + | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? @@ -334,6 +324,9 @@ case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; @@ -341,7 +334,20 @@ echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + eval $set_cc_for_build + SUN_ARCH="i386" + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH="x86_64" + fi + fi + echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize @@ -650,7 +656,7 @@ # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | - grep __LP64__ >/dev/null + grep -q __LP64__ then HP_ARCH="hppa2.0w" else @@ -806,7 +812,7 @@ x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd) + EM64T | authenticamd | genuineintel) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -816,6 +822,9 @@ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; + 8664:Windows_NT:*) + echo x86_64-pc-mks + exit ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we @@ -850,13 +859,13 @@ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu else - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabi + echo ${UNAME_MACHINE}-unknown-linux-gnueabi fi exit ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) echo cris-axis-linux-gnu @@ -865,51 +874,28 @@ echo crisv32-axis-linux-gnu exit ;; frv:Linux:*:*) - echo frv-${VENDOR}-linux-gnu + echo frv-unknown-linux-gnu exit ;; ia64:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; - mips:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips - #undef mipsel - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mipsel - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips - #else - CPU= - #endif - #endif -EOF - eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' - /^CPU/{ - s: ::g - p - }'`" - test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; } - ;; - mips64:Linux:*:*) + mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU - #undef mips64 - #undef mips64el + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mips64el + CPU=${UNAME_MACHINE}el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips64 + CPU=${UNAME_MACHINE} #else CPU= #endif @@ -920,16 +906,16 @@ s: ::g p }'`" - test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; } + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) - echo or32-${VENDOR}-linux-gnu + echo or32-unknown-linux-gnu exit ;; ppc:Linux:*:*) - echo powerpc-${VENDOR}-linux-gnu + echo powerpc-unknown-linux-gnu exit ;; ppc64:Linux:*:*) - echo powerpc64-${VENDOR}-linux-gnu + echo powerpc64-unknown-linux-gnu exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in @@ -941,41 +927,44 @@ EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null + objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-${VENDOR}-linux-gnu ;; - PA8*) echo hppa2.0-${VENDOR}-linux-gnu ;; - *) echo hppa-${VENDOR}-linux-gnu ;; + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; esac exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-${VENDOR}-linux-gnu + echo hppa64-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) - echo x86_64-${VENDOR}-linux-gnu + echo x86_64-unknown-linux-gnu exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so @@ -990,19 +979,8 @@ p'` case "$ld_supported_targets" in elf32-i386) - TENTATIVE="${UNAME_MACHINE}-${VENDOR}-linux-gnu" + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-${VENDOR}-linux-gnuaout" - exit ;; - coff-i386) - echo "${UNAME_MACHINE}-${VENDOR}-linux-gnucoff" - exit ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-${VENDOR}-linux-gnuoldld" - exit ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build @@ -1035,7 +1013,7 @@ p }'`" test x"${LIBC}" != x && { - echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}" + echo "${UNAME_MACHINE}-pc-linux-${LIBC}" exit } test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } @@ -1068,7 +1046,7 @@ i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) @@ -1112,8 +1090,11 @@ pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 @@ -1151,6 +1132,16 @@ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; @@ -1163,7 +1154,7 @@ rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) @@ -1226,6 +1217,9 @@ BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; @@ -1334,6 +1328,9 @@ i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 @@ -1494,9 +1491,9 @@ the operating system you are using. It is advised that you download the most up to date version of the config scripts from - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD and - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD If the version you run ($0) is already up to date, please send the following data and any information you think might be --- gutenprint-5.2.6.orig/scripts/config.sub +++ gutenprint-5.2.6/scripts/config.sub @@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 # Free Software Foundation, Inc. -timestamp='2008-01-16' +timestamp='2009-06-11' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -122,6 +122,7 @@ case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` @@ -152,6 +153,9 @@ os= basic_machine=$1 ;; + -bluegene*) + os=-cnk + ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 @@ -249,13 +253,16 @@ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ + | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore | mep \ + | maxq | mb | microblaze | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ - | mips64vr | mips64vrel \ + | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ @@ -268,6 +275,7 @@ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ + | moxie \ | mt \ | msp430 \ | nios | nios2 \ @@ -277,7 +285,7 @@ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | score \ - | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ @@ -286,7 +294,7 @@ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) + | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -329,14 +337,17 @@ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ + | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ + | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ @@ -358,20 +369,20 @@ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-*) + | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) @@ -439,6 +450,10 @@ basic_machine=m68k-apollo os=-bsd ;; + aros) + basic_machine=i386-pc + os=-aros + ;; aux) basic_machine=m68k-apple os=-aux @@ -455,10 +470,18 @@ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; + bluegene*) + basic_machine=powerpc-ibm + os=-cnk + ;; c90) basic_machine=c90-cray os=-unicos ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; convex-c1) basic_machine=c1-convex os=-bsd @@ -526,6 +549,10 @@ basic_machine=m88k-motorola os=-sysv3 ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp @@ -1128,6 +1155,10 @@ basic_machine=z8k-unknown os=-sim ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; none) basic_machine=none-none os=-none @@ -1166,7 +1197,7 @@ we32k) basic_machine=we32k-att ;; - sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) @@ -1236,10 +1267,11 @@ # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ + | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ @@ -1248,7 +1280,7 @@ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ + | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ @@ -1388,6 +1420,9 @@ -zvmoe) os=-zvmoe ;; + -dicos*) + os=-dicos + ;; -none) ;; *) @@ -1585,7 +1620,7 @@ -sunos*) vendor=sun ;; - -aix*) + -cnk*|-aix*) vendor=ibm ;; -beos*) --- gutenprint-5.2.6.orig/debian/libgutenprint-dev.docs +++ gutenprint-5.2.6/debian/libgutenprint-dev.docs @@ -0,0 +1,2 @@ +README +doc/FAQ.html --- gutenprint-5.2.6.orig/debian/ijsgutenprint-ppds.install +++ gutenprint-5.2.6/debian/ijsgutenprint-ppds.install @@ -0,0 +1 @@ +debian/install/usr/lib/cups/driver/ijsgutenprint-ppds usr/lib/cups/driver --- gutenprint-5.2.6.orig/debian/libgutenprintui2-1.install +++ gutenprint-5.2.6/debian/libgutenprintui2-1.install @@ -0,0 +1 @@ +debian/install/usr/lib/libgutenprintui2.so.* usr/lib --- gutenprint-5.2.6.orig/debian/ijsgutenprint-ppds.postinst +++ gutenprint-5.2.6/debian/ijsgutenprint-ppds.postinst @@ -0,0 +1,79 @@ +#! /bin/bash +# postinst script for ijsgutenprint-ppds +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +#s/^if\s+\[\s+"\$1"\s+=\s+"configure"\s+\];\s+then\s+ldconfig\b//m; + +if [ "$1" = "configure" ]; then + # Do the following only if CUPS is running and the needed CUPS tools + # are available + if which lpstat > /dev/null 2>&1 && \ + which lpinfo > /dev/null 2>&1 && \ + which lpadmin > /dev/null 2>&1 && \ + LC_ALL=C lpstat -h /var/run/cups/cups.sock -r | grep -v not > /dev/null 2>&1; then + # Update the PPD files of all already installed print queues + driverregexp='^ijsgutenprint-ppds:' + gennicknameregexp='s/\.[\d\.]*$//; s/ LF / Large Format /' + [ ! -z "$gennicknameregexp" ] && \ + gennicknameregexp="; $gennicknameregexp" + gennicknameregexp='s/\s*\(recommended\)//'"$gennicknameregexp" + tempfiles= + trap 'rm -f $tempfiles; exit 0' 0 HUP INT QUIT ILL ABRT PIPE TERM + tmpfile1=`mktemp -t updateppds.XXXXXX` + tempfiles="$tempfiles $tmpfile1" + lpinfo -h /var/run/cups/cups.sock -m | grep -E $driverregexp > $tmpfile1 + cd /etc/cups/ppd + for ppd in *.ppd; do + [ -r "$ppd" ] || continue + queue=${ppd%.ppd} + lpstat -h /var/run/cups/cups.sock -p "$queue" >/dev/null 2>&1 || continue + nickname=`grep '\*NickName:' "$ppd" | cut -d '"' -f 2 | perl -p -e 's/\n$//' | perl -p -e "$gennicknameregexp" | perl -p -e 's/(\W)/\\\\$1/g'` + lang=`grep '\*LanguageVersion:' "$ppd" | cut -d ' ' -f 2 | perl -e 'print lc(<>)' | perl -p -e 's/[\r\n]//gs'` + ppdfound="0" + englishppduri="" + tmpfile2=`mktemp -t updateppds.XXXXXX` + tempfiles="$tempfiles $tmpfile2" + cat $tmpfile1 | perl -p -e "$gennicknameregexp" | grep -E '^\S+\s+.*'"$nickname"'$' | cut -d ' ' -f 1 > $tmpfile2 + while read newppduri; do + [ "$ppdfound" = "0" ] && lpadmin -h /var/run/cups/cups.sock -p "$queue" -m $newppduri 2>/dev/null || continue + newlang=`grep '\*LanguageVersion:' "$ppd" | cut -d ' ' -f 2 | perl -e 'print lc(<>)' | perl -p -e 's/[\r\n]//gs'` + [ "$newlang" = "$lang" ] && ppdfound="1" + [ "$newlang" = "english" ] && englishppduri="$newppduri" + done < $tmpfile2 + [ "$ppdfound" = "0" ] && [ ! -z "$englishppduri" ] && lpadmin -h /var/run/cups/cups.sock -p "$queue" -m $englishppduri 2>/dev/null && ppdfound="1" + [ "$ppdfound" = "1" ] && echo PPD for printer $queue updated >&2 + done + fi +elif [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-remove" ] || [ "$1" = "abort-deconfigure" ]; then + : +else + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 +fi + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 --- gutenprint-5.2.6.orig/debian/copyright +++ gutenprint-5.2.6/debian/copyright @@ -0,0 +1,34 @@ +This package was debianized by Roger Leigh on +Fri, 26 Jan 2001 17:42:06 +0000. + +It was downloaded from CVS: + gimp-print.cvs.sourceforge.net:/cvsroot/gimp-print (module print) +See http://sourceforge.net/cvs/?group_id=1537 for full instructions. + +The official release tarballs are available from: + http://sourceforge.net/project/showfiles.php?group_id=1537 + +See also http://gimp-print.sourceforge.net/. + + +Upstream Authors: Michael Sweet (mike@easysw.com) + Robert Krawitz (rlk@alum.mit.edu) + and the rest of the Gutenprint development team. + + +Copyright: + +This software is Copyright © 1997-2008 Michael Sweet and Robert Krawitz + +You are free to distribute this software under the terms of +the GNU General Public License. +On Debian systems, the complete text of the GNU General Public +License can be found in /usr/share/common-licenses/GPL file. + +The user manual, in the gutenprint-doc package, is licensed under the +terms of the GNU Free Documentation License. +On Debian systems, the complete text of the GNU Free Documentation +License can be found in /usr/share/common-licenses/GFDL-1.2 + + + -- Roger Leigh Fri, 04 Jan 2008 23:14:01 +0000 --- gutenprint-5.2.6.orig/debian/ijsgutenprint.install +++ gutenprint-5.2.6/debian/ijsgutenprint.install @@ -0,0 +1,2 @@ +debian/install/usr/bin/ijsgutenprint.5.2 usr/bin +debian/install/usr/share/man/man1/ijsgutenprint.1 usr/share/man/man1 --- gutenprint-5.2.6.orig/debian/libgutenprint-dev.install +++ gutenprint-5.2.6/debian/libgutenprint-dev.install @@ -0,0 +1,3 @@ +debian/install/usr/lib/libgutenprint.so usr/lib +debian/install/usr/lib/pkgconfig/gutenprint.pc usr/lib/pkgconfig +debian/install/usr/include/gutenprint usr/include --- gutenprint-5.2.6.orig/debian/foomatic-db-gutenprint.postinst +++ gutenprint-5.2.6/debian/foomatic-db-gutenprint.postinst @@ -0,0 +1,79 @@ +#! /bin/bash +# postinst script for foomatic-db-gutenprint +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +#s/^if\s+\[\s+"\$1"\s+=\s+"configure"\s+\];\s+then\s+ldconfig\b//m; + +if [ "$1" = "configure" ]; then + # Do the following only if CUPS is running and the needed CUPS tools + # are available + if which lpstat > /dev/null 2>&1 && \ + which lpinfo > /dev/null 2>&1 && \ + which lpadmin > /dev/null 2>&1 && \ + LC_ALL=C lpstat -h /var/run/cups/cups.sock -r | grep -v not > /dev/null 2>&1; then + # Update the PPD files of all already installed print queues + driverregexp='^foomatic:\S*-gutenprint-ijs' + gennicknameregexp='s/\.[\d\.]*$//; s/ LF / Large Format /' + [ ! -z "$gennicknameregexp" ] && \ + gennicknameregexp="; $gennicknameregexp" + gennicknameregexp='s/\s*\(recommended\)//'"$gennicknameregexp" + tempfiles= + trap 'rm -f $tempfiles; exit 0' 0 HUP INT QUIT ILL ABRT PIPE TERM + tmpfile1=`mktemp -t updateppds.XXXXXX` + tempfiles="$tempfiles $tmpfile1" + lpinfo -h /var/run/cups/cups.sock -m | grep -E $driverregexp > $tmpfile1 + cd /etc/cups/ppd + for ppd in *.ppd; do + [ -r "$ppd" ] || continue + queue=${ppd%.ppd} + lpstat -h /var/run/cups/cups.sock -p "$queue" >/dev/null 2>&1 || continue + nickname=`grep '\*NickName:' "$ppd" | cut -d '"' -f 2 | perl -p -e 's/\n$//' | perl -p -e "$gennicknameregexp" | perl -p -e 's/(\W)/\\\\$1/g'` + lang=`grep '\*LanguageVersion:' "$ppd" | cut -d ' ' -f 2 | perl -e 'print lc(<>)' | perl -p -e 's/[\r\n]//gs'` + ppdfound="0" + englishppduri="" + tmpfile2=`mktemp -t updateppds.XXXXXX` + tempfiles="$tempfiles $tmpfile2" + cat $tmpfile1 | perl -p -e "$gennicknameregexp" | grep -E '^\S+\s+.*'"$nickname"'$' | cut -d ' ' -f 1 > $tmpfile2 + while read newppduri; do + [ "$ppdfound" = "0" ] && lpadmin -h /var/run/cups/cups.sock -p "$queue" -m $newppduri 2>/dev/null || continue + newlang=`grep '\*LanguageVersion:' "$ppd" | cut -d ' ' -f 2 | perl -e 'print lc(<>)' | perl -p -e 's/[\r\n]//gs'` + [ "$newlang" = "$lang" ] && ppdfound="1" + [ "$newlang" = "english" ] && englishppduri="$newppduri" + done < $tmpfile2 + [ "$ppdfound" = "0" ] && [ ! -z "$englishppduri" ] && lpadmin -h /var/run/cups/cups.sock -p "$queue" -m $englishppduri 2>/dev/null && ppdfound="1" + [ "$ppdfound" = "1" ] && echo PPD for printer $queue updated >&2 + done + fi +elif [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-remove" ] || [ "$1" = "abort-deconfigure" ]; then + : +else + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 +fi + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 --- gutenprint-5.2.6.orig/debian/gutenprint-doc.doc-base +++ gutenprint-5.2.6/debian/gutenprint-doc.doc-base @@ -0,0 +1,11 @@ +Document: gutenprint-doc +Title: Gutenprint 5.2 User's Manual +Author: Robert Krawitz +Abstract: Gutenprint is a set of printer drivers written to take + advantage of the full capabilities of a wide range of printers. This + document explaina how to configure and use the Gutenprint software to + achieve high quality printouts. +Section: Graphics + +Format: PDF +Files: /usr/share/doc/gutenprint-doc/gutenprint-users-manual.pdf --- gutenprint-5.2.6.orig/debian/gimp-gutenprint.install +++ gutenprint-5.2.6/debian/gimp-gutenprint.install @@ -0,0 +1,2 @@ +debian/install/usr/lib/gimp/2.0/plug-ins/gutenprint usr/lib/gimp/2.0/plug-ins +samples/*.png usr/share/doc/gutenprint/samples --- gutenprint-5.2.6.orig/debian/libgutenprint-doc.install +++ gutenprint-5.2.6/debian/libgutenprint-doc.install @@ -0,0 +1,2 @@ +doc/developer/reference-html/* usr/share/doc/libgutenprint-doc/developer/html +doc/gutenprint/* usr/share/doc/libgutenprint-doc/reference --- gutenprint-5.2.6.orig/debian/libgutenprintui2-dev.install +++ gutenprint-5.2.6/debian/libgutenprintui2-dev.install @@ -0,0 +1,3 @@ +debian/install/usr/lib/libgutenprintui2.so usr/lib +debian/install/usr/lib/pkgconfig/gutenprintui2.pc usr/lib/pkgconfig +debian/install/usr/include/gutenprintui2 usr/include --- gutenprint-5.2.6.orig/debian/gutenprint-locales.install +++ gutenprint-5.2.6/debian/gutenprint-locales.install @@ -0,0 +1 @@ +debian/install/usr/share/locale usr/share --- gutenprint-5.2.6.orig/debian/cups-driver-gutenprint.install +++ gutenprint-5.2.6/debian/cups-driver-gutenprint.install @@ -0,0 +1,9 @@ +debian/install/etc/cups/command.types usr/share/cups/mime +debian/install/usr/bin/cups-calibrate usr/bin +debian/install/usr/sbin/cups-genppdupdate usr/sbin +debian/install/usr/lib/cups/driver/gutenprint.* usr/lib/cups/driver +debian/install/usr/lib/cups/filter usr/lib/cups +debian/install/usr/share/cups/calibrate.ppm usr/share/cups +debian/install/usr/share/man/man8/cups-calibrate.8 usr/share/man/man8 +debian/install/usr/share/man/man8/cups-genppdupdate.8 usr/share/man/man8 +debian/install/usr/share/apport/package-hooks/source_gutenprint.py usr/share/apport/package-hooks --- gutenprint-5.2.6.orig/debian/gimp-gutenprint.docs +++ gutenprint-5.2.6/debian/gimp-gutenprint.docs @@ -0,0 +1,3 @@ +README +doc/*.html +doc/*.png --- gutenprint-5.2.6.orig/debian/control +++ gutenprint-5.2.6/debian/control @@ -0,0 +1,271 @@ +Source: gutenprint +Section: graphics +Priority: optional +Maintainer: Ubuntu Core Developers +XSBC-Original-Maintainer: Debian Printing Group +Uploaders: Roger Leigh , W. van den Akker +Standards-Version: 3.8.4 +Build-Depends: libcups2-dev, libcupsimage2-dev, libgimp2.0-dev, libreadline-dev, libijs-dev, debhelper (>= 7.0.0), zlib1g-dev, flex, gettext, foomatic-db-engine, foomatic-db, chrpath, quilt, xz-utils, python-all-dev +Vcs-Browser: http://git.debian.org/?p=collab-maint/gutenprint.git +Vcs-Git: git://git.debian.org/git/collab-maint/gutenprint + +Package: gimp-gutenprint +Architecture: any +Depends: ${misc:Depends}, ${shlibs:Depends}, gimp (>= 2.4.0~rc1-1) +Suggests: gutenprint-doc (>= ${source:Version}), gutenprint-locales (>= ${source:Version}) +Enhances: gimp +Description: print plugin for the GIMP + This package includes the Gutenprint Print plugin for the GIMP. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: cups-driver-gutenprint +Architecture: any +Section: graphics +Depends: ${misc:Depends}, ${shlibs:Depends}, perl (>= 5.8.0), cups (>= 1.3.0), cups-client (>= 1.3.0), ghostscript-cups +Suggests: gutenprint-doc (>= ${source:Version}), gutenprint-locales (>= ${source:Version}) +Conflicts: cupsys-driver-gutenprint (<= 5.1.99) +Replaces: cupsys-driver-gutenprint (<= 5.1.99) +Description: printer drivers for CUPS + This package includes a CUPS driver based on Gutenprint. + . + The CUPS drivers contain all of the files needed to support + photo-quality printing on any printer supported by Gutenprint. You + can find out more about the Common UNIX Printing System ("CUPS"), an + IPP-based printing system for UNIX/Linux, at: + . + http://www.cups.org + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: cupsys-driver-gutenprint +Architecture: all +Priority: extra +Depends: cups-driver-gutenprint +Description: Transitional package + This dummy package is provided for a smooth transition from the previous + cupsys-driver-gutenprint package (the package is replaced by + cups-driver-gutenprint). It may safely be removed after installation. + +Package: libgutenprint-dev +Architecture: any +Section: libdevel +Depends: ${misc:Depends}, libgutenprint2 (= ${binary:Version}), pkg-config +Suggests: libgutenprint-doc (= ${source:Version}) +Description: development files for the Gutenprint printer driver library + This package contains the header files for the Gutenprint library, + along with a static version of libgutenprint. + . + Install this package if you wish to develop programs that use + libgutenprint. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: libgutenprint-doc +Architecture: all +Section: doc +Depends: ${misc:Depends} +Suggests: libgutenprint-dev (= ${source:Version}) +Description: documentation for the Gutenprint printer driver library + This package contains lots of info-files, DVI docs and other + documentation about the Gutenprint library for photo-quality + printing. + . + Install this package if you want to have lots of info about the + Gutenprint library when you're programming. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: libgutenprint2 +Architecture: any +Section: libs +Depends: ${misc:Depends}, ${shlibs:Depends} +Suggests: gutenprint-locales (>= ${source:Version}) +Description: runtime for the Gutenprint printer driver library + This package includes the Gutenprint shared library, needed to + run programs using Gutenprint drivers. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: libgutenprintui2-dev +Architecture: any +Section: libdevel +Depends: ${misc:Depends}, libgutenprintui2-1 (= ${binary:Version}), pkg-config +Suggests: libgutenprint-doc (= ${source:Version}) +Description: development files for the Gutenprint printer driver user interface library + This package contains the header files for the libgutenprintui + library, along with a static version of libgutenprintui. + libgutenprintui contains GTK+ widgets which may be used for print + dialogs etc. for use with libgutenprint. + . + Install this package if you wish to develop packages that use + libgutenprintui. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: libgutenprintui2-1 +Architecture: any +Section: libs +Depends: ${misc:Depends}, ${shlibs:Depends} +Recommends: gutenprint-locales (>= ${source:Version}) +Description: runtime for the Gutenprint printer driver user interface library + This package includes the libgutenprintui library, necessary to run + gimp-gutenprint. libgutenprintui contains GTK+ widgets which may be + used for print dialogs etc. for use with libgutenprint. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: gutenprint-locales +Architecture: all +Section: libs +Depends: ${misc:Depends} +Description: locale data files for Gutenprint + This package contains the i18n files of Gutenprint, used by + libgutenprint2, cups-driver-gutenprint and escputil. It is also + used by the Print plugin for the GIMP, gimp-gutenprint. + . + They are needed when you want the programs in Gutenprint to print + their messages in other languages than US English. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: escputil +Architecture: any +Section: utils +Depends: ${misc:Depends}, ${shlibs:Depends} +Suggests: gutenprint-locales (>= ${source:Version}) +Description: maintenance utility for Epson Stylus printers + escputil is a utility to clean and align the heads of Epson Stylus + printers. It can also check the current ink levels in the printer. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: ijsgutenprint +Architecture: any +Section: text +Depends: ${misc:Depends}, ${shlibs:Depends}, ghostscript (>= 8.61) +Recommends: ijsgutenprint-ppds | foomatic-db-gutenprint +Description: inkjet server - Ghostscript driver for Gutenprint + This package contains the ijsgutenprint binary which provides + Ghostscript with a Gutenprint driver, including all printers + supported by Gutenprint. ijsgutenprint is an IJS server (driver), + which communicates with Ghostscript (an IJS client) using the IJS + (InkJet Server) communications protocol. IJS is a method for + separating ghostscript drivers from ghostscript, to allow + ghostscript to be more extensible. + . + If you wish to print using Ghostscript and the Gutenprint drivers, + install this package. This is typical for LPRng setups. If you + are using CUPS, cups-driver-gutenprint is a better choice, but + this package will still work with the appropriate foomatic setup + if you wish to make use of foomatic. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: ijsgutenprint-ppds +Architecture: all +Section: text +Depends: ${misc:Depends}, ijsgutenprint (>= ${source:Version}), cups, cups-client, ${python:Depends}, xz-utils, foomatic-filters +Conflicts: foomatic-db-gutenprint +Description: OpenPrinting printer support - Compressed PPDs for Gutenprint IJS printer driver + This package contains the PPD files for Gutenprint's IJS driver in a + compressed archive. This eliminates the need of around 90 MB of Foomatic + XML data and listing all PPDs and getting the needed PPD is much faster. + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: foomatic-db-gutenprint +Architecture: all +Section: text +Depends: ${misc:Depends}, foomatic-db, ijsgutenprint (>= ${source:Version}), cups, cups-client, foomatic-filters +Description: OpenPrinting printer support - database for Gutenprint printer drivers + Foomatic is a printing system designed to make it easier to set up + common printers for use with Debian (and other operating systems). + It provides the "glue" between a print spooler (like CUPS or lpr) and + your actual printer, by telling your computer how to process files + sent to the printer. + . + This package includes support for printers using the Gutenprint + printer driver suite. + . + Home Page: http://www.openprinting.org/ + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. + +Package: gutenprint-doc +Architecture: all +Section: doc +Depends: ${misc:Depends} +Suggests: cups-driver-gutenprint (>= ${source:Version}), ijsgutenprint-ppds (>= ${source:Version}) | foomatic-db-gutenprint (>= ${source:Version}), gimp-gutenprint (>= ${source:Version}), ijsgutenprint (>= ${source:Version}) +Description: users' guide for Gutenprint and CUPS + This package contains a user guide for programs using the + Gutenprint library for photographic quality printing. Currently + this covers using the Print plugin for the GIMP and the Common Unix + Printing System (CUPS). + . + Gutenprint is the print facility for the GIMP, and in addition a + suite of drivers that may be used with common UNIX spooling systems + using GhostScript or CUPS. These drivers provide printing quality + for UNIX/Linux on a par with proprietary vendor-supplied drivers in + many cases, and can be used for many of the most demanding printing + tasks. Gutenprint was formerly known as Gimp-Print. --- gutenprint-5.2.6.orig/debian/README.Debian +++ gutenprint-5.2.6/debian/README.Debian @@ -0,0 +1,19 @@ +Gutenprint for Debian +--------------------- + +This is Gutenprint version 5.2. Gutenprint is the print facility for +the GIMP, and in addition a suite of drivers that may be used with +common UNIX spooling systems using Ghostscript or CUPS. These drivers +provide printing quality for UNIX/Linux on a par with proprietary +vendor-supplied drivers in many cases, and can be used for many of the +most demanding printing tasks. + +A complete list of supported printers may be found in the NEWS file. +On Debian GNU/Linux, the NEWS file is called `changelog.gz'. + +Documentation can be found in the gutenprint-doc package, which covers +the use of libgutenprint-based programs, and the libgutenprint-doc +package, which covers developing programs using libgutenprint. + + + -- Roger Leigh , Fri, 09 May 2008 17:02:10 +0100 --- gutenprint-5.2.6.orig/debian/rules +++ gutenprint-5.2.6/debian/rules @@ -0,0 +1,178 @@ +#!/usr/bin/make -f +# rules to package gutenprint +# +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This has to be exported to make some magic below work. +export DH_OPTIONS + +# Use dpatch. +include /usr/share/quilt/quilt.make + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + + +ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) + CFLAGS += -g +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +update-patch-series: + mkdir -p $(CURDIR)/debian/patches + rm -f $(CURDIR)/debian/patches/*.patch + git format-patch -o $(CURDIR)/debian/patches patches ^upstream | \ + xargs -n 1 -r basename > $(CURDIR)/debian/patches/series + for patch in $$(ls $(CURDIR)/debian/patches/*.patch); do \ + lines=$$(cat $$patch | wc -l); \ + head -n $$(($$lines - 3)) $$patch > $${patch}.chomped; \ + mv $${patch}.chomped $$patch; \ + done + +autoconfigure: debian/autoconfigure-stamp +debian/autoconfigure-stamp: debian/control + [ -r scripts/config.sub.orig ] || \ + cp -f scripts/config.sub scripts/config.sub.orig + [ -r scripts/config.guess.orig ] || \ + cp -f scripts/config.guess scripts/config.guess.orig + + [ ! -r /usr/share/misc/config.sub ] || \ + cp -f /usr/share/misc/config.sub scripts/config.sub + [ ! -r /usr/share/misc/config.guess ] || \ + cp -f /usr/share/misc/config.guess scripts/config.guess + + dh_testdir + mkdir debian/build; \ + cd debian/build; \ + ../../configure --host=$(DEB_HOST_GNU_TYPE) \ + --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr --mandir=\$${prefix}/share/man \ + --disable-static --enable-shared --disable-rpath --disable-static-genppd \ + --enable-nls --with-modules=dlopen \ + --enable-libgutenprintui2 --with-gimp2 \ + --with-cups --enable-cups-level3-ppds --enable-globalized-cups-ppds \ + --enable-simplified-cups-ppds=yes \ + --with-ijs --with-foomatic --with-foomatic3 \ + --disable-test + + touch $@ + + +build: debian/build-stamp +debian/build-stamp: patch debian/autoconfigure-stamp + dh_testdir + + cd debian/build; \ + $(MAKE) + + touch $@ + +clean: realclean unpatch +realclean: debian/control + dh_testdir + + rm -rf debian/install-stamp debian/install + rm -rf debian/build-stamp debian/build + rm -rf debian/autoconfigure-stamp + + [ ! -r scripts/config.guess.orig ] || \ + mv -f scripts/config.guess.orig scripts/config.guess || : + [ ! -r scripts/config.sub.orig ] || \ + mv -f scripts/config.sub.orig scripts/config.sub || : + + dh_clean + + rm -f debian/local/pyppd/*/*.pyc + rm -f debian/local/pyppd/pyppd-ppdfile + rm -rf foomatic foomatic-db + +install: install-indep install-arch + +install-indep: debian/install-stamp + $(MAKE) -f debian/rules DH_OPTIONS=-i install-common + +install-arch: debian/install-stamp + $(MAKE) -f debian/rules DH_OPTIONS=-s install-common + +install-common: + dh_testdir + dh_testroot + dh_prep + dh_installdirs + dh_install + +debian/install-stamp: build debian/control + cd debian/build; \ + $(MAKE) DESTDIR=$(CURDIR)/debian/install install + + # Pre-build PPD files for ijsgutenprint-ppds + mkdir $(CURDIR)/foomatic-db + cp -r /usr/share/foomatic/* $(CURDIR)/foomatic-db + rm -f $(CURDIR)/foomatic-db/db/source/*/*gutenprint*.xml + cp -r $(CURDIR)/debian/install/usr/share/foomatic/* $(CURDIR)/foomatic-db/ + FOOMATICDB=$(CURDIR)/foomatic-db foomatic-compiledb -j 16 -t ppd -d $(CURDIR)/foomatic `ls -1 $(CURDIR)/foomatic-db/db/source/driver/*gutenprint*.xml | perl -p -e 's:^.*db/source/driver/(\S*)\.xml\s*$$:\1\n:'` + + # Compress the PPD files with Vitor Baptista's pyppd PPD + # archiving tool. This makes the space needed for PPDs at least + # 10 times smaller. + (cd debian/local/pyppd/ && \ + chmod 755 bin/pyppd && \ + touch pyppd/__init__.py && \ + PYTHONPATH=. bin/pyppd $(CURDIR)/foomatic && \ + install -D -m 755 pyppd-ppdfile $(CURDIR)/debian/install/usr/lib/cups/driver/ijsgutenprint-ppds && \ + rm -rf $(CURDIR)/foomatic && \ + rm -f pyppd-ppdfile && \ + rm -f */*.pyc \ + ) + + install -D -m 644 debian/local/apport-hook.py $(CURDIR)/debian/install/usr/share/apport/package-hooks/source_gutenprint.py + + touch $@ + +# Build architecture-independent files here. +binary-indep: install-indep + dh_testdir -i + dh_testroot -i + dh_installdocs -i + dh_installexamples -i + dh_installchangelogs -i NEWS + dh_link -i + dh_compress -i -X.pdf -X.odt + dh_fixperms -i + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i + +# Build architecture-dependent files here. +binary-arch: install-arch + dh_testdir -s + dh_testroot -s + dh_installdocs -s + cp src/cups/README debian/cups-driver-gutenprint/usr/share/doc/cups-driver-gutenprint/README.cups + mv debian/ijsgutenprint/usr/share/man/man1/ijsgutenprint.1 debian/ijsgutenprint/usr/share/man/man1/ijsgutenprint.5.2.1 + ln -s ijsgutenprint.5.2.1.gz debian/ijsgutenprint/usr/share/man/man1/ijsgutenprint.1.gz + ln -s ijsgutenprint.5.2 debian/ijsgutenprint/usr/bin/ijsgutenprint + dh_installexamples -s + dh_installchangelogs -s NEWS + dh_strip -s + dh_link -s + dh_compress -s -X.pdf -X.odt + dh_fixperms -s +# Strip DT_RPATH from CUPS binaries. + find debian/cups-driver-gutenprint/usr/lib -type f -perm +0111 -print0 | xargs -0 chrpath --delete + dh_makeshlibs -s -V -X usr/lib/gutenprint + dh_installdeb -s + dh_shlibdeps -s -X usr/lib/gutenprint -l$(CURDIR)/debian/libgutenprint2/usr/lib:$(CURDIR)/debian/libgutenprintui2-1/usr/lib + dh_gencontrol -s + dh_md5sums -s + dh_builddeb -s + +binary: binary-indep binary-arch + +.PHONY: build clean binary-indep binary-arch binary install install-arch install-indep install-common autoconfigure patch unpatch update-patch-series --- gutenprint-5.2.6.orig/debian/libgutenprint2.install +++ gutenprint-5.2.6/debian/libgutenprint2.install @@ -0,0 +1,3 @@ +debian/install/usr/lib/libgutenprint.so.* usr/lib +debian/install/usr/lib/gutenprint usr/lib +debian/install/usr/share/gutenprint/5.2 usr/share/gutenprint --- gutenprint-5.2.6.orig/debian/gutenprint-doc.install +++ gutenprint-5.2.6/debian/gutenprint-doc.install @@ -0,0 +1,2 @@ +debian/install/usr/share/gutenprint/doc/gutenprint-users-manual.pdf usr/share/doc/gutenprint-doc +debian/install/usr/share/gutenprint/doc/gutenprint-users-manual.odt usr/share/doc/gutenprint-doc --- gutenprint-5.2.6.orig/debian/libgutenprint-doc.doc-base.reference +++ gutenprint-5.2.6/debian/libgutenprint-doc.doc-base.reference @@ -0,0 +1,14 @@ +Document: libgutenprint-doc-reference +Title: The libgutenprint API Reference Manual +Author: The Gutenprint Project +Abstract: The gutenprint library routines give programmers an interface to + print high quality bitmap images on most modern printers. It includes drivers + which provide printing quality for UNIX/Linux on a par with proprietary + vendor-supplied drivers in many cases, and can be used for many of the most + demanding printing tasks. This manual is a reference to the libgutenprint + library. +Section: Programming/C + +Format: HTML +Index: /usr/share/doc/libgutenprint-doc/reference/html/index.html +Files: /usr/share/doc/libgutenprint-doc/reference/html/*.html --- gutenprint-5.2.6.orig/debian/cups-driver-gutenprint.postrm +++ gutenprint-5.2.6/debian/cups-driver-gutenprint.postrm @@ -0,0 +1,41 @@ +#! /bin/sh +# postrm script for cups-driver-gutenprint +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `purge' +# * `upgrade' +# * `failed-upgrade' +# * `abort-install' +# * `abort-install' +# * `abort-upgrade' +# * `disappear' overwrit>r> +# for details, see /usr/doc/packaging-manual/ + +if [ "$1" = remove ]; then + # Remove generated PPDs + # (note: user-generated now we no longer generate them automatically) + rm -rf /usr/share/cups/model/gutenprint/5.2 + rmdir /usr/share/cups/model/gutenprint 2>/dev/null || true + rm -rf /usr/share/ppd/gutenprint/5.2 + rmdir /usr/share/ppd/gutenprint 2>/dev/null || true + [ -x /etc/init.d/cups ] && invoke-rc.d cups force-reload || true +fi + +if [ "$1" = purge ]; then + # Remove directories if empty + rmdir /etc/cups 2>/dev/null || true + rmdir /usr/share/cups/model/gutenprint 2>/dev/null || true + rmdir /usr/share/ppd/gutenprint 2>/dev/null || true +fi + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + + --- gutenprint-5.2.6.orig/debian/cups-driver-gutenprint.docs +++ gutenprint-5.2.6/debian/cups-driver-gutenprint.docs @@ -0,0 +1,2 @@ +README +doc/FAQ.html --- gutenprint-5.2.6.orig/debian/foomatic-db-gutenprint.install +++ gutenprint-5.2.6/debian/foomatic-db-gutenprint.install @@ -0,0 +1,2 @@ +debian/install/usr/share/foomatic/db/source/driver/gutenprint*.xml usr/share/foomatic/db/source/driver +debian/install/usr/share/foomatic/db/source/opt/gutenprint-ijs* usr/share/foomatic/db/source/opt --- gutenprint-5.2.6.orig/debian/cups-driver-gutenprint.preinst +++ gutenprint-5.2.6/debian/cups-driver-gutenprint.preinst @@ -0,0 +1,38 @@ +#! /bin/sh +# preinst script for cups-driver-gutenprint +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `install' +# * `install' +# * `upgrade' +# * `abort-upgrade' + +case "$1" in +install|upgrade) + # Remove generated PPDs + # (note: user-generated now we no longer generate them automatically) + # This is to ensure stale PPDs from previous versions are removed. + # When Gutenprint no longer allows the user to generate PPDs, make + # this into a versioned check. + rm -rf /usr/share/cups/model/gutenprint/5.2 + rmdir /usr/share/cups/model/gutenprint 2>/dev/null || true + rm -rf /usr/share/ppd/gutenprint/5.2 + rmdir /usr/share/ppd/gutenprint 2>/dev/null || true + + # Remove /etc/command.types (moved to + # /usr/share/cups/mime/command.types). + if dpkg --compare-versions "$2" le "5.0.2-2"; then + rm -f /etc/cups/command.types + fi +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 --- gutenprint-5.2.6.orig/debian/changelog +++ gutenprint-5.2.6/debian/changelog @@ -0,0 +1,1697 @@ +gutenprint (5.2.6-0ubuntu5) maverick; urgency=low + + * debian/local/pyppd/pyppd/ppd.py, debian/local/pyppd/pyppd/pyppd-ppdfile.in: + Let the compressed PPD archives not contain duplicate PPD URIs, even if the + lines reference the same PPD. Most printer setup tools cannot cope with + duplicate PPD URIs. + + -- Till Kamppeter Wed, 16 Sep 2010 01:07:03 +0200 + +gutenprint (5.2.6-0ubuntu4) maverick; urgency=low + + * debian/patches/generic-large-format-printers.dpatch: Use "Large Format" + instead of "LF" in the names of the Generic PCL printers, this way users + understand better what the difference between the entries is. + * debian/ijsgutenprint-ppds.postinst, debian/foomatic-db-gutenprint.postinst: + Made PPDs of existing print queues also get correctly updated if they are + affected by the model name change introduced by the patch. + + -- Till Kamppeter Thu, 9 Sep 2010 18:26:53 +0200 + +gutenprint (5.2.6-0ubuntu3) maverick; urgency=low + + * debian/rules: Make bin/pyppd executable before calling it and create the + empty file pyppd/__init__.py. These properties are not conveyed by the + .diff.gz file. + + -- Till Kamppeter Fri, 3 Sep 2010 14:25:53 +0200 + +gutenprint (5.2.6-0ubuntu2) maverick; urgency=low + + * debian/control, debian/rules, debian/ijsgutenprint-ppds.postinst, + debian/ijsgutenprint-ppds.install: Introduced the binary package + ijsgutenprint-ppds. This package contains all PPDs which can be generated + from the Foomatic XML database for ijsgutenprint in one compressed pyppd + archive. This takes much less disk space than the XML database (1.1 MB vs. + 102 MB) and access (listing all PPDs, extracting the needed PPD) is also + significantly faster. + * debian/local/pyppd/: Added pyppd scripts to generate compressed PPD + archives. + * debian/rules: debian/install-stamp rule was executed twice during build. + Corrected it to avoid duplicate pre-build of the PPD files for + ijsgutenprint. + + -- Till Kamppeter Tue, 31 Aug 2010 11:01:53 +0200 + +gutenprint (5.2.6-0ubuntu1) maverick; urgency=low + + * New upstream release + - Added support for Canon PIXMA MP360, MP370, MP390, MP510, MP970, + Epson Artisan 50, EP-302, EP-702A, Stylus Photo P50, Stylus Pro 3800 + (experimental), 3880 (experimental), 4800, 4880, 11800, Stylus T59, + T60, TX659. + - Added also explicit support for many PCL-4/5/5e-based laser printers + to have all such printers listed at OpenPrinting also be supported + by Gutenprint (not that Gutenprint is usually not the best driver for + these printers). + - Fix for Epson Stylus S20, S21, T20, and T21 upstream now (LP: #576705). + - Adjust printer definitions of EPSON Stylus Pro 7800 and 9800 to use + Ultrachrome K3 inks. + - Adjust the printer definitions of the Epson Stylus Pro 7880, + 9880, and 11880 to be consistent with new definition of 4880 and + use Ultrachrome K3 w/Vivid Magenta ink. + - Correct printing on Epson Stylus Pro printers (x600, x800, and + x880 series) to position images correctly on the page and to + correctly cut the print in roll feed mode. + - Correct printer definitions of some Kyocera laser printers to + specify tabloid-size (11.7x17) output. + - Correct printer definition of Canon ImageRunner 330s (large + format). + - Add CD Allow Other Media Sizes option to Epson printers to + permit printing to other media sizes when using third party + trays. + - Correct the behavior of scan and page dry times for Epson Stylus + Pro printers. + - The Enhanced Print plugin for GIMP now allows printing very + small images at their correct sizes. + - A Finnish translation has been added. + * debian/patches/S20-S21-T20-T21-regression.dpatch: Removed backported + upstream fix. + + -- Till Kamppeter Wed, 11 Aug 2010 18:33:53 +0200 + +gutenprint (5.2.5-1ubuntu1) maverick; urgency=low + + * Merge from debian unstable. Remaining changes: + - debian/control: Fix dependencies of the cups-driver-gutenprint binary + package + - debian/rules: Build with "--enable-nls" in the "./configure" command + line. + - debian/local/apport-hook.py, debian/rules, + debian/cups-driver-gutenprint.install: Added apport hook. + - debian/cups-driver-gutenprint.postinst: Make failures of the updater + for the PPD files of existing print queues for the CUPS Raster driver + non-fatal + - debian/cups-driver-gutenprint.install: don't install + samples/profile.jpg + - debian/patches/10_cups_modeldir.dpatch: place ppd files in + /usr/share/ppd + - debian/control: Added transitional cupsys-driver-gutenprint package, + easing the transition from hardy. Versioned Conflicts/Replaces. + - debian/foomatic-db-gutenprint.postinst: automatically update the PPD + files of existing CUPS queues which use the IJS driver. + - debian/control: Added dependency on cups and cups-client to + foomatic-db-gutenprint to assure that automatic PPD updates take + place. + - debian/cups-driver-gutenprint.postinst, + debian/foomatic-db-gutenprint.postinst: Call CUPS command line + clients (lpstat, lpadmin, ...) with "-h ..." option to assure local + connections to be done even if a client.conf file points to a + remote CUPS server, as this driver package only serves for the + local CUPS and if the local machine tries to do changes onm a + remote server, the CUPS clients ask for the remote server's password + interactively. + - debian/patches/20_device-id-support.dpatch: Added the suppport for + providing printer device IDs in the generated PPD files. Taken from + the upstream CVS repository of Gutenprint. + * debian/patches/S20-S21-T20-T21-regression.dpatch: Fix regression of + Epson Stylus S20, S21, T20, and T21 not working any more (LP: #576705). + + -- Till Kamppeter Mon, 19 Jul 2010 12:48:35 +0200 + +gutenprint (5.2.5-1) unstable; urgency=low + + * New upstream stable release. + * debian/control: + - Update to standards version 3.8.4. + - Build-Depend on libreadline-dev. + - Use ${misc:Depends}. + + -- Roger Leigh Thu, 18 Feb 2010 21:32:05 +0000 + +gutenprint (5.2.5-0ubuntu1) lucid; urgency=low + + * New upstream release + - Added support for EPSON PX 1001, Artisan 710, 810, Stylus Office + B1100, T1100, T1110, ME Office 1100, WorkForce 310, 315, 610, 615, + 1100, Stylus Photo 1290s, PX650, PX700W, PX710W, PX800FW, PX810FW, + S50, TX710W, TX800FW, TX810FW, Stylus NX115, NX215, NX415, NX515, + S21, SX110, SX115, SX210, SX215, SX410, SX415, SX510W, SX515, + SX600FW, SX610FW, SX615, SX650, T21, T26, T30, T40W, T50, TX110, + TX210, TX300F, TX410, TX510FN, TX550W, TX610FW, TX615, TX650 + - Added Device ID strings to the generated PPDs for printers for which + they are known. + - Correctly handle installable options in PPD files in PostScript + driver of the GIMP printing plugin. + - Correctly handle certain PPD files that previously caused the + PostScript driver (and hence the GIMP printing plugin) to + crash. + - Changed a number of laser printers by Gestetner, Infotec, + Lanier, NRG, Ricoh, Savin, and Xerox to be large format + (A3/tabloid instead of A4/letter). + - Made the QualityEnhancement option (available in the Epson + driver for certain printers) function correctly. + - Allowed Epson printers using Claria inks to select quadtone or + hextone output. + - Corrected escputil status output for Epson Artisan and TX/SX + 7xx/8xx printer families and for a number of the R-series + printers. + - Added support for EA5 envelope (paper size). + - Fixed the margins for the HP LaserJet 2100 and 2100M with A4 + paper. It is likely that other printers will need similar + correction. + - Updated the German translation. + * debian/patches/20_device-id-support.dpatch: Removed, applied upstream. + * debian/patches/10_cups_modeldir.dpatch: Regenerated. + * debian/rules: We must request simplified CUPS Raster PPDs explicitly now, + using "--enable-simplified-cups-ppds=yes" in the "./configure" command + line. + + -- Till Kamppeter Fri, 12 Feb 2010 11:14:35 +0100 + +gutenprint (5.2.4-1ubuntu1) lucid; urgency=low + + * Merge from debian testing, remaining changes: + - debian/control: Fix dependencies of the cups-driver-gutenprint binary + package + - debian/rules: Build with "--enable-nls" in the "./configure" command + line. + - debian/local/apport-hook.py, debian/rules, + debian/cups-driver-gutenprint.install: Added apport hook. + - debian/cups-driver-gutenprint.postinst: Make failures of the updater + for the PPD files of existing print queues for the CUPS Raster driver + non-fatal + - debian/cups-driver-gutenprint.install: don't install + samples/profile.jpg + - debian/patches/10_cups_modeldir.dpatch: place ppd files in + /usr/share/ppd + - debian/control: Added transitional cupsys-driver-gutenprint package, + easing the transition from hardy. Versioned Conflicts/Replaces. + - debian/foomatic-db-gutenprint.postinst: automatically update the PPD + files of existing CUPS queues which use the IJS driver. + - debian/control: Added dependency on cups and cups-client to + foomatic-db-gutenprint to assure that automatic PPD updates take + place. + - debian/cups-driver-gutenprint.postinst, + debian/foomatic-db-gutenprint.postinst: Call CUPS command line + clients (lpstat, lpadmin, ...) with "-h ..." option to assure local + connections to be done even if a client.conf file points to a + remote CUPS server, as this driver package only serves for the + local CUPS and if the local machine tries to do changes onm a + remote server, the CUPS clients ask for the remote server's password + interactively. + - debian/patches/20_device-id-support.dpatch: Added the suppport for + providing printer device IDs in the generated PPD files. Taken from + the upstream CVS repository of Gutenprint. + + -- Till Kamppeter Fri, 12 Feb 2010 11:08:24 +0100 + +gutenprint (5.2.4-1) unstable; urgency=low + + [ Roger Leigh ] + * New upstream stable release. + * cups-driver-gutenprint: Depend on ghostscript-cups, required for + Postscript/PDF printing. + + -- Roger Leigh Sun, 02 Aug 2009 11:50:51 +0100 + +gutenprint (5.2.4-0ubuntu2) karmic; urgency=low + + * debian/cups-driver-gutenprint.postinst, + debian/foomatic-db-gutenprint.postinst: Fixed "lpstat -r" check for the + auto update of PPDs of existing queues. "lpstat -r" exits always with + status 0, we must check the actual output. Call lpstat, lpadmin, and + cupsctl with "-h /var/run/cups/cups.sock" to avoid querying remote + servers set up in /etc/cups/client.conf, and asking for passwords. + Thanks to Martin-Éric Racine for tracking this down and the solution! + See Debian bug #543468. Use signal names instead of numbers for trap. + Quiesces a lintian bashism warning. + + * debian/patches/20_device-id-support.dpatch: Added IEEE-1284 device IDs + to Gutenprint's model database, to avoid wrong driver assignments. + + -- Till Kamppeter Fri, 18 Aug 2009 14:15:24 +0200 + +gutenprint (5.2.4-0ubuntu1) karmic; urgency=low + + * New upstream release + - Added support for Canon PIXMA iX4000, Canon SELPHY CP-520, EPSON + Stylus Photo R2880, EPSON Stylus DX4000 + - Corrections for Epson PM-D600, Epson Stylus Photo R2400, EPSON Artisan + 700/800, Stylus Photo P/TX700/800 series + - Name corrections for all Ricoh anmd OEM printers and for the + EPSON Stylus Photo PX700W,EPSON Stylus Photo TX700W, EPSON Stylus Photo + PX800FW, EPSON Stylus Photo TX800FW + - The EPSON inkjet utility, escputil, now correctly prints the color name + for low ink warnings. + - Printing resolution names have been fixed in non-English locales + in CUPS PPD files. + - A Russian translation has been added. The Danish and Italian + translations have been updated. + - Support has been added for L-size paper with tear-off borders. + - The ordering of inks in quadtone ink sets on Epson printers has + been corrected. In addition, support has been added for MIS + quadtone and 6 tone inks. + - It is now possible to adjust the ink parameters for quadtone + inks in CUPS. Previously, these parameters could only be + adjusted in the enhanced Print plugin for GIMP and other native + Gutenprint applications. + - Updating CUPS PPD files is now faster. + * debian/patches/20_fix_gimpprint_menu_entry.dpatch: Removed, was already + deactivated for longer time. + * debian/patches/25_sync-ricoh-printer-names-with-openprinting.dpatch: + Removed, applied upstream. + + -- Till Kamppeter Fri, 14 Aug 2009 10:06:24 +0200 + +gutenprint (5.2.3-3ubuntu1) karmic; urgency=low + + * Merge from debian unstable, remaining changes: + - cups-driver-gutenprint depends on ghostscript-cups in addition + (needs pdftoraster/pstoraster from ghostscript-cups). + + -- Till Kamppeter Wed, 24 Jun 2009 10:40:49 +0200 + +gutenprint (5.2.3-3) unstable; urgency=low + + * debian/control: cups-driver-gutenprint: Depend on cups-client since + lpadmin and lpstat are used during postinst (Closes: #532880). + + -- Roger Leigh Sat, 13 Jun 2009 10:43:09 +0100 + +gutenprint (5.2.3-2ubuntu2) karmic; urgency=low + + * debian/control: Added ghostscript-cups dependency to the + cups-driver-gutenprint package (LP: #385606). + * debian/control: Added dependencies on cups and cups-client to the + foomatic-db-gutenprint package to assure that automatic updates of + the PPDs of existing print queues really take place. + + -- Till Kamppeter Thu, 11 Jun 2009 23:01:49 +0200 + +gutenprint (5.2.3-2ubuntu1) karmic; urgency=low + + * Merge from Debian unstable, remaining changes: + - debian/control: Fix dependencies of the cups-driver-gutenprint binary + package + - debian/local/apport-hook.py, debian/rules, + debian/cups-driver-gutenprint.install: Add apport hook. + - debian/patches/25_sync-ricoh-printer-names-with-openprinting.dpatch: + Make the names for the printers from Ricoh and OEM the same as in the + OpenPrinting database (foomatic-db). This way the same printer does not + appear two or more times in the model listings of the printer setup + tools and automatic selection of the PPD will work correctly. + - debian/cups-driver-gutenprint.postinst: Make failures of the updater + for the PPD files of existing print queues for the CUPS Raster driver + non-fatal + - debian/cups-driver-gutenprint.install: don't install + samples/profile.jpg + - debian/patches/10_cups_modeldir.dpatch: place ppd files in + /usr/share/ppd + - Add transitional cupsys-driver-gutenprint package, easing the transition + from hardy. + - debian/foomatic-db-gutenprint.postinst: automatically update the PPD + files of existing CUPS queues which use the IJS driver. + * Dropped changes: + - removing obsolete options from "./configure" command line: unnecessary + divergence from Debian, this should be pushed there instead of causing + merge conflicts + - don't need to conflict with the obsolete ijsgimpprint and + foomatic-db-gimp-print packages, gone since pre-hardy + - don't diverge on the doc-base fields, which are correct in the Debian + package + - don't autogenerate debian/control, debian/libgutenprint2.install; this + has caused debian/control to be significantly out of date wrt Debian's, + and the version number increments infrequently. If we're tracking + Debian there's no need to have tools to automate the version update + since it will be done for us; otherwise we should still push these + changes up to Debian first to minimize drift. + - debian/README.Debian, debian/README.building, and + debian/cups-driver-gutenprint.NEWS were out-of-date wrt the Debian + package; sync these. + - debian/rules: the Debian package still builds fine using debian/build, + revert this change. + - don't install cups-genppd anymore, dropped some time ago from the Debian + package and reportedly not needed for current CUPS. + - drop conflicts with cupsys-driver-gimpprint and + cupsys-driver-gimpprint-data, obsolete since pre-hardy. + - debian/patches/20_fix_gimpprint_menu_entry.dpatch: also dropped by the + Debian maintainer, reportedly not used with GIMP >= 2.4. + + -- Steve Langasek Sat, 06 Jun 2009 17:04:02 +0000 + +gutenprint (5.2.3-2) unstable; urgency=low + + * debian/rules: Update build and build-stamp dependencies (it doesn't + matter if debian/control is changed when build is called). This + is already taken care of through the autoconfigure-stamp dependency. + + -- Roger Leigh Sat, 21 Feb 2009 12:49:23 +0000 + +gutenprint (5.2.3-1) experimental; urgency=low + + [ Roger Leigh ] + * New upstream stable release. + * debian/control: + - Use ${source:Version} in place of ${binary:Version} for all + dependencies except for shared library dependencies in library + -dev packages. This relaxes the dependencies so that a specific + debian revision of a package is not strictly required. Thanks to + Amaya Rodrigo Sastre. + - ijsgutenprint no longer depends on obsolete ghostscript packages + (Closes: #447533). + - Build-Depend on debhelper v7. + * debian/cups-driver-gutenprint.postinst: Don't use full path + when running cups-genppdupdate (fix Lintian warning). + * debian/rules: + - update-patch-series: Use xargs -r to cope with null input. + - Use dh_prep in place of dh_clean -k. + - Split install into install-arch and install-indep with common + install-common rule. + - For binary-arch, use -s in place of -a. + + -- Roger Leigh Sun, 04 Jan 2009 18:19:28 +0000 + +gutenprint (5.2.3-0ubuntu5) jaunty; urgency=low + + * debian/cups-driver-gutenprint.postinst: Make failures of the updater + for the PPD files of existing print queues for the CUPS Raster driver + non-fatal (LP: #353220, LP: #353242). + + -- Till Kamppeter Thu, 2 Apr 2009 20:09:49 +0100 + +gutenprint (5.2.3-0ubuntu4) jaunty; urgency=low + + * debian/patches/25_sync-ricoh-printer-names-with-openprinting.dpatch: + Make the names for the printers from Ricoh and OEM the same as in the + OpenPrinting database (foomatic-db). This way the same printer does not + appear two or more times in the model listings of the printer setup + tools and automatic selection of the PPD will work correctly. + + -- Till Kamppeter Fri, 27 Mar 2009 16:42:49 +0100 + +gutenprint (5.2.3-0ubuntu3) jaunty; urgency=low + + * debian/foomatic-db-gutenprint.postinst: Added automatic updating of the + PPD files of the already existing CUPS queues which use the IJS driver + (the CUPS Raster driver was already covered). + + -- Till Kamppeter Thu, 26 Mar 2009 19:15:49 +0100 + +gutenprint (5.2.3-0ubuntu2) jaunty; urgency=low + + * debian/local/apport-hook.py, debian/rules, + debian/cups-driver-gutenprint.install: Added apport hook (LP: #338442). + + -- Till Kamppeter Thu, 19 Mar 2009 17:12:49 +0100 + +gutenprint (5.2.3-0ubuntu1) jaunty; urgency=low + + * New upstream release + - Fixed autmatic generation of globalized PPD files. + - Epson inkjet printers that support duplex printing now use less + restrictive margins (allowing use of more of the page) when + duplex printing is not used. + - Printing to the following Epson printers has been corrected: Epson + Artisan 700, 800, BX300F, EP-801A, EP-901A, EP-901F, ME 300, + ME Office 360, PX-401A, TX300F, Stylus NX100, NX105, Stylus Photo + PX700FW, PX800FW, TX700W, TX800W, Stylus S20, SX100, SX105, T20, + TX100, TX101, TX102, TX103, TX105, TX106, TX109 (LP: #303511). + - Duplex printing has been enabled on the Epson Stylus RX680, + RX685, RX690, PM-A940, and PM-T960. + - Support has been added for the Canon MULTIPASS MP220. + - Preliminary support has been added for the Canon PIXMA iP4600. + * debian/patches/25_genppd_globalized_ppds_fix.dpatch: Removed, merged + upstream. + * debian/control.in, debian/control: Fixed dependencies of the + cups-driver-gutenprint binary package (LP: #291312). + + -- Till Kamppeter Sat, 27 Dec 2008 15:57:08 +0100 + +gutenprint (5.2.2-1) experimental; urgency=low + + [ Roger Leigh ] + * New upstream stable release. + + -- Roger Leigh Sun, 04 Jan 2009 13:05:13 +0000 + +gutenprint (5.2.1-2) experimental; urgency=low + + [ Roger Leigh ] + * debian/compat: Update to debhelper v7 compatibility. + * debian/control: + - Add W. van den Akker to Uploaders. + - ijsgutenprint: Recommend foomatic-db-gutenprint. + - Update description of GIMP Print plugin. + - Build-Depend upon quilt instead of dpatch. + * debian/rules: + - autoconfigure-stamp: Update configure options to create globalised + CUPS PPDs, and remove obsolete options. + - realclean: + + Remove redundant removal of -stamp files. + + Save and restore config.sub and config.guess. Thanks to + Till Kamppeter. + + Move copying of new config.sub and config.guess to + autoconfigure-stamp, or else saving and restoring has no effect. + - install: Replace use of pwd with $(CURDIR). + - Use quilt in place of dpatch, and add rule to generate quilt patch + series from patches branch in git. + - Create -stamp files in the debian/ directory, so no new files are + created outside the debian directory. + * debian/cups-driver-gutenprint.*: Replace use of cupsys with cups. + * debian/cups-driver-gutenprint.postinst: + - Automatically upgrade print queues using the obsolete canon and epson + backends. Attempt to determine the most appropriate alternative + backend from the device name. + - Document USB backend device ID upgrade problems. + * debian/cups-driver-gutenprint.NEWS: New file. + - Document automatic upgrade of print queue backends. + - Document USB backend device ID upgrade problems. + * debian/patches/10_cups_modeldir.dpatch: Remove. + * debian/patches/20_fix_gimpprint_menu_entry.dpatch: Remove. Not needed, + and no longer compiled with GIMP >= 2.4. + * debian/patches/21_gutenprintui_plist_localefix.dpatch: Remove. Since + PPD files are no longer generated, we don't need to patch the source + to use /usr/share/ppd. + + -- Roger Leigh Sat, 01 Nov 2008 18:47:26 +0000 + +gutenprint (5.2.1-1) experimental; urgency=low + + [ W. van den Akker ] + * Upgraded to Standards version 3.8.0. + * debian/*: Update version from 5.1 to 5.2. + + [ Roger Leigh ] + * New upstream stable release. + * debian/control.in: Add Vcs-Browser and Vcs-Git fields. + * debian/control.in: Remove, leaving debian/control. + * debian/control: Remove unnecessary version information in package + descriptions. + * debian/control: Rename cupsys-driver-gutenprint to + cups-driver-gutenprint (already done in 5.0 branch). + * debian/control: Remove dependencies prior to Lenny, including + unneeded versioning and old transitional dependencies. + * debian/rules: Remove library soname substitution in package names. + * debian/README.building: Remove old outdated instructions. + * debian/patches/20_fix_gimpprint_menu_entry.dpatch: Make executable. + + -- Roger Leigh Thu, 30 Oct 2008 00:27:41 +0000 + +gutenprint (5.2.0~rc1-0ubuntu2) jaunty; urgency=low + + * debian/patches/25_genppd_globalized_ppds_fix.dpatch: Fixed autmatic + generation of globalized PPD files if the system's default locale is not + English (LP: #303273). + + -- Till Kamppeter Fri, 5 Dec 2008 16:35:39 +0100 + +gutenprint (5.2.0~rc1-0ubuntu1) intrepid; urgency=low + + * New upstream release + - Corrected page size of PCL CUPS driver output + - Corrected CD position for Epson Stylus Photo R1900 + - Epson Stylus DX8400/DX8450 print correctly now instead of feeding + blank pages + - Colors corrected for low resolutions of Epson's inkjet multifunction + devices + + -- Till Kamppeter Mon, 06 Oct 2008 16:13:39 +0200 + +gutenprint (5.2.0~beta4-0ubuntu1) intrepid; urgency=low + + * New upstream release + * debian/patches/10_cups_modeldir.dpatch: Regenerated. + * debian/patches/21_gutenprintui_plist_localefix.dpatch: Removed, merged + upstream. + * debian/rules: Updated "./configure" command line: Obsolete options removed, + globalized (multi-language) PPDs activated. + * debian/rules: Do not build in debian/build/, the current source code + does not support this any more. + * debian/control.in, debian/cupsys-driver-gutenprint.*, + debian/cups-driver-gutenprint.*, debian/rules: Renamed the CUPS driver + package from cupsys-driver-gutenprint to cups-driver-gutenprint. + * debian/control.in, debian/libgutenprint2.install.in: Fixes in + automatic version number substitution. + * debian/control.in, debian/cups-driver-gutenprint.*, + debian/gutenprint-doc.doc-base, debian/ijsgutenprint.install, + debian/README.building, debian/README.Debian, debian/rules: + Updated version number from 5.0 to 5.2. + + -- Till Kamppeter Mon, 18 Aug 2008 18:30:50 +0200 + +gutenprint (5.1.98.2-2) experimental; urgency=low + + * debian/cupsys-driver-gutenprint.postinst: Remove version suffix from + cups-genppdupdate. + * debian/rules, debian/cupsys-driver-gutenprint.install: Remove + cups-genppd; this is no longer needed with CUPS 1.2.x + (Closes: #474994). + * debian/control: Remove debian revision in Build-Depends package + versions. + + -- Roger Leigh Sat, 10 May 2008 12:32:39 +0100 + +gutenprint (5.1.98.2-1) unstable; urgency=low + + * New upstream stable beta release (Closes: #439961, #480113). + * debian/rules: + - Remove debian/libgutenprint2.install from GENERATED_FILES, and + remove the rule to generate it. + - Rename versioned binaries to 5.1. + - Remove commands for programs and manpages removed in this release. + * debian/control.in: + - Bump version from 5.0 to 5.1. + - cupsys-driver-gutenprint dependency on older ghostscript versions has + been restored, to allow migration to testing. + * debian/cupsys-driver-gutenprint.install: + - Rename versioned binaries to 5.1. + - Remove cups-genppdconfig. + * debian/cupsys-driver-gutenprint.postinst, + debian/cupsys-driver-gutenprint.postrm, + debian/cupsys-driver-gutenprint.preinst: Rename versioned binaries to + 5.1. + * debian/gutenprint-doc.doc-base: Update version, section is now Graphics. + * debian/ijsgutenprint.install: Rename versioned binaries to 5.1. + * debian/libgutenprint2.install.in: Rename to + debian/libgutenprint2.install and hard-code version. + * debian/libgutenprint-doc.doc-base.developer, + debian/libgutenprint-doc.doc-base.reference: Section is now + Programming/C. + * debian/README.Debian: Bump version from 5.0 to 5.2. + * + + -- Roger Leigh Fri, 09 May 2008 17:04:37 +0100 + +gutenprint (5.0.2-2ubuntu1) hardy; urgency=low + + * Merge from debian unstable, remaining changes: + + Enable 10_cups_modeldir patch. + + Don't install samples/profile.jpg + + Munge Maintainer field as per spec. + * debian/rules: Save and restore scripts/config.guess and scripts/config.sub + to avoid patches for these files appearing in the .diff.gz file. + + -- Till Kamppeter Wed, 23 Jan 2008 18:38:14 +0000 + +gutenprint (5.0.2-2) unstable; urgency=low + + * debian/control: + - ijsgutenprint only needs to Depend upon ghostscript. The older + gs-* variants are no longer needed (Closes: #447533). + * debian/cupsys-driver-gutenprint.preinst: + - Remove /etc/cups/command.types if the version is <- 5.0.2-2 + (Closes: #455016). Thanks to Kumar Appaiah for finding this. + * debian/patches/21_gutenprintui_plist_localefix.dpatch: Set locale + to C before executing lpr to get non-localised output. Patches + src/gutenprintui/plist.c and src/gutenprintui2/plist.c to fix + querying of available printers in a non-C locale (Closes: #456281). + + -- Roger Leigh Sun, 06 Jan 2008 00:25:17 +0000 + +gutenprint (5.0.2-1) unstable; urgency=low + + * New upstream release. + * debian/control: + - Update to Standards-Version 3.7.3. + - libgutenprintui2-dev is in Section libdevel. + * debian/compat: Update to version 6. + * debian/changelog: + - Provide link to full GFDL licence text, rather than the + entire licence verbatim. + - Update copyright dates. + + -- Roger Leigh Fri, 04 Jan 2008 23:14:24 +0000 + +gutenprint (5.0.1-4ubuntu1) hardy; urgency=low + + * Merge from debian unstable + * Remaining Ubuntu changes: + + Enable 10_cups_modeldir patch. + + Don't install samples/profile.jpg + + Munge Maintainer field as per spec. + * Ubuntu changes dropped: + - debian/patches/10_cups_modeldir.dpatch: Fix up PPD directory location. + - debian/patches/20_fix_gimpprint_menu_entry.dpatch. + - Moved *.types and *.convs files from /etc/cups to /usr/share/cups/mime. + * Rejig, as the Ubuntu and Debian orig tarballs differ in md5sumness. + + -- Steve Kowalik Sat, 24 Nov 2007 16:01:23 +1100 + +gutenprint (5.0.1-4) unstable; urgency=low + + * debian/control: Rename gimp-print to gimp-gutenprint. + * Rename debian/gimp-print.* to debian/gimp-gutenprint.*. + * debian/gimp-gutenprint.preinst, debian/gimp-gutenprint.postrm: Remove, + since diversions are no longer used. + * debian/gimp-gutenprint.install: Install gutenprint plug-in + (Closes: #439500). + + -- Roger Leigh Thu, 27 Sep 2007 20:03:33 +0100 + +gutenprint (5.0.1-3) unstable; urgency=low + + * debian/control: Remove libgutenprintui1-1 and libgutenprintui-dev, + * debian/rules: Disable libgutenprintui when running configure. Remove + libgutenprintui1-1 from search path for dh_shlibdeps. + as well as libgtk1.2-dev build dependency. + * debian/libgutenprintui1-1.install: Remove. + * debian/libgutenprintui1-dev.install: Remove. + + -- Roger Leigh Sun, 22 Jul 2007 18:46:29 +0100 + +gutenprint (5.0.1-2) unstable; urgency=low + + * debian/control.in: Use ${binary:Version} and ${source:Version} in + place of deprecated ${Source-Version} substvar (Closes: #431391). + Thanks to Vincent Fourmond. + * debian/rules: + - Don't ignore clean target errors. + - Remove duplicate distclean command in the clean target. + + -- Roger Leigh Tue, 03 Jul 2007 23:21:40 +0100 + +gutenprint (5.0.1-1) unstable; urgency=low + + * New upstream stable release. + * debian/control.in: + - Remove cupsys-driver-gimpprint (cupsys-driver-gutenprint now + Conflicts and Replaces this transitional package from Etch). + - Remove foomatic-db-gimp-print (foomatic-db-gutenprint now + Conflicts and Replaces this transitional package from Etch). + - Remove ijsgimpprint (ijsgutenprint now Conflicts and Replaces this + transitional package from Etch). + - Replace linuxprinting.org with OpenPrinting in package descriptions + (merge from Ubuntu). + * debian/cupsys-driver-gutenprint.install: Move /etc/cups/command.types + to /usr/share/cups/mime. + * debian/cupsys-driver-gutenprint.preinst: + - If upgrading from a version less than or equal to 5.0.0-2, remove + /usr/share/cups/model/gutenprint/5.0. + - If upgrading from a version less than or equal to 5.0.1-1, remove + /usr/share/ppd/gutenprint/5.0. + * debian/cupsys-driver-gutenprint.postinst: + - Don't call cups-genppdconfig.5.0 now that PPD files are generated on + the fly. + - cups-genppdupdate.5.0 no longer needs any arguments. + * debian/cupsys-driver-gutenprint.postrm: + - No longer remove PPD files on purge, since PPD files are no longer provided. + * debian/patches/10_cups_modeldir.dpatch: Patch from Ubuntu. Fix up PPD + directory location. (Not actually used yet--the patch needs some + work.) + * debian/patches/20_fix_gimpprint_menu_entry.dpatch: Patch from Ubuntu. + Place the Print option in a better position in the GIMP File menu. + + -- Roger Leigh Sun, 24 Jun 2007 23:22:03 +0100 + +gutenprint (5.0.1-0ubuntu8) gutsy; urgency=low + + * debian/control, debian/control.in: Re-introduced foomatic-db-gutenprint's + dependency on ijsgutenprint, foomatic-db-gutenprint NEEDs ijsgutenprint + (LP: #149899). + Added also dependencies on foomatic-db-engine (needed to generate the PPDs) + and foomatic-filter (needed to print with the PPDs). + Also updated Ghostscript dependency in ijsgutenprint to the current + situation. + * debian/rules: Do not include obsolete link /usr/share/cups/model/gutenprint + which is deleted by the post-install script anyway (LP: #149729). + + -- Till Kamppeter Sat, 6 Oct 2007 17:47:33 +0100 + +gutenprint (5.0.1-0ubuntu7) gutsy; urgency=low + + * Make foomatic-db-gutenprint Recommend ijsgutenprint rather than depend + so foomatic-db-gutenprint can be installed by default in Kubuntu + + -- Jonathan Riddell Fri, 05 Oct 2007 16:55:40 +0100 + +gutenprint (5.0.1-0ubuntu6) gutsy; urgency=low + + * Do not install the unused samples/profile.jpg to save 600k on the CD. + + -- Matthias Klose Fri, 05 Oct 2007 13:58:54 +0200 + +gutenprint (5.0.1-0ubuntu5) gutsy; urgency=low + + * debian/patches/40_canon_ip4000_bad_colors_white_lines_fix.patch.dpatch: + Fix color problems and white lines on Canon Pixma ip4200, ip4000, ip3000, + ... (Fixes LP: #120016, LP: #135311). + + -- Till Kamppeter Wed, 19 Sep 2007 22:47:33 +0100 + +gutenprint (5.0.1-0ubuntu4) gutsy; urgency=low + + * debian/patches/30_printer_model_support_corrections.dpatch: Corrected + support for Canon S300, added support for Epson Stylus CX5900 and + DX4050 (Fixes LP: #72508, LP: #131327, LP: #138822). + + -- Till Kamppeter Wed, 19 Sep 2007 22:47:33 +0100 + +gutenprint (5.0.1-0ubuntu3) gutsy; urgency=low + + * Rebuild for new gimp version. + * s/print/gutenprint/ in gimp-print.install. + + -- Steve Kowalik Sat, 8 Sep 2007 22:50:00 +1000 + +gutenprint (5.0.1-0ubuntu2) gutsy; urgency=low + + * Rebuild to bump gimp-print's gimp Depends. + + -- Daniel Holbach Mon, 25 Jun 2007 09:36:12 +0200 + +gutenprint (5.0.1-0ubuntu1) gutsy; urgency=low + + * New upstream release + + -- Till Kamppeter Tue, 19 Jun 2007 10:47:33 +0100 + +gutenprint (5.0.0.99.1-0ubuntu2) feisty; urgency=low + + * debian/rules, debian/control, debian/cupsys-driver-gutenprint.install: + Moved *.types and *.convs files from /etc/cups to /usr/share/cups/mime + so that they are not considered config files any more (closes: LP#36532). + + -- Till Kamppeter Tue, 14 Mar 2007 14:58:26 +0000 + +gutenprint (5.0.0.99.1-0ubuntu1) feisty; urgency=low + + * New upstream release, RC of 5.0.1 + - Fixes all remaining margin and borderless issues from the previous + package. Now nearly all Epson inkjets which support borderless printing + by hardware will do borderless with Gutenprint. Also regressions in + non-borderless printing are fixed (closes: LP#82186). + - This version has full support for the PPD auto-generation mechanism + of CUPS. Shipping PPDs is not needed any more. + - PPD-spec compliance of the "Resolution" option in the PPDs is fixed + now. + - Roll paper support fixed on R800. + - Improved output quality on Canon printers. + - Duplex on Canon PIXMA iP4000. + - New printer models supported: Many Canon inkjets, dye sublimation + photo printers of various brands, + * debian/cupsys-driver-gutenprint.postinst, + debian/cupsys-driver-gutenprint.postrm, + debian/cupsys-driver-gutenprint.dirs: As the PPD generator is working + now, do not generate the complete set of PPDs any more after installing + the cupsys-driver-gutenprint package. + * debian/control: linuxprinting.org -> OpenPrinting. + + -- Till Kamppeter Sun, 4 Mar 2007 12:58:26 +0000 + +gutenprint (5.0.0+cvs20070127-0ubuntu1) feisty; urgency=low + + * Updated to current CVS snapshot of Gutenprint + - Fixes borderless/full-bleed printing on newer Epson inkjets (C8x and + later). + - Support for more newer Canon inkjets (closes: LP#34599, LP#74027, + LP#80451). + * Removed patch 30_add_lexmark_x73_compaq_ij1200.dpatch, it was applied + upstream. + + -- Till Kamppeter Sat, 27 Jan 2007 22:29:03 +0000 + +gutenprint (5.0.0-3ubuntu1) feisty; urgency=low + + * Merge from debian unstable. + * Added the Lexmark X73 and the Compaq IJ1200 as supported printers + (both Lexmark-Z42 compatible, + patch 30_add_lexmark_x73_compaq_ij1200.dpatch, see LP#59324). + + -- Till Kamppeter Tue, 19 Dec 2006 15:29:03 +0100 + +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 Thu, 2 Nov 2006 22:42:04 +0000 + +gutenprint (5.0.0-2ubuntu2) edgy; urgency=low + + * Ship /usr/share/ppd/gutenprint/5.0/en in the gutenprint package. + Fixes installation issue. + + -- Tollef Fog Heen Wed, 27 Sep 2006 11:49:42 +0200 + +gutenprint (5.0.0-2ubuntu1) edgy; urgency=low + + * Synchronize with Debian unstable. Remaining Ubuntu changes: + - include the user's guide (GFDL licensed). + - Place ppd files in /usr/share/ppd by patch 10_cups_modeldir.dpatch, + generated with the Perl one-liner + + perl -p -i -e 's:(/usr/share/cups|\$\(pkgdatadir\)|\@cups_conf_datadir\@|\$\{cups_conf_datadir\}|\\\$cups_prefix/share)/model:/usr/share/ppd:g' `rgrep -rl /model *` + + and manually removed all hunks on ChangeLog files. + - cupsys-driver-gutenprint: Add compatibility link in + /usr/share/cups/model. + - debian/cupsys-driver-gutenprint.postinst: Quiesce package + configuration, do not spit out a neverending list of PPD files. + - debian/rules, debian/control.in: Drop libgtk1.2-dev build dependency, + drop libgutenprintui1 library (it's not used for anything in Ubuntu + and obsoleted by the GTK 2.0 library). + - debian/cupsys-driver-gutenprint.postinst: Do not fail if + /usr/share/cups/model/gutenprint already exists, but is not a symlink. + Closes: LP#39743 + - debian/cupsys-driver-gutenprint.postrm: Robustify directory cleanup on + purge to not fail for nonexisting directories. Closes: LP#41900 + - fix Malone: #40798: '"print..." command in odd location in menu', via + patch 20_fix_gimpprint_menu_entry.dpatch + * debian/control(.in): Removed version number from libcupsys2-dev + build dependency, to simplify Debian sync. + + -- Till Kamppeter Tue, 12 Sep 2006 22:19:03 +0200 + +gutenprint (5.0.0-2) unstable; urgency=low + + * debian/control.in: cupsys-driver-gutenprint does not recommend + gnome-gv | postscript-viewer (Closes: #384232). It is doubtful this + was of any useful value. Thanks to Christian Hammers. + + -- Roger Leigh Tue, 22 Aug 2006 23:00:04 +0100 + +gutenprint (5.0.0-1) unstable; urgency=low + + * New upstream stable release. + * debian/compat: Switch to debhelper compatibility level 5. + * debian/control.in: + - Replace "beta" with "stable" in package descriptions. + - Add gutenprint-doc package now that GFDL licensed material with no + invariant sections is allowed in main. + - Build-Depend on debhelper >= 5.0.0. + * debian/copyright: Include full GFDL text. + * debian/rules: + - Update upstream version; compute from changelog revision number. + - Don't compress .pdf and .odt files. + * debian/gutenprint-doc.doc-base.in: Use new PDF manual rather than old + (removed) HTML user's guide. + * debian/gutenprint-doc.install: Install new PDF manual (and ODT source) + instead of old (removed) HTML user's guide. + * debian/patches: Drop patches applied upstream: + - 05_genppdconfig_remove_perlmenu.dpatch + - 06_genppdupdate_egrep_stdin_freeze.dpatch + - 07_print_ps_imageable_area_rounding.dpatch + - 08_escputil_raw_device_open.dpatch + * configure.ac: Teach PACKAGE_DATA_DIR about $datarootdir. + * doc/Makefile.am: install-data-local: Install files from $(srcdir), to + fix VPATH build. + + -- Roger Leigh Sat, 12 Aug 2006 18:31:14 +0100 + +gutenprint (5.0.0~rc2-0ubuntu6) dapper; urgency=low + + * debian/patches/20_fix_gimpprint_menu_entry.dpatch: + - fix Malone: #40798: '"print..." command in odd location in menu' + + -- Daniel Holbach Wed, 3 May 2006 21:16:38 +0200 + +gutenprint (5.0.0~rc2-0ubuntu5) dapper; urgency=low + + * debian/cupsys-driver-gutenprint.postrm: Robustify directory cleanup on + purge to not fail for nonexisting directories. Closes: LP#41900 + + -- Martin Pitt Tue, 2 May 2006 16:50:44 +0200 + +gutenprint (5.0.0~rc2-0ubuntu4) dapper; urgency=low + + * debian/cupsys-driver-gutenprint.postinst: Do not fail if + /usr/share/cups/model/gutenprint already exists, but is not a symlink. + Closes: LP#39743 + + -- Martin Pitt Tue, 2 May 2006 14:28:59 +0200 + +gutenprint (5.0.0~rc2-0ubuntu3) dapper; urgency=low + + * debian/cupsys-driver-gutenprint.postinst: Quiesce package configuration, + do not spit out a neverending list of PPD files. + * debian/rules, debian/control.in: Drop libgtk1.2-dev build dependency, drop + libgutenprintui1 library (it's not used for anything in Ubuntu and + obsoleted by the GTK 2.0 library). + + -- Martin Pitt Thu, 13 Apr 2006 15:19:53 +0200 + +gutenprint (5.0.0~rc2-0ubuntu2) dapper; urgency=low + + * Place ppd files in /usr/share/ppd. + * cupsys-driver-gutenprint: Add compatibility link in /usr/share/cups/model. + * Require libcupsys2-dev (>= 1.1.99.b1.r4929-0ubuntu7) as build dependency. + + -- Matthias Klose Tue, 11 Apr 2006 19:39:04 +0200 + +gutenprint (5.0.0~rc2-0ubuntu1) dapper; urgency=low + + * Synchronize with Debian unstable. + * Re-include the user's guide (GFDL licensed). + + -- Matthias Klose Thu, 6 Apr 2006 18:16:23 +0000 + +gutenprint (4.3.99+cvs20060521-4) unstable; urgency=low + + * src/escputil/escputil.c: When a raw device cannot be opened, display + a more informative error message. Patch installed as + debian/patches/08_escputil_raw_device_open.dpatch (Closes: #352106). + + -- Roger Leigh Tue, 6 Jun 2006 21:06:56 +0100 + +gutenprint (4.3.99+cvs20060521-3) unstable; urgency=low + + * src/main/print-ps.c: Round ImageableArea dimensions towards the centre + of the page, and preserve locales recursively. Patch installed as + debian/07_print_ps_imageable_area_rounding.dpatch (Closes: #329027). + + -- Roger Leigh Mon, 5 Jun 2006 10:43:30 +0100 + +gutenprint (4.3.99+cvs20060521-2) unstable; urgency=low + + * debian/rules: Unconditionally set DIALOG when running configure. + * src/cups/cups-genppdupdate.in: Don't freeze waiting on stdin when + running egrep. Patch installed as + debian/patches/06_genppdupdate_egrep_stdin_freeze.dpatch; thanks to + Felix C. Stegerman for identifying the fault and providing the patch + (Closes: #368446). + + -- Roger Leigh Mon, 22 May 2006 19:21:50 +0100 + +gutenprint (4.3.99+cvs20060521-1) unstable; urgency=low + + * New upstream release candidate. + * doc/Makefile.am, doc/Makefile.in: Drop patches from the .diff.gz which + have been dropped upstream. + * debian/cupsys-driver-gutenprint.docs, debian/gimp-print.docs, + debian/ijsgutenprint.docs: Drop doc/gutenprint-options, which is no + longer present. + * debian/libgutenprint-doc.doc-base.developer: Use book1.html, rather + than index.html, which is no longer present in the upstream release + (Closes: #367412). + * debian/control: + - Update to Standards-Version 3.7.2. + - escputil: Recommend cupsys-bsd|lprng|lpr to advise that an lpr + command is available (Closes: #352102). + * debian/copyright: Update with current CVS repository location + (Closes: #361120). + + -- Roger Leigh Sun, 21 May 2006 12:40:54 +0100 + +gutenprint (4.3.99+cvs20060121.dfsg.1-1) unstable; urgency=low + + * New upstream release candidate (5.0.0-rc2). + * The many options provided by Gutenprint are now documented, and this + documentation (gutenprint-options) is now provided for the + cupsys-driver-gutenprint, ijsgimpprint and gimp-print packages in their + documentation directories (Closes: #323172). + * Revert accidental conversion to a debian-native source package in the last + release. + * debian/cupsys-driver-gimpprint.postinst, + debian/cupsys-driver-gimpprint.postrm: Use invoke-rc.d when reloading + cupsys, and don't fail if cupsys fails to reload. Patches pulled from + the Ubuntu patch repository for gimp-print. + + -- Roger Leigh Sun, 22 Jan 2006 14:21:19 +0000 + +gutenprint (4.3.99+cvs20051122.dfsg.1-2) unstable; urgency=low + + * debian/control.in: Remove xlibs-dev from Build-Depends, in + anticipation of its removal from unstable. + + -- Roger Leigh Fri, 16 Dec 2005 10:53:04 +0000 + +gutenprint (4.3.99+cvs20051122.dfsg.1-1) unstable; urgency=low + + * New upstream CVS snapshot (Closes: #340155). + * The GFDL licensed user's guide has been removed from the + upstream tarball to create a DFSG-free .orig.tar.gz. + * Several Epson Stylus Photo printers have been retuned since the + last version (Closes: #335789). + * The Epson Stylus C88 is now supported (Closes: #338961). + * debian/control.in: + - Improve the ijsgutenprint package description (Closes: #337845). + - Remove 'Suggests: gutenprint-doc (>= ${Source-Version})' from + gimp-print and cupsys-driver-gutenprint. + - Remove the gutenprint-doc package, which was GFDL licensed. + The control data is kept in debian/control.gfdl. + * debian/rules: Update UPSTREAM_VERSION to 5.0.0-rc2. + * debian/copyright: Remove the GFDL manual paragraph, and document + its removal due to DFSG incompatibility. + + -- Roger Leigh Tue, 22 Nov 2005 15:44:02 +0000 + +gutenprint (4.3.99+cvs20050901-1) unstable; urgency=low + + * New upstream release candidate. + * Drop patches which have been incorporated upstream: + - 01_cups_genppdupdate_filename_metacharacters.dpatch + - 02_escp2_r800_papers.dpatch + - 03_escp2_colour_adjust_segfault.dpatch + - 04_print_settings_corruption.dpatch + * debian/control: + - cupsys-driver-gutenprint: Drop libperlmenu-perl dependency. + - gimp-print: Add an "Enhances: gimp" to reinforce the fact this is a + useful part of gimp (Closes: #322066). This does not entirely fix the + upgrade issues, but without a strict dependency in gimp (which the + author does not want), this is the best that can be done. + * src/cups/cups-genppdconfig.in: Remove support for perlmenu in favour + of dialog(1). This prevents a number of warnings on startup, and also + removes a lot of dead code (Closes: #323450). Applied as + 05_genppdconfig_remove_perlmenu.dpatch. + + -- Roger Leigh Sat, 3 Sep 2005 20:46:06 +0100 + +gutenprint (4.3.99+cvs20050813-2) unstable; urgency=low + + * src/main/print-canon.c: Change "Plain PIXMA" paper name to + "PlainPIXMA" in order to avoid illegal whitespace in + generated PPD files (Closes: #322397). + + -- Roger Leigh Wed, 31 Aug 2005 21:16:10 +0100 + +gutenprint (4.3.99+cvs20050813-1) unstable; urgency=low + + * New upstream release candidate. + * src/cups/cups-genppdconfig.in: drop Locale::gettext patch, + which is now incorporated upstream. + * debian/control.in, debian/rules: Use dpatch. + * Added cups-genppdupdate patch as + 01_cups_genppdupdate_filename_metacharacters.dpatch + * Don't segfault when using certain paper types with an Epson R800. + Applied patch from Dan Torop as 02_escp2_r800_papers.dpatch + and 03_escp2_colour_adjust_segfault.dpatch (Closes: #321603). + * Don't corrupt print settings under certain conditions, due to + using uninitialised global variables. Applied patch from upstream + based on a patch contributed by Dan Torop as + 04_print_settings_corruption.dpatch (Closes: #321599). + * debian/debian/cupsys-driver-gutenprint.postinst: Remove bashisms. + + -- Roger Leigh Sun, 14 Aug 2005 22:20:52 +0100 + +gutenprint (4.3.99+cvs20050801-1) unstable; urgency=low + + * New upstream release candidate. + * src/cups/cups-genppdconfig.in: Remove "use Locale::gettext" to + drop missing dependency on liblocale-gettext-perl + (Closes: #320745). + + -- Roger Leigh Tue, 2 Aug 2005 21:06:08 +0100 + +gutenprint (4.3.99+cvs20050715-4) unstable; urgency=low + + * debian/rules: Correct the names of the ijsgutenprint + symlinks. + + -- Roger Leigh Thu, 28 Jul 2005 23:19:35 +0100 + +gutenprint (4.3.99+cvs20050715-3) unstable; urgency=low + + * src/cups/cups-genppdupdate.in: Apply patch to handle shell + metacharacters in PPD filenames, to fix a regression from + cupsys-driver-gimpprint (Closes: #319109). + * debian/control.in: Add foomatic-db-gimp-print as a + transitional package to ease upgrades. + * debian/rules: ijsgutenprint symlinks should not be relative + to the build directory (Closes: #319416). + + -- Roger Leigh Thu, 28 Jul 2005 21:14:31 +0100 + +gutenprint (4.3.99+cvs20050715-2) unstable; urgency=low + + * debian/control.in: + - ijsgimpprint depends on ijsgutenprint, not + cupsys-driver-gutenprint (Closes: #318911). + - ijsgimpprint is in section text, not graphics + (correction of override disparity). + + -- Roger Leigh Mon, 18 Jul 2005 18:39:47 +0100 + +gutenprint (4.3.99+cvs20050715-1) unstable; urgency=low + + * New upstream release candidate. + * debian/control.in: Change Maintainer to Debian Printing Group + . + * debian/rules: Don't build translated PPDs. They may be generated + after installation by the user. + + -- Roger Leigh Sat, 16 Jul 2005 22:45:28 +0100 + +gutenprint (4.3.99+cvs20050702-1) experimental; urgency=low + + * New upstream release candidate (Closes: #293890). + * Renamed package to gutenprint. The following packages were + renamed in consequence: + - cupsys-driver-gimpprint renamed to cupsys-driver-gutenprint + - foomatic-db-gimp-print renamed to foomatic-db-gutenprint + - gimpprint-doc renamed to gutenprint-doc + - gimpprint-locales renamed to gutenprint-locales + - ijsgimpprint renamed to ijsgutenprint + - libgimpprint renamed to libgutenprint + - libgimpprint-dev renamed to libgutenprint-dev + - libgimpprint-doc renamed to libgutenprint-doc + * New packages: + - libgimpprintui1-1 (GTK+ 1.2 UI library) + - libgimpprintui1-dev (GTK+ 1.2 UI library headers) + - libgimpprintui2-1 (GTK+ 2.0 UI library) + - libgimpprintui2-dev (GTK+ 2.0 UI library headers) + * Upgrade to Standards-Version 3.6.2 + * Build-Depends: + - replace libreadline4-dev with libreadline5-dev + - add libcupsimage2-dev + - remove libtool + * debian/rules: add LIBRARYUI_VERSION, required to support + separate sonames for libgutenprint and libgutenprintui*. + * cupsys-driver-gutenprint: + - add cups-genppdupdate + - generates the PPDs in postinst, and removes them in prerm + - use new versioned CUPS executables + * libgutenprint: add modules and XML data. + * libgutenprint-doc: + - fix documentation installation for new API reference and + developer's reference. + - distribute gutenprint.pdf; gutenprint.ps is no longer created. + * Remove old and outdated manual pages. + * Provide versioned ijsgutenprint manual page, and unversioned + symlinks for the binary and manpage. + * Create a dummy cupsys-driver-gimpprint package to enable + upgrades from stable. + * Create a dummy ijsgimpprint package to enable upgrades from stable. + * Remove symlinks in debian directory. + * Don't autogenerate files in debian directory for anything but the + libgutenprintui package. + + -- Roger Leigh Sat, 2 Jul 2005 10:12:46 +0100 + +gimp-print (4.2.7-10) unstable; urgency=high + + * cupsys-driver-gimpprint: Depend on a perl >= 5.8.0, otherwise + upgrades from woody may fail due to /usr/bin/cups-genppdupdate + using features only available in perl 5.8 (Closes: #307286). + * Build-Depend on libreadline5-dev, rather than the old + libreadline4-dev. + + -- Roger Leigh Mon, 2 May 2005 14:58:39 +0100 + +gimp-print (4.2.7-9) unstable; urgency=low + + * debian/cups-genppdupdate: Fix grepping of PPDs to work with PPD + file names with shell metacharacters in them. Patch from Martin + Pitt (Closes: #302434). + + -- Roger Leigh Thu, 31 Mar 2005 22:10:41 +0100 + +gimp-print (4.2.7-8) unstable; urgency=low + + * cupsys-driver-gimpprint: Depend on cupsys >= 1.1.23 to ensure + that /etc/init.d/cupsys supports the force-reload option. + Some older versions of cupsys did not, and this causes + package configuration to fail when restarting cupsys. + (Closes: #300966) + + -- Roger Leigh Wed, 23 Mar 2005 18:06:35 +0000 + +gimp-print (4.2.7-7) unstable; urgency=low + + * debian/control.in: + - Prefer gs-esp as gs interpreter. Patch from Colin Watson. + - Recommend gnome-gv as default postscript-viewer. Patch + from Sebastien Bacher. + + -- Roger Leigh Tue, 22 Mar 2005 00:20:09 +0000 + +gimp-print (4.2.7-6) unstable; urgency=low + + * Allow A4 printing on HP DesignJet printers. Patch from + Klaus Singvogel. + + -- Roger Leigh Sat, 19 Mar 2005 09:58:18 +0000 + +gimp-print (4.2.7-5) unstable; urgency=low + + * Patch src/cups/Makefile.in so that genppd will use the "C" + locale when generating PPDs, not the locale of the build + system. This will prevent wrongly UTF-8 encoded "ISOLatin1" + PPDs being generated (Closes: #293178). + * ijsgimpprint: Conditionally depend upon gs-afpl instead of + gs-aladdin, which it replaces (Closes: #293384). + + -- Roger Leigh Wed, 2 Feb 2005 21:45:16 +0000 + +gimp-print (4.2.7-4) unstable; urgency=low + + * cupsys-driver-gimpprint: Use "force-reload" rather than + "reload" in postinst and postrm (Closes: #274820). Reported + by Martin Pitt. + * Applied GNU/k*BSD patch from Robert Millan (Closes: #263763). + + -- Roger Leigh Tue, 5 Oct 2004 19:46:08 +0100 + +gimp-print (4.2.7-3) unstable; urgency=low + + * foomatic-db-gimp-print: ensure all files are UTF-8 encoded + by building the package in a UTF-8 locale (en_GB.UTF-8). + Thanks to Chris Lawrence for finding this problem. + + -- Roger Leigh Tue, 21 Sep 2004 21:37:38 +0100 + +gimp-print (4.2.7-2) unstable; urgency=medium + + * Medium urgency to facilitate the libtiff transition. + * cupsys-driver-gimpprint: + - Link explicitly with -lcupsimage, rather than + `cups-config --image --libs`. This prevents unnecessary + libpng, libjpeg and libtiff dependencies. The cups-config + logic in configure is overridden. Thanks to Steve Langasek + for this patch (Closes: #262852). + - Backport some PPD generation logic from current Gimp-Print + CVS, and use the new PPD keywords in cups-genppdupdate. + The PPD PCFileName keyword was made compliant with the PPD + standard with version 4.2.6 (read: crippled to an 8.3 DOS + filename) which broke the upgrade script since the full PPD + name could no longer be encoded. The new Gimp-Print specific + keywords *StpDriverName, *StpPPDLocation and *StpLocale have + been added to the PPDs, and this information is now used to + correctly upgrade PPDs (Closes: #260072). + * debian/rules: Don't enable maintainer-mode when running + configure. + + -- Roger Leigh Tue, 3 Aug 2004 19:23:19 +0100 + +gimp-print (4.2.7-1) unstable; urgency=low + + * New upstream stable release. + * Dropped patches for: + - missing strdup prototype in AM_PATH_GIMPPRINT (#233971). + - fixing garbage output when files generated with psnup are + printed (#175970). + - correct margin definitions for Epson Stylus C63, C64, C83 + and C84. + All of these patches have been incorporated into the new + release. + * Update to Standards-Version 3.6.1. + * cupsys-driver-gimpprint: update Recommends to depend upon the + current gs package names, and put the virtual package + postscript-viewer as the last alternative, rather than the + first. + * cupsys-driver-gimpprint: patched src/cups/Makefile.am to + disable linking rastertoprinter with a static libgimpprint. + + -- Roger Leigh Sat, 17 Jul 2004 17:38:35 +0100 + +gimp-print (4.2.6-7) unstable; urgency=high + + * Reupload with high urgency to shorten libcupsys2-gnutls10 + transition waiting time. + + -- Roger Leigh Fri, 9 Jul 2004 11:56:34 +0100 + +gimp-print (4.2.6-6) unstable; urgency=low + + * cupsys-driver-gimpprint-data depends on cupsys-driver-gimpprint. + + -- Roger Leigh Wed, 7 Jul 2004 13:26:51 +0100 + +gimp-print (4.2.6-5) unstable; urgency=medium + + * NMU. + * Rebuild against libcupsys2-gnutls10. + + -- Kenshi Muto Thu, 27 May 2004 16:39:55 +0000 + +gimp-print (4.2.6-4) unstable; urgency=low + + * Split architecture-independent data in cupsys-driver-gimpprint + into a separate arch-all cupsys-driver-gimpprint-data package + which cupsys-driver-gimpprint depends upon (Closes: #233338). + * Add missing strdup prototype in AM_PATH_GIMPPRINT in + gimpprint.m4. This prevents configure scripts using this macro + from segfaulting on ia64 (Closes: #233971). + * Correct margin definitions for Epson Stylus C63, C64, C83 and + C84. This is a temporary fix until the margins have been + correctly computed. + * Build-Depend upon libijs-dev (>= 0.35-1) to ensure that + ijsgimpprint is built against the current libijs + (Closes: #237561). + + -- Roger Leigh Fri, 12 Mar 2004 20:32:51 +0000 + +gimp-print (4.2.6-3) unstable; urgency=low + + * Rebuild against new Foomatic packages. This should hopefully + fix autobuilding problems with older Foomatic releases (which + wouldn't autoconfigure on the buildd). + + -- Roger Leigh Mon, 1 Mar 2004 13:07:07 +0000 + +gimp-print (4.2.6-2) unstable; urgency=low + + * Fix garbage output when files generated with psnup are printed. + The output quality will be degraded, and warnings will be + logged, since the job options have been broken. This is + because psnup generates non-ADSC compliant PostScript which + makes pstops output incorrect job options. Patch from + Martin Kögler (Closes: #175970). + + -- Roger Leigh Tue, 10 Feb 2004 19:39:17 +0000 + +gimp-print (4.2.6-1) unstable; urgency=low + + * New upstream stable release. + * cupsys-driver-gimpprint: cups-genppdupdate should escape + metacharacters in queue names. quotemeta fix from David + Beaumont (Closes: #223081). + * A locale issue which resulted in buggy PostScript output + with some locales has been fixed (Closes: #221662). + * CUPS PPD files moved from /usr/share/cups/model/gimp-print + to /usr/share/cups/model/gimp-print/4.2. This is the + 5.0 naming scheme, and will allow 4.2 and 5.0 to + coexist. cups-genppdupdate uses the new scheme. + + -- Roger Leigh Tue, 13 Jan 2004 23:42:02 +0000 + +gimp-print (4.2.5-6) unstable; urgency=low + + * Change Recommends on gimpprint-locales to Suggests (Closes: #212302). + * cupsys-driver-gimpprint postrm should not reload cupsys if it + has already been removed (Closes: #217295). + + -- Roger Leigh Sun, 26 Oct 2003 23:10:31 +0000 + +gimp-print (4.2.5-5) unstable; urgency=low + + * Clean up package descriptions in debian/control.in. + * Don't depend on essential package gzip. + + -- Roger Leigh Sun, 7 Sep 2003 23:04:56 +0100 + +gimp-print (4.2.5-4) unstable; urgency=low + + * Fix the use of an unintialised value in cups-genppdupdate + (Closes: #193501). + * cups-genppdupdate no longer prints an error when there are no PPD files + available (use Perl glob() instead of shell globbing). + * Update cups-genppdupdate using the latest upstream CVS version. + * Replace cupsys-driver-gimpprint dependency on libcompress-zlib-perl, with + a gzip dependency (gunzip replaces Compress::Zlib in cups-genppdupdate). + * Update for Foomatic 3.0: + - Update foomatic-db-gimp-print description (sync with foomatic-db). + - Build-Depend on foomatic-db-engine (foomatic-bin is deprecated). + - Update foomatic-db-gimp-print dependencies (correctly depend on the + new foomatic packages and conflict with the old packages). + - Run configure with --with-foomatic3 + * Include escputil fix from 4.2.6 prerelease to fix intermittent hanging + reads from printer (Closes: #156228). + * Audit all manual pages to ensure correct use of hyphens and minus signs, + required for copy and paste in a unicode locale (Closes: #203930). + * gimp1.2-print has been removed now the gimp package provides an up-to-date + version of the Print plugin. + * Updated debian/copyright to include the GFDL-licensed User's Guide. + + -- Roger Leigh Mon, 25 Aug 2003 19:12:24 +0100 + +gimp-print (4.2.5-3) unstable; urgency=low + + * Build-Depend on libcupsimage2-dev (Closes: #189093). + * Remove automake, autoconf, libtool, and bison from + Build-Depends, since they are not strictly required. + * Remove docbook-utils, texi2html and imagemagick from Build-Depends, + since the documentation is pre-generated in the upstream tarball. + * Change my maintainer email address to . + * Move libgimpprint1-dev to section libdevel. + + -- Roger Leigh Wed, 23 Apr 2003 12:57:58 +0100 + +gimp-print (4.2.5-2) unstable; urgency=low + + * cupsys-driver-gimpprint: cups-genppdupdate will not die if grep exits with + a nonzero status (for example, there are no Gimp-Print PPDs in use). + (Closes: #179137) + * cupsys-driver-gimpprint: Depend on libcompress-zlib-perl, since dh_perl + doesn't compute module dependencies. + (Closes: #179120, #179170, #179171, #179203) + + -- Roger Leigh Fri, 31 Jan 2003 23:26:51 +0000 + +gimp-print (4.2.5-1) unstable; urgency=low + + * New stable release + * Update for Standards-Version 3.5.7 + * Use debian/build and debian/install instead of debian/gimp-print-build + and debian/gimp-print-install, respectively. + * Use dh_install rather than dh_movefiles. This makes debian/rules + slightly cleaner, and debian/install is unchanged after install. + * Create symlinks for HTML manuals, since different versions + of texi2html and db2html create different names. + * Make the dependencies sane (remove incorrect dependencies, and correct + dubious ones). foomatic-db-gimp-print now depends only upon foomatic-db + and ijsgimpprint. + * escputil has been changed to section "utils", and the override changed + (Closes: #145094). + * Gimp-Print PPDs are automatically upgraded using a new tool, + cups-genppdupdate, which will prevent the in-use PPDs mismatching with + the libgimpprint version in use (Closes: #172116). + * The Epson stc640 will now print in greyscale and black and white at + resolutions >= 720 DPI (Closes: #170473). + * The CUPS epson backend uses non-blocking I/O, and so will not hang with + some models when no status readback data is sent. + + -- Roger Leigh Wed, 29 Jan 2003 11:37:49 +0000 + +gimp-print (4.2.4-1) unstable; urgency=low + + * New stable release. + * foomatic-db-gimp-print: removed "stp" data, to start the transition + to using ijsgimpprint only. + * The escputil manual page documents the needed kernel configuration + options (Closes: #139000). + * The gimpprint-doc package includes the following manual pages: + gimpprint-color.7, gimpprint-dithers.7, gimpprint-imagetypes.7 + gimpprint-inktypes.7, gimpprint-mediasizes.7 + gimpprint-mediasources.7, gimpprint-mediatypes.7 + gimpprint-models.7, gimpprint-resolutions.7 + This documents all the features of gimp-print, in particular all of the + details from src/ghost/README (Closes: #113075). + * Magenta and cyan are no longer swapped on some Lexmark printers + (Closes: #166815). + + -- Roger Leigh Tue, 26 Nov 2002 20:54:30 +0000 + +gimp-print (4.2.3-2) unstable; urgency=low + + * Use libtool 1.4.3 instead of the release version, to correctly support + shared libraries on some architectures. Closes #168901 + * escputil is now in section "utils". Closes #145094 + + -- Roger Leigh Tue, 19 Nov 2002 20:55:01 +0000 + +gimp-print (4.2.3-1) unstable; urgency=low + + * New stable release. + * Fixed doc-base problems in libgimpprint-doc. The doc-base file is + generated with sed to insert the version number, Closes #149847 + * libgimpprint$(VERSION)-doc provides and conflicts with a virtual + package libgimpprint-doc to prevent clashes with gimpprint.info + docs. + * New package ijsgimpprint. This provides an IJS server for use + with ghostscript. + * Remove the autotools, texi2html, imagemagick and docbook-utils from the + Build-Depends. + * Put config.sub and config.guess into scripts/ and clean + libgimpprint-doc.doc-base + * I am the new maintainer of gimp-print for Debian. + + -- Roger Leigh Sun, 20 Oct 2002 22:10:17 +0100 + +gimp-print (4.2.2-pre2-1) unstable; urgency=low + + * New stable release, Closes: #148737 + * Upgrade to debhelper version 4 (RL) + * Automate library versioning to work for stable and unstable series. + LIBRARY_VERSION is the library major version or -UPSTREAM_VERSION (RL) + * Update configure regeneration to work with configure.ac (RL) + * libgimpprint$(VERSION)-dev provides and conflicts with a virtual + package `libgimpprint-dev' (RL) + * Remove libgimpprint.postinst as ldconfig is called by debhelper (RL) + * Update package descriptions (RL) + + -- Eric Sharkey Thu, 6 Jun 2002 15:35:28 -0400 + +gimp-print (4.2.2-pre1-1) unstable; urgency=low + + * New upstream release, Closes: #147404, #139218 + * Move escputil to section utils (RL) + * Add postscript-viewer virtual package as an alternative to gs Recommends + for cupsys-driver-gimpprint (RL) + * Reinitialise cupsys after installation or removal of + cupsys-driver-gimpprint (RL) + * Correctly version libgimpprint1 shlibs with -V dh_makeshlibs option + * Fix libgimpprint.postinst to use 'if' instead of 'case', removing a + lintian warning. (RL) + * Split out the message catalogues from the libgimpprint package into + a new gimpprint-locales package to avoid filename conflicts when + multiple libgimpprint versions are installed concurrently. (RL) + * Add libgimpprint-doc.doc-base (existed for six months, but was never + added to CVS!) (RL) + * New package foomatic-db-gimpprint. Contains foomatic data (RL) + + -- Eric Sharkey Sat, 25 May 2002 14:20:17 -0400 + +gimp-print (4.2.0-4) unstable; urgency=low + + * Apply Roger's user's guide Makefile.am patch, Closes: #128421 + * Work around bug #130756 by building docs with EPS1 figures. + + -- Eric Sharkey Sat, 16 Feb 2002 22:46:29 -0500 + +gimp-print (4.2.0-3) unstable; urgency=low + + * Fix locales package description, Closes: #123796 + * Change conflicts to replaces, Closes: #123811 + + -- Eric Sharkey Mon, 31 Dec 2001 12:02:42 -0500 + +gimp-print (4.2.0-2) unstable; urgency=low + + * Fix build dependencies, Closes: #121597 + * Fix broken gimpprint-doc.doc-base pointing to old index filename + * Fix libgimpprint.postinst to use 'if' instead of 'case', removing a + lintian warning. (Roger Leigh) + * Split out the message catalogues from the libgimpprint package into + a new gimpprint-locales package to avoid filename conflicts when + multiple libgimpprint versions are installed concurrently. (RL) + * Add libgimpprint-doc.doc-base (existed for six months, but was never + added to CVS!) (RL) + + -- Eric Sharkey Sun, 9 Dec 2001 09:47:05 -0500 + +gimp-print (4.2.0-1) unstable; urgency=low + + * New upstream release + * cupsys-driver-gimpprint only includes the basic `C' POSIX locale + ppd files due to the size of the ppd files (Roger Leigh) + * New package gimpprint-doc contains the new user guide. (RL) + * Enable i18n (RL) + * Add Build-Depends for gettext (>= 0.10.36-1), because + 'make install' fails with earlier versions due to absent + DESTDIR support. (RL) + * libgimpprint-doc uses ps instead of dvi manual, due to inclusion + of graphics (RL) + * gimp1.2-print no longer registers documentation with doc-base, as + the manual is provided in libgimpprint-doc (RL) + * Disable building of translated PPD files (RL) + + -- Eric Sharkey Sun, 25 Nov 2001 22:20:33 -0500 + +gimp-print (4.1.99-b1-1) unstable; urgency=low + + * New upstream release, Closes: #110066 + * Remove README.dither from libgimpprint-dev.docs (Roger Leigh) + * Add image samples to gimp1.2-print and cupsys-driver-gimpprint (RL) + * Change rules and control to use ABI library versioning (RL) + * Changed library version names to reflect upstream library + versioning change to ABI versioning. (RL) + + -- Eric Sharkey Mon, 23 Jul 2001 10:49:04 -0400 + +gimp-print (4.1.99-a2-1) unstable; urgency=low + + * New upstream release + + -- Eric Sharkey Mon, 23 Jul 2001 10:49:04 -0400 + +gimp-print (4.1.99-a1-1) unstable; urgency=low + + * New upstream release (first 4.2 pre-release) + + -- Eric Sharkey Tue, 10 Jul 2001 16:19:03 -0400 + +gimp-print (4.1.10-1) unstable; urgency=low + + * New upstream release (4.1.8 and 4.1.9 were buggy) + + -- Eric Sharkey Fri, 29 Jun 2001 23:08:27 -0400 + +gimp-print (4.1.7-1) unstable; urgency=low + + * New package libgimpprint-doc for Info and dvi docs. (Roger Leigh) + * Change debian/rules to use separate binary-arch and binary-indep + targets (Roger Leigh) + * New upstream release + + -- Eric Sharkey Wed, 9 May 2001 12:19:43 -0400 + +gimp-print (4.1.6-2) unstable; urgency=low + + * Fix build dependencies to include flex, Closes: #96401 + + -- Eric Sharkey Tue, 8 May 2001 20:09:30 -0400 + +gimp-print (4.1.6-1) unstable; urgency=low + + * New upstream release + + -- Eric Sharkey Mon, 30 Apr 2001 13:45:56 -0400 + +gimp-print (4.1.5-2.01) unstable; urgency=low + + * Recompile 4.1.5-2 with updated debhelper to fix dependencies + * Closes #90741 + + -- Eric Sharkey Fri, 6 Apr 2001 21:11:15 -0400 + +gimp-print (4.1.5-2) unstable; urgency=low + + * Clean up build process so that things work even if some scripts + don't have execute permissions, complicate things a bit by using + funky building script, Closes #89283, I hope... + + -- Eric Sharkey Thu, 15 Mar 2001 21:54:52 -0500 + +gimp-print (4.1.5-1) unstable; urgency=low + + * New upstream release + * First Official version uploaded to Debian + * Close ITP bug for wnpp, Closes #85563 + + -- Eric Sharkey Fri, 2 Mar 2001 19:59:11 -0500 + +gimp-print (4.1.4-2) unstable; urgency=low + + * Repackage gimp-print after forking the Debian branch from 4.1.4 + * Add version numbers to the libgimpprint package name + * Move documentation files from libgimpprint to libgimpprint-dev + + -- Eric Sharkey Tue, 27 Feb 2001 11:22:18 -0500 + +gimp-print (4.1.4-1) unstable; urgency=low + + * New upstream release + * Debian package rewritten from scratch. + * Added diversion of the print plugin that is part of the GIMP + package to /usr/lib/gimp/1.2/print + * Fixed shared library dependencies for programs linked with + libgimpprint + * Added /etc/cups/command.types as a conffile for package cupsys- + driver-gimpprint + * Added gimp1.2-print html and sgml docs to doc-base + * Remove /etc/cups in postrm for cupsys-driver-gimprint (but + won't if not empty) + * Added versioned debhelper Build-Depends + + -- Roger Leigh Fri, 16 Feb 2001 00:16:10 +0000 + +gimp-print (4.0.2-1) unstable; urgency=low + + * Debian packages of the latest GP + + -- Eric Sharkey Sun, 12 Nov 2000 04:46:54 +0900 + +gimp-print (3.1.4-1) unstable; urgency=low + + * Debianised gimp-print built from gimp-print CVS at sourceforge. + + -- Charles Briscoe-Smith Wed, 24 May 2000 00:39:54 +0100 + --- gutenprint-5.2.6.orig/debian/compat +++ gutenprint-5.2.6/debian/compat @@ -0,0 +1 @@ +7 --- gutenprint-5.2.6.orig/debian/cups-driver-gutenprint.postinst +++ gutenprint-5.2.6/debian/cups-driver-gutenprint.postinst @@ -0,0 +1,76 @@ +#! /bin/sh +# postinst script for cups-driver-gutenprint +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see /usr/doc/packaging-manual/ +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +#s/^if\s+\[\s+"\$1"\s+=\s+"configure"\s+\];\s+then\s+ldconfig\b//m; + +if [ "$1" = "configure" ]; then + + # Upgrade in-use PPD files, continue on any failure + cups-genppdupdate || true + # Restart CUPS (to register new and updated PPDs) + [ -x /etc/init.d/cups ] && invoke-rc.d cups force-reload || true + + # Upgrade from obsolete epson and canon backends + + # Note that the current CUPS usb backend, unlike the epson and canon + # backends, does not allow direct use of device names, so these devices will + # require manual modification of the device URI; we can't get the correct + # IEEE-1284 device ID for a given device node without digging into the CUPS + # internals. + LC_ALL=C lpstat -h /var/run/cups/cups.sock -v | + while read devinfo; do + printer=$(echo $devinfo | sed -e 's;device for \(..*\): \(..*\):/\(.*\);\1;') + backend=$(echo $devinfo | sed -e 's;device for \(..*\): \(..*\):/\(.*\);\2;') + device=$(echo $devinfo | sed -e 's;device for \(..*\): \(..*\):/\(.*\);/\3;') + + if [ "$backend" = "epson" ] || [ "$backend" = "canon" ]; then + echo "Backend $backend used by printer $printer is obsolete." + newbackend='parallel' + if ! echo "$device" | grep -q '^/dev'; then + newbackend='socket' + elif echo "$device" | grep -q 'usb'; then + newbackend='usb' + fi + echo "Updating $printer to use $newbackend backend: $newbackend:$device" + lpadmin -h /var/run/cups/cups.sock -p "$printer" -v "$newbackend:$device" + lpstat -h /var/run/cups/cups.sock -v "$printer" + else + echo "Backend $backend used by printer $printer is current." + fi + done + +elif [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-remove" ] || [ "$1" = "abort-deconfigure" ]; then + : +else + echo "postinst called with unknown argument \`$1'" >&2 + exit 0 +fi + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + --- gutenprint-5.2.6.orig/debian/cups-driver-gutenprint.NEWS +++ gutenprint-5.2.6/debian/cups-driver-gutenprint.NEWS @@ -0,0 +1,34 @@ +gutenprint (5.2.1-2) experimental; urgency=low + + * The CUPS "canon" and "epson" backends are obsolete in Gutenprint 5.2, + and have been removed by the upstream developers. Users of these + backends need to migrate their print queues to use the standard + backends such as "usb", "parallel" and "socket", which now contain the + functionality of the old backends. The package postinst script will + attempt to automatically upgrade your print queues to use the + appropriate backend, but the queues should be checked to make sure + that the correct backend has been selected. + + In particular, USB printers will require the print queue to be + modified to use the correct IEEE-1284 device ID. The device IDs + for the USB printers currently connected to the system may be viewed + by running + + /usr/lib/cups/backend/usb + + or for all printers with + + lpinfo -v + + and set with + + lpadmin -p PRINTER -v 'usb://DEVICE-ID' + + Alternatively, this may be done using the CUPS web interface by browsing to + + https://localhost:631/printers + + and then choosing "Modify Printer" for each printer in question. + The available printers will be shown in a list. + + -- Roger Leigh Sat, 01 Nov 2008 16:40:05 +0000 --- gutenprint-5.2.6.orig/debian/escputil.install +++ gutenprint-5.2.6/debian/escputil.install @@ -0,0 +1,2 @@ +debian/install/usr/bin/escputil usr/bin +debian/install/usr/share/man/man1/escputil.1 usr/share/man/man1 --- gutenprint-5.2.6.orig/debian/libgutenprint-doc.doc-base.developer +++ gutenprint-5.2.6/debian/libgutenprint-doc.doc-base.developer @@ -0,0 +1,15 @@ +Document: libgutenprint-doc-developer +Title: The libgutenprint Reference Manual +Author: The Gutenprint Project +Abstract: The gutenprint library routines give programmers an interface to + print high quality bitmap images on most modern printers. It includes drivers + which provide printing quality for UNIX/Linux on a par with proprietary + vendor-supplied drivers in many cases, and can be used for many of the most + demanding printing tasks. This manual covers developing programs that use + libgutenprint for printing, as well as the concepts and internals of the + library. +Section: Programming/C + +Format: HTML +Index: /usr/share/doc/libgutenprint-doc/developer/html/book1.html +Files: /usr/share/doc/libgutenprint-doc/developer/html/*.html --- gutenprint-5.2.6.orig/debian/README.building +++ gutenprint-5.2.6/debian/README.building @@ -0,0 +1,17 @@ +Building the gutenprint Debian packages -*- mode: text -*- +======================================= + +Making changes +-------------- + +If any source changes are required, please use dpatch, and place +the patch under debian/patches. Once you have created a diff, +create a dpatch as follows: + +dpatch patch-template -p '0n_patch_name' "Patch description" \ +< mypatch.diff > debian/patches/0n_patch_name.dpatch + +and add "0n_patch_name.dpatch" to debian/patches/00list + + + -- Roger Leigh , Wed, 29 Oct 2008 23:41:09 +0000 --- gutenprint-5.2.6.orig/debian/escputil.docs +++ gutenprint-5.2.6/debian/escputil.docs @@ -0,0 +1 @@ +README --- gutenprint-5.2.6.orig/debian/patches/generic-large-format-printers.dpatch +++ gutenprint-5.2.6/debian/patches/generic-large-format-printers.dpatch @@ -0,0 +1,31 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## generic-large-format-printers.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' gutenprint-5.2.6~/src/xml/printers.xml gutenprint-5.2.6/src/xml/printers.xml +--- gutenprint-5.2.6~/src/xml/printers.xml 2010-08-11 02:26:09.000000000 +0200 ++++ gutenprint-5.2.6/src/xml/printers.xml 2010-09-09 18:24:27.345839853 +0200 +@@ -771,15 +771,15 @@ + + + +- ++ + +- ++ + +- ++ + +- ++ + +- ++ + + + --- gutenprint-5.2.6.orig/debian/patches/series +++ gutenprint-5.2.6/debian/patches/series @@ -0,0 +1,2 @@ +10_cups_modeldir.dpatch +generic-large-format-printers.dpatch --- gutenprint-5.2.6.orig/debian/patches/10_cups_modeldir.dpatch +++ gutenprint-5.2.6/debian/patches/10_cups_modeldir.dpatch @@ -0,0 +1,126 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 10_cups_modeldir.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: No description. + +@DPATCH@ +diff -urNad gutenprint-5.2.5~/README gutenprint-5.2.5/README +--- gutenprint-5.2.5~/README 2009-12-23 21:10:29.000000000 +0100 ++++ gutenprint-5.2.5/README 2010-02-12 11:50:14.605259292 +0100 +@@ -273,7 +273,7 @@ + + * One or more sets of PPD files describing all of the printers + supported by Gutenprint. These are normally installed in +- /usr/share/cups/model/gutenprint. These PPD files can only be ++ /usr/share/ppd/gutenprint. These PPD files can only be + used by the precise version of Gutenprint that they were built + with; for example, it is not possible to use PPD files from + Gutenprint 5.0.0 with Gutenprint 5.2.0. +@@ -477,8 +477,8 @@ + --disable-cups-ppds-at-top-level + + Normally, the PPD files are placed in +- /usr/share/cups/model/gutenprint/5.2. If this option is used, +- the PPD files are placed in /usr/share/cups/model. There is ++ /usr/share/ppd/gutenprint/5.2. If this option is used, ++ the PPD files are placed in /usr/share/ppd. There is + normally no good reason to use this option. + + --disable-static-genppd +diff -urNad gutenprint-5.2.5~/configure gutenprint-5.2.5/configure +--- gutenprint-5.2.5~/configure 2010-02-12 02:04:30.000000000 +0100 ++++ gutenprint-5.2.5/configure 2010-02-12 11:50:14.615234689 +0100 +@@ -22665,12 +22665,12 @@ + + if test "${CUPS_PPDS_AT_TOP_LEVEL}" = yes ; then + cat >>confdefs.h <<_ACEOF +-#define CUPS_MODELDIR "${cups_conf_datadir}/model/" ++#define CUPS_MODELDIR "/usr/share/ppd/" + _ACEOF + + else + cat >>confdefs.h <<_ACEOF +-#define CUPS_MODELDIR "${cups_conf_datadir}/model/${PACKAGE}/${GUTENPRINT_RELEASE_VERSION}/" ++#define CUPS_MODELDIR "/usr/share/ppd/${PACKAGE}/${GUTENPRINT_RELEASE_VERSION}/" + _ACEOF + + fi +diff -urNad gutenprint-5.2.5~/configure.ac gutenprint-5.2.5/configure.ac +--- gutenprint-5.2.5~/configure.ac 2009-12-23 21:19:19.000000000 +0100 ++++ gutenprint-5.2.5/configure.ac 2010-02-12 11:50:14.615234689 +0100 +@@ -887,9 +887,9 @@ + + AH_TEMPLATE(CUPS_MODELDIR,, [CUPS PPD file directory]) + if test "${CUPS_PPDS_AT_TOP_LEVEL}" = yes ; then +- AC_DEFINE_UNQUOTED(CUPS_MODELDIR, "${cups_conf_datadir}/model/") ++ AC_DEFINE_UNQUOTED(CUPS_MODELDIR, "/usr/share/ppd/") + else +- AC_DEFINE_UNQUOTED(CUPS_MODELDIR, "${cups_conf_datadir}/model/${PACKAGE}/${GUTENPRINT_RELEASE_VERSION}/") ++ AC_DEFINE_UNQUOTED(CUPS_MODELDIR, "/usr/share/ppd/${PACKAGE}/${GUTENPRINT_RELEASE_VERSION}/") + fi + + AC_ARG_WITH(cups_nickname, [ --with-cups-nickname="nickname suffix" +diff -urNad gutenprint-5.2.5~/man/cups-genppdupdate.8.in gutenprint-5.2.5/man/cups-genppdupdate.8.in +--- gutenprint-5.2.5~/man/cups-genppdupdate.8.in 2006-03-29 04:35:25.000000000 +0200 ++++ gutenprint-5.2.5/man/cups-genppdupdate.8.in 2010-02-12 11:50:14.615234689 +0100 +@@ -28,7 +28,7 @@ + [\fIPPD-FILES or QUEUES...\fP] + .SH DESCRIPTION + \fBcups\-genppdupdate\fP regenerates the \fIGutenprint\fP PPD files in use by +-CUPS, using the PPD files under \fI@cups_conf_datadir@/model/gutenprint\fP as ++CUPS, using the PPD files under \fI/usr/share/ppd/gutenprint\fP as + templates. The new PPD file replaces the old PPD file under + \fI@cups_conf_serverroot@/ppd\fP, but all the options set in the old PPD will + be merged into the new PPD, provided that they are still valid in the new file. +@@ -62,7 +62,7 @@ + .TP + .B \-s \fIppd-directory\fP + Use \fIppd-directory\fP as the base directory to read PPD files from. By +-default, the base directory is \fP@cups_conf_datadir@/model/gutenprint\fP. ++default, the base directory is \fP/usr/share/ppd/gutenprint\fP. + Under this directory, the PPD files are located in subdirectories according to + language code and territory. + .TP +diff -urNad gutenprint-5.2.5~/src/cups/Makefile.am gutenprint-5.2.5/src/cups/Makefile.am +--- gutenprint-5.2.5~/src/cups/Makefile.am 2009-04-11 19:19:43.000000000 +0200 ++++ gutenprint-5.2.5/src/cups/Makefile.am 2010-02-12 11:50:14.615234689 +0100 +@@ -37,10 +37,10 @@ + cupsexec_driverdir = $(pkglibdir)/driver + cupsexec_filterdir = $(pkglibdir)/filter + if CUPS_PPDS_AT_TOP_LEVEL +-cups_modeldir = $(pkgdatadir)/model/ ++cups_modeldir = /usr/share/ppd/ + DONT_UNINSTALL_PPDS=true + else +-cups_modeldir = $(pkgdatadir)/model/gutenprint/@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@/ ++cups_modeldir = /usr/share/ppd/gutenprint/@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@/ + endif + + LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) $(CUPS_CFLAGS) +diff -urNad gutenprint-5.2.5~/src/cups/Makefile.in gutenprint-5.2.5/src/cups/Makefile.in +--- gutenprint-5.2.5~/src/cups/Makefile.in 2010-02-12 02:04:26.000000000 +0100 ++++ gutenprint-5.2.5/src/cups/Makefile.in 2010-02-12 11:50:14.625234321 +0100 +@@ -371,8 +371,8 @@ + pkgsysconfdir = $(cups_conf_serverroot) + cupsexec_driverdir = $(pkglibdir)/driver + cupsexec_filterdir = $(pkglibdir)/filter +-@CUPS_PPDS_AT_TOP_LEVEL_FALSE@cups_modeldir = $(pkgdatadir)/model/gutenprint/@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@/ +-@CUPS_PPDS_AT_TOP_LEVEL_TRUE@cups_modeldir = $(pkgdatadir)/model/ ++@CUPS_PPDS_AT_TOP_LEVEL_FALSE@cups_modeldir = /usr/share/ppd/gutenprint/@GUTENPRINT_MAJOR_VERSION@.@GUTENPRINT_MINOR_VERSION@/ ++@CUPS_PPDS_AT_TOP_LEVEL_TRUE@cups_modeldir = /usr/share/ppd/ + @CUPS_PPDS_AT_TOP_LEVEL_TRUE@DONT_UNINSTALL_PPDS = true + LOCAL_CPPFLAGS = $(GUTENPRINT_CFLAGS) $(CUPS_CFLAGS) + STP_ENV = STP_MODULE_PATH=$(top_builddir)/src/main/.libs:$(top_builddir)/src/main STP_DATA_PATH=$(top_srcdir)/src/xml STP_LOCALEDIR=$(top_srcdir)/src/cups/catalog +diff -urNad gutenprint-5.2.5~/src/cups/cups-genppdupdate.in gutenprint-5.2.5/src/cups/cups-genppdupdate.in +--- gutenprint-5.2.5~/src/cups/cups-genppdupdate.in 2010-01-02 16:56:35.000000000 +0100 ++++ gutenprint-5.2.5/src/cups/cups-genppdupdate.in 2010-02-12 11:50:14.625234321 +0100 +@@ -58,7 +58,7 @@ + my $file_version = '"@VERSION@"$'; + + my $ppd_dir = "@cups_conf_serverroot@/ppd"; # Location of in-use CUPS PPDs +-my $ppd_root_dir = "@cups_conf_datadir@/model"; ++my $ppd_root_dir = "/usr/share/ppd"; + my $ppd_base_dir = "$ppd_root_dir/gutenprint/$version"; # Available PPDs + my $ppd_out_dir = ""; # By default output into source directory + my $gzext = ".gz"; --- gutenprint-5.2.6.orig/debian/local/apport-hook.py +++ gutenprint-5.2.6/debian/local/apport-hook.py @@ -0,0 +1,11 @@ +'''apport package hook for gutenprint + +(c) 2009 Canonical Ltd. +Author: Brian Murray +''' + +from apport.hookutils import * + +def add_info(report): + attach_hardware(report) + attach_printing(report) --- gutenprint-5.2.6.orig/debian/local/pyppd/ISSUES.txt +++ gutenprint-5.2.6/debian/local/pyppd/ISSUES.txt @@ -0,0 +1,7 @@ +ISSUES +====== + +* Add unit tests +* When testing if the PPD generated from the *Product line already exists in a + *1284DeviceID line, we do a case-sensitive test. I think it should be case- + insensitive. --- gutenprint-5.2.6.orig/debian/local/pyppd/CHANGES.txt +++ gutenprint-5.2.6/debian/local/pyppd/CHANGES.txt @@ -0,0 +1,332 @@ +v0.4.3 (2010-08-10) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.4.3 + + * pyppd/ppd.py, pyppd/archiver.py: Renaming filename -> uri. + + * pyppd/archiver.py: So we avoid the problem of having PPDs with the same + filename. It's working as: if I call pyppd with the folder /usr/share/ppd, it + removes this part of each PPD path and uses the rest as the URI. For example, + /usr/share/ppd/cups-included/textonly.ppd.gz will have the URI + "cups-included/textonly.ppd". + +v0.4.2 (2010-08-09) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.4.2 + + * pyppd/archiver.py: Oops! Forgot to change the variable name. + + * setup.py: Adds classifiers to setup.py. + + * ISSUES.txt: Removing resolved issue. + + * pyppd/runner.py: I don't think logging to a file is worthwile to pyppd, as + it isn't a daemon. If you encounter some problem, you'll be running it + yourself, Also, I prefer using -v and -vv instead of -v and -d. I think it + makes things more standard. + + * pyppd/runner.py, pyppd/ppd.py, pyppd/archiver.py, ISSUES.txt: Now, pyppd + prints to stdout the WARNING, ERROR and FATAL messages, and logs those and + every other to a log file (defaults to pyppd.log), which has a size limit of + 2 MB. You can use --verbose and --debug to make pyppd more verbose. + +v0.4.1 (2010-08-09) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.4.1 + + * pyppd/archiver.py: When we have two PPDs with the same filename, we create + add a random number to one of them, so we can add both to our archive. But, + if this PPD which'll have the new name have more than one entry in the list, + each entry will have a different random name. This commit fixes this. + + * ISSUES.txt: Adds new issue. + + * ISSUES.txt: "setup.py install" shouldn't link pyppd to + /usr/lib/cups/driver. What should be there isn't pyppd, but the archive + generated by it. + +v0.4.0 (2010-08-09) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.4.0 + + * pyppd/ppd.py: Now, when parsing a PPD, it adds as many *1284DeviceID lines + as it can find. Afterwards, it looks for *Product lines. If found, check if + it's unique (if there wasn't an *1284DeviceID line with the same product + model), and adds it if so. + + * pyppd/archiver.py, ISSUES.txt: If we found a PPD with the same filename, we + simply add a random number (between 0 and 99) to the end of its filename. + + * pyppd/pyppd-ppdfile.in: Renaming index -> value. + +v0.3.0 (2010-08-07) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.3.0 + + * pyppd/ppd.py, pyppd/archiver.py, ISSUES.txt: There are some of PPDs which + are in different files but contains the same "*PCFileName:". So, without this + change, pyppd overwritten them in the index, making them impossible to + recover. Now, it'll only happen when there're two PPDs with the same + basename. I'm also writing at ISSUES.txt that we need to figure out how to + solve this possible problem. + + * pyppd/ppd.py: Fixing typo deviceid -> deviceid_re. + + * pyppd/ppd.py, pyppd/archiver.py: Renaming name -> filename. + + * pyppd/pyppd-ppdfile.in, pyppd/ppd.py, pyppd/archiver.py: As Till Kamppeter + pointed out, a single PPD might have multiple descriptions, following the + rules: a) If the PPD has an "*1284DeviceID:" line, create a single list entry + with this device ID; b) If the PPD has one or more "*Product:" lines, create + a pseudo device ID using the content of the "*Manufacturer:" line as + manufacturer and "*Product:" line as model, whichout the parentheses. + + * ISSUES.txt: Removing "support for .ppd.gz" from our ISSUES list. + +v0.2.2 (2010-08-07) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.2.2 + + * pyppd/archiver.py, README.txt: Now, instead of looking for only *.ppd in + the directory passed as parameter, it looks also for *.ppd.gz. When found, it + tests: does it ends with ".gz" (case-sensitive (I have to change this))? If + so, opens with gzip. If not, opens as usual. When we archive gzipped PPDs, we + save them uncompressed. + + * pyppd/archiver.py: Refactoring some variable names. + +v0.2.1 (2010-08-07) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.2.1 + + * pyppd/archiver.py: Updating archiver.compress() documentation. + +v0.2.0 (2010-08-07) + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in: Changing version to + 0.2.0 + + * pyppd/archiver.py: Removing useless try/except block. + + * pyppd/pyppd-ppdfile.in, pyppd/archiver.py: Instead of creating a .tar + archive, we simply concatenate all PPDs found in a big text file, and save + each's start and length inside of it. Then, when we have to "cat" it, we + decompress the text file and print only In my tests, it's around 8% faster + than using .tar. Also, it makes it easier, in the future, to support not only + files .ppd, but also .ppd.gz. + + * pyppd/runner.py, pyppd/archiver.py: Rename method create_archive -> archive + + * pyppd/archiver.py: Reorganizing methods, the most important at the top + + * pyppd/compressor.py: Updating decompress() documentation + + * pyppd/pyppd-ppdfile.in, pyppd/lzma_proxy.py, pyppd/compressor.py, + pyppd/archiver.py: Renaming lzma_proxy.py to compressor.py + + * pyppd/runner.py, pyppd/compressor.py, pyppd/archiver.py: The runner.py + shouldn't have to use compressor.py. It should simply ask archiver.py to + create the archive. Compression is an implementation detail of archiver. + + * pyppd/runner.py, pyppd/pyppd-ppdfile.in: Fixing version number 0.1.0 -> + 0.1.6 + + * pyppd/ppd.py: Removing space between DeviceID's field name and content. + + * setup.py, contrib/git2changes.py: I made git2changes which simply gets the + commit messages and organizes them into something similar to the GNU + ChangeLog style. But, instead of separating the commits by day, I organize + them by version. I think this way, even as it's not standard, generates a + file that is more useful to pyppd's users. + + * CHANGES.txt, .gitignore: As CHANGES.txt is created from the git log, we + have no use to maintain it under version control. + +v0.1.6 (2010-08-03) + + * setup.py: Changing version to 0.1.6 + + * MANIFEST.in: So, pyppd/pyppd-ppdfile.in gets into the distribution archive. + + * pyppd/pyppd-ppdfile.in: As now we don't uncompress the .tar.xz archive at + ls(), when we tested if ppd.__class__ == tarfile.TarFile, it always failed. + Now, at the iteration, we get the key AND the value (ppd). If the key is + ARCHIVE, we continue. + + * ISSUES.txt: Adding Till's suggestions and some ideas to ISSUES.txt + + * setup.py: Making setup.py executable + +v0.1.5 (2010-08-01) + + * setup.py: Adding a description and bumping version to 0.1.4 + +v0.1.4 (2010-08-01) + + * setup.py: Changing version to 0.1.4 + + * README.txt: Adding instructions to install with pip + +v0.1.3 (2010-08-01) + + * setup.py: Changing version to 0.1.3 + + * pyppd/compressor.py: Instead of silently ignoring exceptions, raises them + + * README.txt: Minor reStructuredText fixes + +v0.1.1 (2010-08-01) + + * setup.py: Renaming the license in setup.py to GPLv3 + + * setup.py: Forgot to add read() to the long_description + + * setup.py, README.txt: Adding a README.txt and setting it as + long_description + + * pyppd/pyppd-ppdfile.in: When you tried ./pyppd-ppdfile cat my-ppd.ppd, it + raised a IndexError, as it tried to "my-ppd.ppd".split(":")[1], which don't + exists. Now, instead of trying to read the second element ([1]), we read the + last element, which works in both cases. + + * setup.py: Remove pyppd/test, as I am not using tests (yet) + + * ISSUES.txt: As Gitorious don't offers us one. Maybe we should consider + switching to github or something... + + * pyppd/pyppd-ppdfile.in: As the file lzma_proxy.py is inserted into + pyppd-compressor, we don't use "import lzma_proxy as lzma". So, the methods + are in the local namespace, thus we use compress/decompress, and not + lzma.compress/decompress. + + * pyppd/lzma_proxy.py: Now, I need to change it's name. Lzma_proxy seems + unnatural to me, and we already use compressor for another file. Maybe xz.py? + + * pyppd/pyppd-ppdfile.in: We used to decompress the PPDs in load(). So, even + if the user simply wanted to list the PPDs (which we use only the index), he + had to decompress everything. Now, only when the user asks to cat a file, we + decompress the PPDs. + + * pyppd/pyppd-ppdfile.in, pyppd/compressor.py: This way, we compress 212mb to + 3.2mb, instead of 8,2mb. This makes the program a bit slower (0.2s in my + tests), but I think it's worthy. + + * pyppd/runner.py, pyppd/pyppd-ppdfile.in: Adding the \ to concatenate the + multiline strings + + * pyppd/pyppd-ppdfile.in: Checks if pyppd-ppdfile is run directly and, if so, + run main() + + * pyppd/pyppd-ppdfile.in: The name 'list()' is used for instantiate list + objects. + + * pyppd/ppd.py: Ppd: Add object inheritance + + * pyppd/runner.py, pyppd/pyppd-ppdfile.in: Fitting to 80 columns + + * pyppd/archiver.py: Archiver: Removes unused import + + * pyppd/compressor.py: When we add the PPDs to the .tar file, /usr/share/ppd + becomes usr/share/ppd. This way, we were unable to find it afterwards. Now, + we convert every path passed as argument to absolute, and simply ignore the + first slash when creating the index. + + * pyppd/ppd.py: Removes the "(" and ")" from the Product line + + * pyppd/ppd.py: Use Product instead of NickName in the 1284DeviceID fallback + + * pyppd/pyppd-ppdfile.in, pyppd/compressor.py: It's better than the sqlite3 + solution because we can decompress and load the tar file from memory, without + the need to write to decompress, write As tar doesn't have an index, it needs + to do a sequential search to find the files. It might be better to use 7z + instead. + + * pyppd/lzma_proxy.py: Adds compress_file(path), which compresses path with + xz binary + + * pyppd/compressor.py: This way, sqlite3 indexes its values, making the + selects much faster. + + * pyppd/pyppd-ppdfile.in, pyppd/compressor.py: It's much faster to load the + sqlite3 DB and begin issuing SQL statements than to load the .sql dump into a + new sqlite3 DB. + + * pyppd/pyppd-ppdfile.in, pyppd/compressor.py: cPickle uses too much memory + when pickling/unpickling. And, as we work with large files, it becomes a + problem. SQLite3 is more efficient in this regard. + + * pyppd/runner.py: Fixing bug of undefined variable when running pyppd with + unexistent directory as argument + + * pyppd/ppd.py: This is probably wrong [1] but, as I found many PPDs which + 1284DeviceID [1] + http://www.undocprint.org/formats/communication_protocols/ieee_1284#ieee_1284_device_ + + + * pyppd/compressor.py: Sets ppds = None when we don't need it anymore, trying + to keep memory usage low. + + * pyppd/ppd.py: Adding languages not found in ISO 639, but found in some PPDs + + * pyppd/ppd.py: Converts PPD's language name to it's ISO 639 code + + * pyppd/ppd.py, pyppd/compressor.py: When compressing, ignore the PPDs which + couldn't be parsed. + + * pyppd/pyppd-ppdfile.in, pyppd/ppd.py: Instead of having the PPDs names + hardcoded with the executable's, prefix them at execution time. Also, remove + the "./" of executable's name, when called like ./pyppd-ppdfile. + + * setup.py, pyppd/runner.py, pyppd/pyppd-ppdfile.in, pyppd/archiver.py: Now, + everything will be in only one file by default. When running pyppd, it'll + parse the folder passed as argument and create, by default, pyppd-ppdfile. + You can run it with list or cat URI to get the compressed PPDs. + + * pyppd/runner.py: Refactoring (extract method parse_args()) + + * pyppd/ppd.py: We don't need to save the ppd_file anymore + + * pyppd/compressor.py: So, when loading the resulting pickle file, we don't + need the PPD class definition. We just load a tuple with two strings. + + * pyppd/runner.py: Adds command-line argument parsing + + * pyppd/ppd.py, pyppd/compressor.py: PPD class now saves its PPD file in an + attribute + + * pyppd/lzma_proxy.py: communicate() returns a tuple (stdout, stderr). + Returns stdout. + + * pyppd/compressor.py: Refactoring import lzma_proxy + + * pyppd/ppd.py, pyppd/compressor.py: The PPD class parses a string with the + ppd, looking for its attributes. Now, instead of saving a dictionary with + ppd_path => {size: ppd_size, start: ppd_start}, it creates a PPD object for + each ppd, with it's attributes, so we can in the future list them as foomatic + does. + + * pyppd/lzma_proxy.py, pyppd/compressor.py: This way, we can fallback to + using the xz binary, if there isn't python-lzma available. It also has the + advantage of using the fastest, if both are available. I need to do some + tests to check which is better. + + * pyppd/compressor.py: Adding compressor.compress() docstring. + + * pyppd/compressor.py: Forgot the final period. + + * pyppd/compressor.py: Removing garbage + + * pyppd/compressor.py: Minor typo fix + +v0.1.0 (2010-06-12) + + * setup.py, pyppd/runner.py, pyppd/compressor.py, bin/pyppd, MANIFEST.in, + LICENSE.txt, CHANGES.txt, .gitignore: Initial release. + --- gutenprint-5.2.6.orig/debian/local/pyppd/LICENSE.txt +++ gutenprint-5.2.6/debian/local/pyppd/LICENSE.txt @@ -0,0 +1,619 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. --- gutenprint-5.2.6.orig/debian/local/pyppd/setup.py +++ gutenprint-5.2.6/debian/local/pyppd/setup.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python + +from distutils.core import setup +from distutils.command.sdist import sdist as _sdist + +class sdist(_sdist): + def run(self): + try: + import sys + sys.path.append("contrib") + import git2changes + print 'generating CHANGES.txt' + with open('CHANGES.txt', 'w+') as f: + git2changes.run(f) + except ImportError: + pass + + _sdist.run(self) + +setup( + name='pyppd', + version='0.4.3', + author='Vitor Baptista', + author_email='vitor@vitorbaptista.com', + packages=['pyppd'], + package_data={'pyppd': ['*.in']}, + scripts=['bin/pyppd'], + url='http://gitorious.org/vitorbaptista/pyppd/', + license='GPLv3', + description='A CUPS PostScript Printer Driver\'s compressor and generator', + long_description=open('README.txt').read(), + cmdclass={'sdist': sdist}, + classifiers=[ + 'Development Status :: 4 - Beta', + 'Intended Audience :: System Administrators', + 'Operating System :: POSIX', + 'License :: OSI Approved :: GNU General Public License (GPL)', + 'Topic :: Printing', + ], +) --- gutenprint-5.2.6.orig/debian/local/pyppd/README.txt +++ gutenprint-5.2.6/debian/local/pyppd/README.txt @@ -0,0 +1,40 @@ +pyppd +===== + +``pyppd`` is a CUPS PPD generator. It holds an compressed archive of PPDs, which +can be listed and retrieved only when needed by CUPS, saving disk space. + +Instalation +----------- + +To install ``pyppd``, you can use: + + pip install pyppd + +Or download the source package, uncompress, and run as root: + + python setup.py install + +It depends on Python 2.x (http://www.python.org) and XZ Utils +(http://tukaani.org/xz/). + +Usage +----- + +At first, you have to create a PPD archive. For such, put all PPDs (they might +be gzipped) you want to add in the archive inside a single folder (which can +have subfolders), then run: + + pyppd /path/to/your/ppd/folder + +It'll create ``pyppd-ppdfile`` in your current folder. You can test it by +running: + + ./pyppd-ppdfile list + +And, for reading a PPD from the archive, simply do: + + ./pyppd-ppdfile cat pyppd-ppdfile:MY-PPD-FILE.PPD + +For CUPS to be able to use your newly-created archive, copy ``pyppd-ppdfile`` +to ``/usr/lib/cups/driver/`` and you're done. --- gutenprint-5.2.6.orig/debian/local/pyppd/PKG-INFO +++ gutenprint-5.2.6/debian/local/pyppd/PKG-INFO @@ -0,0 +1,55 @@ +Metadata-Version: 1.0 +Name: pyppd +Version: 0.4.3 +Summary: A CUPS PostScript Printer Driver's compressor and generator +Home-page: http://gitorious.org/vitorbaptista/pyppd/ +Author: Vitor Baptista +Author-email: vitor@vitorbaptista.com +License: GPLv3 +Description: pyppd + ===== + + ``pyppd`` is a CUPS PPD generator. It holds an compressed archive of PPDs, which + can be listed and retrieved only when needed by CUPS, saving disk space. + + Instalation + ----------- + + To install ``pyppd``, you can use: + + pip install pyppd + + Or download the source package, uncompress, and run as root: + + python setup.py install + + It depends on Python 2.x (http://www.python.org) and XZ Utils + (http://tukaani.org/xz/). + + Usage + ----- + + At first, you have to create a PPD archive. For such, put all PPDs (they might + be gzipped) you want to add in the archive inside a single folder (which can + have subfolders), then run: + + pyppd /path/to/your/ppd/folder + + It'll create ``pyppd-ppdfile`` in your current folder. You can test it by + running: + + ./pyppd-ppdfile list + + And, for reading a PPD from the archive, simply do: + + ./pyppd-ppdfile cat pyppd-ppdfile:MY-PPD-FILE.PPD + + For CUPS to be able to use your newly-created archive, copy ``pyppd-ppdfile`` + to ``/usr/lib/cups/driver/`` and you're done. + +Platform: UNKNOWN +Classifier: Development Status :: 4 - Beta +Classifier: Intended Audience :: System Administrators +Classifier: Operating System :: POSIX +Classifier: License :: OSI Approved :: GNU General Public License (GPL) +Classifier: Topic :: Printing --- gutenprint-5.2.6.orig/debian/local/pyppd/pyppd/compressor.py +++ gutenprint-5.2.6/debian/local/pyppd/pyppd/compressor.py @@ -0,0 +1,20 @@ +from subprocess import Popen, PIPE + +def compress(value): + """Compresses a string with the xz binary""" + + process = Popen(["xz", "--compress", "--force"], stdin=PIPE, stdout=PIPE) + return process.communicate(value)[0] + +def decompress(value): + """Decompresses a string with the xz binary""" + + process = Popen(["xz", "--decompress", "--stdout", "--force"], + stdin=PIPE, stdout=PIPE) + return process.communicate(value)[0] + +def compress_file(path): + """Compress the file at 'path' with the xz binary""" + + process = Popen(["xz", "--compress", "--force", "--stdout", path], stdout=PIPE) + return process.communicate()[0] --- gutenprint-5.2.6.orig/debian/local/pyppd/pyppd/runner.py +++ gutenprint-5.2.6/debian/local/pyppd/pyppd/runner.py @@ -0,0 +1,75 @@ +import os +import stat +import errno +import logging +import logging.handlers +from optparse import OptionParser +import archiver + +def parse_args(): + usage = "usage: %prog [options] ppds_directory" + version = "%prog 0.4.3\n" \ + "Copyright (c) 2010 Vitor Baptista.\n" \ + "This is free software; see the source for copying conditions.\n" \ + "There is NO warranty; not even for MERCHANTABILITY or\n" \ + "FITNESS FOR A PARTICULAR PURPOSE." + parser = OptionParser(usage=usage, + version=version) + parser.add_option("-v", "--verbose", + action="count", dest="verbosity", + help="run verbosely (can be supplied multiple times to " \ + "increase verbosity)") + parser.add_option("-d", "--debug", + action="store_const", const=2, dest="verbose", + help="print debug messages") + parser.add_option("-o", "--output", + default="pyppd-ppdfile", metavar="FILE", + help="write archive to FILE [default %default]") + (options, args) = parser.parse_args() + + if len(args) != 1: + parser.error("incorrect number of arguments") + + if not os.path.isdir(args[0]): + parser.error("'%s' isn't a directory" % args[0]) + + return (options, args) + +def configure_logging(verbosity): + """Configures logging verbosity + + To stdout, we only WARNING of worse messages in a simpler format. To the + file, we save every log message with its time, level, module and method. + We also rotate the log_file, removing old entries when it reaches 2 MB. + """ + + if verbosity == 1: + level = logging.INFO + elif verbosity == 2: + level = logging.DEBUG + else: + level = logging.WARNING + + formatter = '[%(levelname)s] %(module)s.%(funcName)s(): %(message)s' + + logging.basicConfig(level=level, format=formatter) + +def run(): + (options, args) = parse_args() + configure_logging(options.verbosity) + ppds_directory = args[0] + + logging.info('Archiving folder "%s".' % ppds_directory) + archive = archiver.archive(ppds_directory) + if not archive: + exit(errno.ENOENT) + + logging.info('Writing archive to "%s".' % options.output) + output = open(options.output, "w+") + output.write(archive) + output.close() + + logging.info('Setting "%s" executable flag.' % options.output) + execute_mode = stat.S_IEXEC | stat.S_IXGRP | stat.S_IXOTH + mode = os.stat(options.output).st_mode | execute_mode + os.chmod(options.output, mode) --- gutenprint-5.2.6.orig/debian/local/pyppd/pyppd/pyppd-ppdfile.in +++ gutenprint-5.2.6/debian/local/pyppd/pyppd/pyppd-ppdfile.in @@ -0,0 +1,74 @@ +#!/usr/bin/env python + +# compressor.py +@compressor@ +# compressor.py + +from optparse import OptionParser +from sys import argv +import base64 +import cPickle +from cStringIO import StringIO +from os.path import basename + +def load(): + ppds_compressed = base64.b64decode(ppds_compressed_b64) + ppds_decompressed = decompress(ppds_compressed) + ppds = cPickle.loads(ppds_decompressed) + return ppds + +def ls(): + binary_name = basename(argv[0]) + ppds = load() + for key, value in ppds.iteritems(): + if key == 'ARCHIVE': continue + for ppd in value[2]: + print ppd.replace('"', '"' + binary_name + ':', 1) + +def cat(ppd): + # Ignore driver's name, take only PPD's + ppd = ppd.split(":")[-1] + # Remove also the index + ppd = "0/" + ppd[ppd.find("/")+1:] + + ppds = load() + ppds['ARCHIVE'] = StringIO(decompress(ppds['ARCHIVE'])) + + if ppds.has_key(ppd): + start = ppds[ppd][0] + length = ppds[ppd][1] + ppds['ARCHIVE'].seek(start) + return ppds['ARCHIVE'].read(length) + +def main(): + usage = "usage: %prog list\n" \ + " %prog cat URI" + version = "%prog 0.4.3\n" \ + "Copyright (c) 2010 Vitor Baptista.\n" \ + "This is free software; see the source for copying conditions.\n" \ + "There is NO warranty; not even for MERCHANTABILITY or\n" \ + "FITNESS FOR A PARTICULAR PURPOSE." + parser = OptionParser(usage=usage, + version=version) + (options, args) = parser.parse_args() + + if len(args) == 0 or len(args) > 2: + parser.error("incorrect number of arguments") + + if args[0].lower() == 'list': + ls() + elif args[0].lower() == 'cat': + if not len(args) == 2: + parser.error("incorrect number of arguments") + ppd = cat(args[1]) + if not ppd: + parser.error("Printer '%s' does not have default driver!" % args[1]) + print ppd + else: + parser.error("argument " + args[0] + " invalid") + +# PPDs Archive +ppds_compressed_b64 = "@ppds_compressed_b64@" + +if __name__ == "__main__": + main() --- gutenprint-5.2.6.orig/debian/local/pyppd/pyppd/ppd.py +++ gutenprint-5.2.6/debian/local/pyppd/pyppd/ppd.py @@ -0,0 +1,116 @@ +import re +import logging + +LANGUAGES = {'afar': 'aa', 'abkhazian': 'ab', 'afrikaans': 'af', + 'amharic': 'am', 'arabic': 'ar', 'assamese': 'as', + 'aymara': 'ay', 'azerbaijani': 'az', 'bashkir': 'ba', + 'byelorussian': 'be', 'bulgarian': 'bg', 'bihari': 'bh', + 'bislama': 'bi', 'bengali': 'bn', 'bangla': 'bn', + 'tibetan': 'bo', 'breton': 'br', 'catalan': 'ca', + 'corsican': 'co', 'czech': 'cs', 'welsh': 'cy', + 'danish': 'da', 'german': 'de', 'bhutani': 'dz', + 'greek': 'el', 'english': 'en', 'esperanto': 'eo', + 'spanish': 'es', 'estonian': 'et', 'basque': 'eu', + 'persian': 'fa', 'finnish': 'fi', 'fiji': 'fj', + 'faeroese': 'fo', 'french': 'fr', 'frisian': 'fy', + 'irish': 'ga', 'scots gaelic': 'gd', 'galician': 'gl', + 'guarani': 'gn', 'gujarati': 'gu', 'hausa': 'ha', + 'hindi': 'hi', 'croatian': 'hr', 'hungarian': 'hu', + 'armenian': 'hy', 'interlingua': 'ia', 'interlingue': 'ie', + 'inupiak': 'ik', 'indonesian': 'in', 'icelandic': 'is', + 'italian': 'it', 'hebrew': 'iw', 'japanese': 'ja', + 'yiddish': 'ji', 'javanese': 'jw', 'georgian': 'ka', + 'kazakh': 'kk', 'greenlandic': 'kl', 'cambodian': 'km', + 'kannada': 'kn', 'korean': 'ko', 'kashmiri': 'ks', + 'kurdish': 'ku', 'kirghiz': 'ky', 'latin': 'la', + 'lingala': 'ln', 'laothian': 'lo', 'lithuanian': 'lt', + 'latvian': 'lv','lettish': 'lv', 'malagasy': 'mg', + 'maori': 'mi', 'macedonian': 'mk', 'malayalam': 'ml', + 'mongolian': 'mn', 'moldavian': 'mo', 'marathi': 'mr', + 'malay': 'ms', 'maltese': 'mt', 'burmese': 'my', + 'nauru': 'na', 'nepali': 'ne', 'dutch': 'nl', + 'norwegian': 'no', 'occitan': 'oc', '(afan) oromo': 'om', + 'oriya': 'or', 'punjabi': 'pa', 'polish': 'pl', + 'pashto': 'ps', 'pushto': 'ps', 'portuguese': 'pt', + 'quechua': 'qu', 'rhaeto-romance': 'rm', 'kirundi': 'rn', + 'romanian': 'ro', 'russian': 'ru', 'kinyarwanda': 'rw', + 'sanskrit': 'sa', 'sindhi': 'sd', 'sangro': 'sg', + 'serbo-croatian': 'sh', 'singhalese': 'si', 'slovak': 'sk', + 'slovenian': 'sl', 'samoan': 'sm', 'shona': 'sn', + 'somali': 'so', 'albanian': 'sq', 'serbian': 'sr', + 'siswati': 'ss', 'sesotho': 'st', 'sundanese': 'su', + 'swedish': 'sv', 'swahili': 'sw', 'tamil': 'ta', + 'tegulu': 'te', 'tajik': 'tg', 'thai': 'th', + 'tigrinya': 'ti', 'turkmen': 'tk', 'tagalog': 'tl', + 'setswana': 'tn', 'tonga': 'to', 'turkish': 'tr', + 'tsonga': 'ts', 'tatar': 'tt', 'twi': 'tw', + 'ukrainian': 'uk', 'urdu': 'ur', 'uzbek': 'uz', + 'vietnamese': 'vi', 'volapuk': 'vo', 'wolof': 'wo', + 'xhosa': 'xh', 'yoruba': 'yo', 'chinese': 'zh', + 'simplified chinese': 'zh_TW', 'traditional chinese': 'zh_CN', + 'zulu': 'zu', 'portuguese_brazil': 'pt_BR'} + +class PPD(object): + """Represents a PostScript Description file.""" + def __init__(self, uri, language, manufacturer, nickname, deviceid): + """Initializes a PPD object with the information passed.""" + self.uri = uri + self.language = language + self.manufacturer = manufacturer + self.nickname = nickname + self.deviceid = deviceid + + def __str__(self): + return '"%s" %s "%s" "%s" "%s"' % (self.uri, self.language, + self.manufacturer, self.nickname, + self.deviceid) + + +def parse(ppd_file, filename): + """Parses ppd_file and returns an array with the PPDs it found. + + One ppd_file might result in more than one PPD. The rules are: return an + PPD for each "1284DeviceID" entry, and one for each "Product" line, if it + creates an unique (Manufacturer, Product) DeviceID. + """ + logging.debug('Parsing %s.' % filename) + language_re = re.search('\*LanguageVersion:\s*(.+)', ppd_file) + manufacturer_re = re.search('\*Manufacturer:\s*"(.+)"', ppd_file) + nickname_re = re.search('\*NickName:\s*"(.+)"', ppd_file) + deviceids = re.findall('\*1284DeviceID:\s*"(.+)"', ppd_file) + + try: + language = LANGUAGES[str.strip(language_re.group(1)).lower()] + manufacturer = str.strip(manufacturer_re.group(1)) + nickname = str.strip(nickname_re.group(1)) + logging.debug('Language: "%s", Manufacturer: "%s", Nickname: "%s".' % + (language, manufacturer, nickname)) + ppds = [] + models = [] + line = 0 + if deviceids: + for deviceid in deviceids: + logging.debug('1284DeviceID: "%s".' % deviceid) + uri = "%d/%s" % (line, filename) + ppds += [PPD(uri, language, manufacturer, nickname, deviceid.strip())] + models += re.findall(".*(?:MODEL|MDL):(.*?);.*", deviceid, re.I) + line += 1 + + for product in re.findall('\*Product:\s*"\((.+)\)"', ppd_file): + product = str.strip(product) + + # Don't add a new entry if there's already one for the same product model + if product in models: + logging.debug('Ignoring already found *Product: "%s".' % + product) + continue + + logging.debug('Product: "%s"' % product) + deviceid = "MFG:%s;MDL:%s;" % (manufacturer, product) + uri = "%d/%s" % (line, filename) + ppds += [PPD(uri, language, manufacturer, nickname, deviceid)] + line += 1 + + return ppds + except: + raise Exception, ("Error parsing PPD file '%s'" % filename) --- gutenprint-5.2.6.orig/debian/local/pyppd/pyppd/archiver.py +++ gutenprint-5.2.6/debian/local/pyppd/pyppd/archiver.py @@ -0,0 +1,108 @@ +import base64 +import sys +import os +import fnmatch +import cPickle +import gzip +import logging +from random import randint +import compressor +import ppd + +def archive(ppds_directory): + """Returns a string with the decompressor, its dependencies and the archive. + + It reads the template at pyppd/pyppd-ppdfile.in, inserts the dependencies + and the archive encoded in base64, and returns as a string. + + """ + logging.info('Compressing folder "%s".' % ppds_directory) + ppds_compressed = compress(ppds_directory) + if not ppds_compressed: + return None + + ppds_compressed_b64 = base64.b64encode(ppds_compressed) + + logging.info('Populating template.') + template = read_file_in_syspath("pyppd/pyppd-ppdfile.in") + compressor_py = read_file_in_syspath("pyppd/compressor.py") + + template = template.replace("@compressor@", compressor_py) + template = template.replace("@ppds_compressed_b64@", ppds_compressed_b64) + + return template + +def compress(directory): + """Compresses and indexes *.ppd and *.ppd.gz in directory returning a string. + + The directory is walked recursively, concatenating all ppds found in a string. + For each, it tests if its filename ends in *.gz. If so, opens with gzip. If + not, opens directly. Then, it parses and saves its name, description (in the + format CUPS needs (which can be more than one)) and it's position in the ppds + string (start position and length) into a dictionary, used as an index. + Then, it compresses the string, adds into the dictionary as key ARCHIVE and + returns a compressed pickle dump of it. + + """ + ppds = "" + ppds_index = {} + abs_directory = os.path.abspath(directory) + + for ppd_path in find_files(directory, ("*.ppd", "*.ppd.gz")): + # Remove 'directory/' from the filename + ppd_filename = ppd_path[len(abs_directory)+1:] + + if ppd_path.lower().endswith(".gz"): + ppd_file = gzip.open(ppd_path).read() + # We don't want the .gz extension in our filename + ppd_filename = ppd_filename[:-3] + else: + ppd_file = open(ppd_path).read() + + start = len(ppds) + length = len(ppd_file) + logging.debug('Found %s (%d bytes).' % (ppd_path, length)) + + ppd_parsed = ppd.parse(ppd_file, ppd_filename) + ppd_descriptions = map(str, ppd_parsed) + ppds_index[ppd_parsed[0].uri] = (start, length, ppd_descriptions) + logging.debug('Adding %d entry(ies): %s.' % (len(ppd_descriptions), map(str, ppd_parsed))) + ppds += ppd_file + + if not ppds: + logging.error('No PPDs found in folder "%s".' % directory) + return None + + logging.info('Compressing archive.') + ppds_index['ARCHIVE'] = compressor.compress(ppds) + logging.info('Generating and compressing pickle dump.') + ppds_pickle = compressor.compress(cPickle.dumps(ppds_index)) + + + return ppds_pickle + + +def read_file_in_syspath(filename): + """Reads the file in filename in each sys.path. + + If we couldn't find, throws the last IOError caught. + + """ + last_exception = None + for path in sys.path: + try: + return open(path + "/" + filename).read() + except IOError as ex: + last_exception = ex + continue + raise last_exception + +def find_files(directory, patterns): + """Yields each file that matches any of patterns in directory.""" + logging.debug('Searching for "%s" files in folder "%s".' % + (", ".join(patterns), directory)) + abs_directory = os.path.abspath(directory) + for root, dirnames, filenames in os.walk(abs_directory): + for pattern in patterns: + for filename in fnmatch.filter(filenames, pattern): + yield os.path.join(root, filename) --- gutenprint-5.2.6.orig/debian/local/pyppd/bin/pyppd +++ gutenprint-5.2.6/debian/local/pyppd/bin/pyppd @@ -0,0 +1,4 @@ +#!/usr/bin/env python + +from pyppd import runner +runner.run()