diff options
author | Didier Raboud <odyx@debian.org> | 2016-01-06 12:07:39 +0100 |
---|---|---|
committer | Didier Raboud <odyx@debian.org> | 2016-01-06 12:07:39 +0100 |
commit | b6f7e80d1279447768d86f7ad3c19a7e71d91ab4 (patch) | |
tree | 522ba6ec0a38fb29a7d948696f7d126dd1e6e6f0 | |
parent | 78face2d666d0863ffc0f5e2fd54a68418eea46e (diff) |
Imported Upstream version 3.12.4
1675 files changed, 8997 insertions, 4863 deletions
diff --git a/Makefile.am b/Makefile.am index 2ac05dc56..5a2349c98 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,590 +1,593 @@ -#
-# Makefile.am - hplip automake input file
-#
-# (c) 2004-2010 Copyright Hewlett-Packard Development Company, LP
-# Author: David Suffield, Naga Samrat Chowdary Narla,
-
-INCLUDES = -Iip -Iio/hpmud -Iscan/sane -Iprnt/hpijs
-
-hplipdir = $(datadir)/hplip
-
-docdir = $(hpdocdir)
-doc_DATA = COPYING copyright prnt/hpijs/README_LIBJPG
-EXTRA_DIST = prnt/hpijs/gdevijs-krgb-1.5-gs8.61.patch prnt/hpijs/README_LIBJPG copyright
-
-dist_noinst_SCRIPTS =
-dist_noinst_DATA =
-noinst_PROGRAMS =
-lib_LTLIBRARIES =
-
-include foomatic_drv.inc
-include unreleased.inc
-include cups_drv.inc
-
-if DOC_BUILD
-wwwsrc = doc
-www0dir = $(docdir)
-dist_www0_DATA = $(wwwsrc)/index.html $(wwwsrc)/commandline.html $(wwwsrc)/copying.html $(wwwsrc)/devicemanager.html $(wwwsrc)/faxtrouble.html $(wwwsrc)/gettinghelp.html $(wwwsrc)/hpscan.html $(wwwsrc)/mainttask.html $(wwwsrc)/plugins.html $(wwwsrc)/print.html $(wwwsrc)/printing.html $(wwwsrc)/printoptions.html $(wwwsrc)/printtroubleshooting.html $(wwwsrc)/scanning.html $(wwwsrc)/scantrouble.html $(wwwsrc)/sendfax.html $(wwwsrc)/setup.html $(wwwsrc)/systray.html $(wwwsrc)/troubleshooting.html $(wwwsrc)/uninstalling.html $(wwwsrc)/upgrading.html
-www3dir = $(docdir)/styles
-dist_www3_DATA = $(wwwsrc)/styles/*
-www4dir = $(docdir)/images
-dist_www4_DATA = $(wwwsrc)/images/*
-endif
-
-if HPLIP_BUILD
-
-# hp backend.
-hpdir = $(cupsbackenddir)
-hp_PROGRAMS = hp
-hp_SOURCES = prnt/backend/hp.c
-hp_LDADD = libhpmud.la $(DBUS_LIBS)
-hp_CFLAGS = $(DBUS_CFLAGS)
-
-# hpaio sane backend
-if SCAN_BUILD
-libsane_hpaiodir = $(libdir)/sane
-libsane_hpaio_LTLIBRARIES = libsane-hpaio.la
-libsane_hpaio_la_SOURCES = scan/sane/hpaio.c scan/sane/mfpdtf.c scan/sane/pml.c scan/sane/scl.c scan/sane/io.c scan/sane/hpaio.h \
- scan/sane/pml.h scan/sane/saneopts.h scan/sane/io.h scan/sane/mfpdtf.h scan/sane/sane.h scan/sane/scl.h scan/sane/tables.h \
- scan/sane/common.c scan/sane/common.h scan/sane/soap.h scan/sane/soapht.h scan/sane/sanei_debug.h scan/sane/sanei.h \
- scan/sane/sanei_init_debug.c scan/sane/marvell.h scan/sane/marvelli.h scan/sane/marvell.c scan/sane/soapht.c scan/sane/soap.c \
- scan/sane/soaphti.h scan/sane/soapi.h scan/sane/xml.c scan/sane/xml.h scan/sane/ledm.h scan/sane/ledmi.h scan/sane/ledm.c \
- scan/sane/bb_ledm.c scan/sane/http.h scan/sane/http.c
-if DARWIN_BUILD
-libsane_hpaio_la_LDFLAGS = -module -framework CoreFoundation -version-info 1:0:0
-else
-libsane_hpaio_la_LDFLAGS = -version-info 1:0:0
-endif
-# The following is a interlibrary dependency that must be compiled first.
-libsane_hpaio_la_LIBADD = libhpip.la libhpmud.la $(DBUS_LIBS) -lcups -ldl
-#libsane_hpaio_la_CFLAGS = -DWITH_NONAMESPACES -DSOAP_DEBUG
-libsane_hpaio_la_CFLAGS = $(DBUS_CFLAGS)
-endif # SCAN_BUILD
-
-# hpmud library
-MUDNAME=hpmud
-lib_LTLIBRARIES += libhpmud.la
-libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/musb.c io/hpmud/pml.c \
- io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/musb.h io/hpmud/pml.h io/hpmud/dot4.c \
- io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h
-if NETWORK_BUILD
-libhpmud_la_LDFLAGS = -version-info 0:6:0 -lusb -lpthread -l$(SNMPLIB) -lcrypto
-else
-libhpmud_la_LDFLAGS = -version-info 0:6:0 -lusb -lpthread
-endif
-libhpmud_la_CFLAGS = -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\"
-
-# ip library
-lib_LTLIBRARIES += libhpip.la
-libhpip_la_LDFLAGS = -version-info 0:1:0
-libhpip_la_LIBADD = -lm
-libhpip_la_SOURCES = ip/xconvolve.c ip/xfax.c ip/xgrayout.c ip/xjpg_dct.c ip/xjpg_fix.c ip/xpad.c ip/xrotate.c ip/xskel.c ip/xtiff.c \
- ip/ipmain.c ip/xchgbpp.c ip/xcrop.c ip/xgamma.c ip/xjpg_dec.c ip/xjpg_huf.c ip/xpcx.c ip/xsaturation.c ip/xtable.c ip/xtonemap.c \
- ip/xbi2gray.c ip/xcolrspc.c ip/xfakemono.c ip/xgray2bi.c ip/xinvert.c ip/xjpg_enc.c ip/xmatrix.c ip/xpnm.c ip/xscale.c ip/xthumb.c ip/xyxtract.c \
- ip/hpip.h ip/ipdefs.h ip/xform.h ip/xjpg_dct.h ip/xjpg_huf.h ip/xjpg_mrk.h
-
-# hp-mkuri.
-hp_mkuridir = $(bindir)
-hp_mkuri_PROGRAMS = hp-mkuri
-hp_mkuri_SOURCES = io/hpmud/hp-mkuri.c
-hp_mkuri_LDADD = -ldl libhpmud.la
-hp_mkuri_CFLAGS = -DCONFDIR=\"$(hplip_confdir)\"
-
-# hpmud.rules
-rulesdir = /etc/udev/rules.d
-dist_rules_DATA = data/rules/56-hpmud_support.rules
-dist_rules_DATA += data/rules/86-hpmud_plugin.rules
-if UDEV_ACL_RULES
-dist_rules_DATA += data/rules/40-hplip.rules
-else
-dist_rules_DATA += data/rules/55-hpmud.rules
-endif
-halpredir = /usr/share/hal/fdi/preprobe/10osvendor
-dist_halpre_DATA = data/rules/20-hplip-devices.fdi
-
-# hplip.conf
-hplip_confdir = /etc/hp
-hplip_conf_DATA = hplip.conf
-
-#pstotiff filter
-pstotiffdir = $(cupsfilterdir)
-pstotiff_SCRIPTS = fax/filters/pstotiff
-
-# hplip.state
-hplip_statedir = /var/lib/hp
-dist_hplip_state_DATA = hplip.state
-
-# Log Files
-hplip_Logdir=/var/log/hp
-
-if FULL_BUILD
-
-dist_hplip_SCRIPTS = hpssd.py __init__.py hpdio.py
-dist_noinst_DATA += scan/sane/hpaio.desc prnt/drv/hpijs.drv.in.template
-dist_noinst_SCRIPTS += dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall
-
-cmddir = $(hplipdir)
-dist_cmd_SCRIPTS = align.py info.py print.py toolbox.py clean.py colorcal.py unload.py testpage.py makeuri.py check.py fab.py levels.py \
- sendfax.py setup.py makecopies.py probe.py timedate.py firmware.py scan.py systray.py plugin.py linefeedcal.py pqdiag.py \
- faxsetup.py devicesettings.py printsettings.py query.py pkservice.py wificonfig.py check-plugin.py diagnose_plugin.py
-
-# base
-basedir = $(hplipdir)/base
-
-dist_base_DATA = base/maint.py base/codes.py base/g.py base/pml.py base/status.py \
- base/__init__.py base/mfpdtf.py base/utils.py base/wifi.py base/LedmWifi.py \
- base/device.py base/logger.py base/slp.py base/exif.py base/strings.py base/magic.py \
- base/imagesize.py base/pexpect.py base/models.py base/mdns.py base/tui.py base/dime.py \
- base/ldif.py base/vcard.py base/module.py base/pkit.py
-
-# installer
-installdir = $(hplipdir)/installer
-dist_install_DATA = installer/__init__.py installer/dcheck.py installer/distros.dat installer/core_install.py
-dist_noinst_DATA += installer/text_install.py
-
-# makecopies
-copierdir = $(hplipdir)/copier
-dist_copier_DATA = copier/copier.py copier/__init__.py
-
-# fax
-if FAX_BUILD
-faxdir = $(hplipdir)/fax
-dist_fax_DATA = fax/fax.py fax/__init__.py fax/coverpages.py fax/pmlfax.py fax/ledmfax.py fax/soapfax.py fax/ledmsoapfax.py fax/marvellfax.py \
- fax/faxdevice.py fax/filters/pstotiff fax/filters/pstotiff.convs fax/filters/pstotiff.types
-fax_filtersdir = $(mimedir)
-dist_fax_filters_DATA = fax/filters/pstotiff.convs fax/filters/pstotiff.types
-hpfaxdir = $(cupsbackenddir)
-dist_hpfax_SCRIPTS = fax/backend/hpfax.py
-hpijsfaxppddir = $(hpppddir)
-hpcupsfaxppddir = $(hpppddir)
-if HPIJS_INSTALL
-dist_hpijsfaxppd_DATA = fax/ppd/HP-Fax-hpijs.ppd.gz fax/ppd/HP-Fax2-hpijs.ppd.gz fax/ppd/HP-Fax3-hpijs.ppd.gz fax/ppd/HP-Fax4-hpijs.ppd.gz
-endif # HPIJS_INSTALL
-if HPCUPS_INSTALL
-dist_hpcupsfaxppd_DATA = fax/ppd/HP-Fax-hpcups.ppd.gz fax/ppd/HP-Fax2-hpcups.ppd.gz fax/ppd/HP-Fax3-hpcups.ppd.gz fax/ppd/HP-Fax4-hpcups.ppd.gz
-endif # HPCUPS_INSTALL
-endif # FAX_BUILD
-
-# ptest
-noinst_PROGRAMS += ptest
-ptest_SOURCES = pcard/ptest.c pcard/ptest.h pcard/fat.c pcard/fat.h
-ptest_LDADD = libhpmud.la
-
-# data
-modelsdir = $(hplipdir)/data/models
-images_16x16dir = $(hplipdir)/data/images/16x16
-images_24x24dir = $(hplipdir)/data/images/24x24
-images_32x32dir = $(hplipdir)/data/images/32x32
-images_64x64dir = $(hplipdir)/data/images/64x64
-images_128x128dir = $(hplipdir)/data/images/128x128
-images_256x256dir = $(hplipdir)/data/images/256x256
-images_devicesdir = $(hplipdir)/data/images/devices
-images_otherdir = $(hplipdir)/data/images/other
-pcldir = $(hplipdir)/data/pcl
-ldldir = $(hplipdir)/data/ldl
-postscriptdir = $(hplipdir)/data/ps
-localzdir = $(hplipdir)/data/localization
-dist_postscript_DATA = data/ps/testpage.ps.gz data/ps/clean_page.pdf.gz
-dist_models_DATA = data/models/models.dat
-dist_hplip_Log_DATA=
-
-if GUI_BUILD
-dist_images_16x16_DATA = data/images/16x16/*
-dist_images_24x24_DATA = data/images/24x24/*
-dist_images_32x32_DATA = data/images/32x32/*
-dist_images_64x64_DATA = data/images/64x64/*
-dist_images_128x128_DATA = data/images/128x128/*
-dist_images_256x256_DATA = data/images/256x256/*
-dist_images_devices_DATA = data/images/devices/*
-dist_images_other_DATA = data/images/other/*
-endif
-
-dist_pcl_DATA = data/pcl/align1_8xx.pcl.gz data/pcl/align1_9xx.pcl.gz data/pcl/align2_8xx.pcl.gz data/pcl/align3_8xx.pcl.gz data/pcl/align4_8xx.pcl.gz \
- data/pcl/align5_8xx.pcl.gz data/pcl/align2_9xx.pcl.gz data/pcl/align3_9xx.pcl.gz data/pcl/align4_450.pcl.gz data/pcl/align6_450.pcl.gz \
- data/pcl/colorcal1_450.pcl.gz data/pcl/colorcal2_450.pcl.gz data/pcl/crbcal.pcl.gz data/pcl/crcaldone.pcl.gz data/pcl/crcbcal.pcl.gz data/pcl/crccal.pcl.gz \
- data/pcl/crcpcal.pcl.gz data/pcl/crpcal.pcl.gz
-dist_ldl_DATA = data/ldl/cb2pcal.ldl.gz data/ldl/cb2pcal_done.ldl.gz data/ldl/cbbcal.ldl.gz data/ldl/cbccal.ldl.gz data/ldl/cbccal_done.ldl.gz data/ldl/cbcpcal.ldl.gz \
- data/ldl/cbpcal.ldl.gz
-dist_localz_DATA = data/localization/hplip_de.qm data/localization/hplip_es.qm data/localization/hplip_fr.qm data/localization/hplip_it.qm \
- data/localization/hplip_pt.qm data/localization/hplip_ru.qm data/localization/hplip_zh.qm
-dist_noinst_DATA += data/localization/hplip_de.ts data/localization/hplip_es.ts data/localization/hplip_fr.ts data/localization/hplip_it.ts \
- data/localization/hplip_pt.ts data/localization/hplip_ru.ts data/localization/hplip_zh.ts
-
-# pcard
-pcarddir = $(hplipdir)/pcard
-dist_pcard_DATA = pcard/__init__.py pcard/photocard.py
-
-# pcardext
-pcardextdir = $(pyexecdir)
-pcardext_LTLIBRARIES = pcardext.la
-pcardext_la_LDFLAGS = -module -avoid-version
-pcardext_la_SOURCES = pcard/pcardext/pcardext.c pcard/fat.c
-pcardext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
-
-# prnt
-prntdir = $(hplipdir)/prnt
-dist_prnt_DATA = prnt/cups.py prnt/__init__.py prnt/ldl.py prnt/pcl.py prnt/colorcal.py
-
-# cupsext
-cupsextdir = $(pyexecdir)
-cupsext_LTLIBRARIES = cupsext.la
-cupsext_la_LDFLAGS = -module -avoid-version
-cupsext_la_SOURCES = prnt/cupsext/cupsext.c
-cupsext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
-cupsext_la_LIBADD = -lcups
-
-if SCAN_BUILD
-# scan
-scandir = $(hplipdir)/scan
-dist_scan_DATA = scan/__init__.py scan/sane.py
-
-# scanext
-scanextdir = $(pyexecdir)
-scanext_LTLIBRARIES = scanext.la
-scanext_la_LDFLAGS = -module -avoid-version -lsane
-scanext_la_SOURCES = scan/scanext/scanext.c
-scanext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
-endif
-
-# hpmudext
-hpmudextdir = $(pyexecdir)
-hpmudext_LTLIBRARIES = hpmudext.la
-hpmudext_la_LDFLAGS = -module -avoid-version
-hpmudext_la_SOURCES = io/mudext/hpmudext.c
-hpmudext_la_LIBADD = libhpmud.la
-hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
-# ui (qt3)
-if GUI_BUILD
-if QT3_INSTALL
-uidir = $(hplipdir)/ui
-dist_ui_DATA = ui/alignform.py \
- ui/colorcalform_base.py ui/colorcalform.py ui/coloradjform_base.py ui/coloradjform.py ui/devmgr4_base.py ui/devmgr4.py \
- ui/__init__.py ui/loadpaperform_base.py ui/loadpaperform.py \
- ui/paperedgealignform_base.py ui/paperedgealignform.py ui/ui_utils.py \
- ui/settingsdialog_base.py ui/settingsdialog.py ui/aligntype6form1.py ui/aligntype6form1_base.py ui/aligntype6form2_base.py \
- ui/aligntype6form2.py ui/nodevicesform_base.py ui/nodevicesform.py ui/unloadform.py \
- ui/imagepropertiesdlg_base.py ui/imagepropertiesdlg.py ui/choosedevicedlg.py ui/chooseprinterdlg.py \
- ui/aboutdlg.py ui/aboutdlg_base.py ui/waitform.py ui/waitform_base.py ui/cleaningform_base.py ui/cleaningform.py \
- ui/cleaningform2_base.py ui/cleaningform2.py ui/colorcalform2_base.py ui/colorcalform2.py ui/colorcal4form.py \
- ui/colorcal4form_base.py ui/colorcal4form_base.ui ui/printerform.py \
- ui/faxaddrbookgroupsform_base.py ui/faxaddrbookgroupeditform_base.py ui/faxaddrbookform_base.py \
- ui/faxaddrbookform.py ui/faxaddrbookeditform_base.py ui/align10form.py ui/align10form_base.py \
- ui/faxsendjobform.py ui/faxsettingsform_base.py ui/faxsettingsform.py \
- ui/coverpageform_base.py ui/coverpageform.py ui/allowabletypesdlg_base.py ui/allowabletypesdlg.py \
- ui/makecopiesform.py ui/setupform_base.py ui/setupform.py ui/setupmanualfind_base.py \
- ui/setupmanualfind.py ui/setupsettings_base.py ui/setupsettings.py ui/scrollview.py \
- ui/scrollprintsettings.py ui/scrollprint.py ui/scrollfax.py \
- ui/scrollunload.py ui/scrollcopy.py ui/pluginform2.py ui/pluginform2_base.py ui/systemtray.py \
- ui/ui_utils.py ui/jobstoragemixin.py ui/pluginlicenseform_base.py ui/pluginlicenseform.py \
- ui/align13form_base.py ui/align13form.py ui/firmwaredialog_base.py ui/firmwaredialog.py \
- ui/deviceuricombobox.py
-
-dist_noinst_DATA += ui/colorcalform2_base.ui ui/settingsdialog_base.ui ui/aligntype6form1_base.ui \
- ui/aboutdlg_base.ui ui/imagepropertiesdlg_base.ui ui/paperedgealignform_base.ui ui/aligntype6form2_base.ui \
- ui/nodevicesform_base.ui ui/cleaningform_base.ui ui/colorcalform_base.ui ui/devmgr4_base.ui ui/loadpaperform_base.ui \
- ui/cleaningform2_base.ui ui/waitform_base.ui ui/coloradjform_base.ui ui/faxaddrbookeditform_base.ui \
- ui/faxaddrbookform_base.ui ui/faxaddrbookgroupeditform_base.ui ui/faxaddrbookgroupsform_base.ui \
- ui/align10form_base.ui ui/pluginform2_base.ui \
- plugins/powersettingsdialog_base.ui ui/faxsettingsform_base.ui ui/coverpageform_base.ui \
- ui/allowabletypesdlg_base.ui ui/setupform_base.ui ui/setupmanualfind_base.ui \
- ui/setupsettings_base.ui ui/pluginlicenseform_base.ui ui/align13form_base.ui ui/firmwaredialog_base.ui
-endif
-endif
-
-#ui4 (qt4)
-if GUI_BUILD
-if QT4_INSTALL
-ui4dir=$(hplipdir)/ui4
-#dist_ui4_SCRIPTS = ui4/devmgr5.py ui4/systemtray.py ui4/devmgr5_base.py ui4/__init__.py ui4/ui_utils.py \
-# ui4/settingsdialog_base.py ui4/settingsdialog.py ui4/printsettingstoolbox.py ui4/printdialog_base.py \
-# ui4/printdialog.py
-#dist_noinst_DATA += ui4/devmgr5_base.ui ui4/settingsdialog_base.ui ui4/printdialog_base.ui
-dist_ui4_DATA = ui4/*.py
-dist_noinst_DATA += ui4/*.ui
-endif
-endif
-
-# ui plugins (qt3)
-if GUI_BUILD
-if QT3_INSTALL
-pluginsdir = $(hplipdir)/plugins
-dist_plugins_DATA = plugins/dj450.py plugins/__init__.py plugins/powersettings.py plugins/powersettingsdialog.py \
- plugins/powersettingsdialog_base.py plugins/Deskjet_460.py plugins/Officejet_H470.py plugins/powersettings2.py
-endif
-endif
-
-# ui plugins (qt4)
-if GUI_BUILD
-if QT4_INSTALL
-plugins4dir = $(hplipdir)/ui4/plugins
-dist_plugins4_SCRIPTS =
-endif
-endif
-
-# PolicyKit
-if POLICYKIT_INSTALL
-policykit_dbus_etcdir = /etc/dbus-1/system.d
-dist_policykit_dbus_etc_DATA = data/policykit/com.hp.hplip.conf
-policykit_dbus_sharedir = /usr/share/dbus-1/system-services
-dist_policykit_dbus_share_DATA = data/policykit/com.hp.hplip.service
-policykit_policydir = $(policykit_dir)
-dist_policykit_policy_DATA = data/policykit/com.hp.hplip.policy
-endif
-
-# hppgsz
-noinst_PROGRAMS += hppgsz
-hppgsz_SOURCES = prnt/hpijs/PrinterProperties.cpp prnt/hpijs/PrinterProperties.h prnt/hpijs/bug.h
-hppgsz_CXXFLAGS = $(libapdk_la_CXXFLAGS)
-hppgsz_CFLAGS = $(libapdk_la_CFLAGS)
-hppgsz_LDADD = libapdk.la -ljpeg -ldl
-
-# hplip.desktop
-hplip_desktopdir = $(icondir)
-hplip_desktop_DATA = hplip.desktop
-
-# hplip-systray.desktop
-hplip_systraydir = $(systraydir)
-hplip_systray_DATA = hplip-systray.desktop
-
-# hpipjs (CUPS filter)
-hplipjsdir = $(cupsfilterdir)
-hplipjs_PROGRAMS = hplipjs
-hplipjs_SOURCES = prnt/filters/hplipjs.c
-
-# hpps (CUPS filter)
-hppsdir = $(cupsfilterdir)
-hpps_PROGRAMS = hpps
-hpps_SOURCES = prnt/hpps/hppsfilter.c
-hpps_LDADD = -lcups
-
-# hpcac (CUPS filter, Color Access Control, ie: CLJ 4700)
-cacdir = $(cupsfilterdir)
-dist_cac_SCRIPTS = prnt/filters/hpcac
-
-endif # FULL_BUILD
-endif # HPLIP_BUILD
-
-# foomatic-rip-hplip
-if RIP_INSTALL
-ripdir = $(cupsfilterdir)
-dist_rip_SCRIPTS = prnt/hpijs/foomatic-rip-hplip
-endif
-
-# apdk
-noinst_LTLIBRARIES = libapdk.la
-libapdk_la_SOURCES = prnt/hpijs/models.cpp prnt/hpijs/breaks_open.cpp \
- prnt/hpijs/dj9xxvip.cpp prnt/hpijs/dj9xx.cpp prnt/hpijs/capture.cpp prnt/hpijs/colormatch.cpp prnt/hpijs/colormatcher_open.cpp \
- prnt/hpijs/compression.cpp prnt/hpijs/context2.cpp prnt/hpijs/create_so.cpp prnt/hpijs/creator.cpp \
- prnt/hpijs/dj600.cpp prnt/hpijs/dj630.cpp prnt/hpijs/dj660.cpp prnt/hpijs/dj690.cpp prnt/hpijs/dj6xx.cpp prnt/hpijs/dj8xx.cpp prnt/hpijs/dj600_maps.cpp \
- prnt/hpijs/dj660_maps.cpp prnt/hpijs/dj690_maps.cpp prnt/hpijs/dj895_maps.cpp prnt/hpijs/dj895_maps2.cpp prnt/hpijs/dj970_maps.cpp \
- prnt/hpijs/dj970_maps2.cpp prnt/hpijs/dj970_maps3.cpp prnt/hpijs/filterhpa.cpp prnt/hpijs/apollo21xx.cpp prnt/hpijs/apollo2560.cpp prnt/hpijs/apollo2xxx.cpp \
- prnt/hpijs/dj8x5.cpp prnt/hpijs/psp100.cpp prnt/hpijs/phobos_cmaps.cpp prnt/hpijs/dj350.cpp prnt/hpijs/halftoner.cpp prnt/hpijs/halftoner_open.cpp \
- prnt/hpijs/globals.cpp prnt/hpijs/header2.cpp prnt/hpijs/htmtxhi.cpp prnt/hpijs/pmselect.cpp \
- prnt/hpijs/job.cpp prnt/hpijs/printer.cpp prnt/hpijs/registry.cpp prnt/hpijs/scaler.cpp \
- prnt/hpijs/scaler_open.cpp prnt/hpijs/script.cpp prnt/hpijs/systemservices.cpp \
- prnt/hpijs/translator.cpp prnt/hpijs/version.cpp prnt/hpijs/versioncode.cpp \
- prnt/hpijs/djgenericvip.cpp prnt/hpijs/dj540.cpp prnt/hpijs/dj850.cpp prnt/hpijs/dj850_maps.cpp prnt/hpijs/dj890.cpp \
- prnt/hpijs/apollo21xx.h prnt/hpijs/apollo2560.h prnt/hpijs/apollo2xxx.h prnt/hpijs/colormatch.h prnt/hpijs/colormatcher_open.h \
- prnt/hpijs/compression.h prnt/hpijs/config.h prnt/hpijs/context.h prnt/hpijs/dj350.h prnt/hpijs/dj400.h prnt/hpijs/dj540.h \
- prnt/hpijs/dj600.h prnt/hpijs/dj630.h prnt/hpijs/dj660.h prnt/hpijs/dj690.h prnt/hpijs/dj6xx.h prnt/hpijs/dj8x5.h prnt/hpijs/dj8xx.h \
- prnt/hpijs/dj850.h prnt/hpijs/dj890.h prnt/hpijs/dj9xx.h prnt/hpijs/dj9xxvip.h \
- prnt/hpijs/ernieplatform.h prnt/hpijs/filterhpa.h prnt/hpijs/global_types.h prnt/hpijs/halftoner.h prnt/hpijs/font.h prnt/hpijs/debug.h \
- prnt/hpijs/halftoner_open.h prnt/hpijs/header.h prnt/hpijs/hpprint_c_api.h \
- prnt/hpijs/hpprintapi.h prnt/hpijs/hptypes.h prnt/hpijs/htfed.h prnt/hpijs/internal.h \
- prnt/hpijs/interp.h prnt/hpijs/interp_data_50.h prnt/hpijs/io_defs.h prnt/hpijs/job.h prnt/hpijs/models.h prnt/hpijs/modes.h prnt/hpijs/pmselect.h \
- prnt/hpijs/printer.h prnt/hpijs/psp100.h prnt/hpijs/psp470.h prnt/hpijs/resources.h prnt/hpijs/scaler_open.h prnt/hpijs/scaler_prop.h prnt/hpijs/script.h \
- prnt/hpijs/systemservices.h prnt/hpijs/unistd_.h prnt/hpijs/djgenericvip.h prnt/hpijs/ljmono.h prnt/hpijs/ljmono.cpp \
- prnt/hpijs/dj3320.cpp prnt/hpijs/dj3320.h prnt/hpijs/dj3320_cmap.cpp prnt/hpijs/dj3600.cpp prnt/hpijs/dj3600.h prnt/hpijs/dj3600_cmap.cpp prnt/hpijs/dj4100.h prnt/hpijs/djd2600.h \
- prnt/hpijs/dj4100_cmap.cpp prnt/hpijs/ldlencap.h prnt/hpijs/ljcolor.cpp prnt/hpijs/ljcolor.h prnt/hpijs/pscript.h \
- prnt/hpijs/printerproxy.cpp prnt/hpijs/printerfactory.cpp prnt/hpijs/printerproxy.h prnt/hpijs/printerfactory.h \
- prnt/hpijs/ljjetready.cpp prnt/hpijs/ljjetready.h prnt/hpijs/jdatadbf.c prnt/hpijs/jccolor.c prnt/hpijs/ljfastraster.cpp prnt/hpijs/ljfastraster.h \
- prnt/hpijs/jinclude.h prnt/hpijs/jpegint.h prnt/hpijs/dj55xx.h prnt/hpijs/hpijsfax.h prnt/hpijs/ojprokx50.h \
- prnt/hpijs/ljzjs.cpp prnt/hpijs/ljzjs.h prnt/hpijs/ljzjsmono.cpp prnt/hpijs/ljm1005.cpp prnt/hpijs/ljm1005.h \
- prnt/hpijs/ljzjsmono.h prnt/hpijs/hpjbig_wrapper.h prnt/hpijs/quickconnect.cpp prnt/hpijs/quickconnect.h prnt/hpijs/ljp1xxx.h prnt/hpijs/ljzjscolor.cpp prnt/hpijs/ljzjscolor.h
-libapdk_la_CXXFLAGS = -DAPDK_DJ660 -DAPDK_DJ6xx -DAPDK_DJ6xxPhoto -DAPDK_DJ8xx -DAPDK_DJ9xx -DAPDK_DJ9xxVIP -DAPDK_DJ630 \
- -DAPDK_APOLLO2XXX -DAPDK_APOLLO21XX -DAPDK_APOLLO2560 -DAPDK_DJ600 -DAPDK_DJ350 -DAPDK_DJ8x5 -DAPDK_PSP100 -DAPDK_AUTODUPLEX \
- -DAPDK_HIGH_RES_MODES -DAPDK_LJMONO -DAPDK_DJ540 -DAPDK_DJ850 -DAPDK_DJ890 -DAPDK_DJ3320 -DAPDK_LJCOLOR -DAPDK_DJGENERICVIP \
- -DAPDK_LJJETREADY -DAPDK_LJFASTRASTER -DAPDK_BUFFER_SEND -DAPDK_LDL_COMPRESS -DAPDK_EXTENDED_MEDIASIZE \
- -DAPDK_MLC_PRINTER -DAPDK_DJ3600 -DAPDK_LJZJS_MONO -DAPDK_LJZJS_COLOR -DAPDK_LJM1005 -DAPDK_QUICKCONNECT \
- $(APDK_ENDIAN_FLAG) $(APDK_AUTO_INCLUDE_FLAG) -DAPDK_LINUX -DNDEBUG $(DBUS_CFLAGS)
-libapdk_la_CFLAGS = $(libapdk_la_CXXFLAGS) -Iprnt/hpijs
-
-if HPIJS_INSTALL
-# hpijs
-bin_PROGRAMS = hpijs
-hpijs_SOURCES = prnt/hpijs/hpijs.cpp prnt/hpijs/ijs_server.c prnt/hpijs/ijs.c prnt/hpijs/hpijsfax.cpp prnt/hpijs/services.cpp prnt/hpijs/bug.h \
- prnt/hpijs/hpijs.h prnt/hpijs/ijs.h prnt/hpijs/ijs_server.h prnt/hpijs/services.h prnt/hpijs/ijs_client.h prnt/hpijs/hpiom.c prnt/hpijs/hpiom.h
-hpijs_CXXFLAGS = $(libapdk_la_CXXFLAGS)
-hpijs_CFLAGS = $(libapdk_la_CFLAGS)
-if HPLIP_BUILD
-hpijs_LDADD = libapdk.la -ljpeg -ldl libhpip.la libhpmud.la $(DBUS_LIBS)
-else
-hpijs_LDADD = libapdk.la -ljpeg -ldl
-endif
-endif # HPIJS_INSTALL
-
-if HPCUPS_INSTALL
-# hpcups
-#if NEW_HPCUPS
-hpcupsdir = $(cupsfilterdir)
-hpcups_PROGRAMS = hpcups
-hpcups_SOURCES = prnt/hpcups/HPCupsFilter.cpp prnt/hpcups/HPCupsFilter.h prnt/hpcups/dbuscomm.cpp prnt/hpcups/dbuscomm.h prnt/hpcups/Compressor.cpp prnt/hpcups/Compressor.h \
- prnt/hpcups/Mode2.cpp prnt/hpcups/Mode2.h prnt/hpcups/Mode3.cpp prnt/hpcups/Mode3.h \
- prnt/hpcups/Mode9.cpp prnt/hpcups/Mode9.h prnt/hpcups/Mode10.cpp prnt/hpcups/Mode10.h \
- prnt/hpcups/ModeDeltaPlus.cpp prnt/hpcups/ModeDeltaPlus.h prnt/hpcups/ModeJbig.cpp prnt/hpcups/ModeJbig.h \
- prnt/hpcups/ErnieFilter.cpp prnt/hpcups/ErnieFilter.h prnt/hpcups/EncapsulatorFactory.cpp prnt/hpcups/EncapsulatorFactory.h \
- prnt/hpcups/Encapsulator.cpp prnt/hpcups/Encapsulator.h prnt/hpcups/Pcl3.cpp prnt/hpcups/Pcl3.h \
- prnt/hpcups/Pcl3Gui.cpp prnt/hpcups/Pcl3Gui.h prnt/hpcups/Pcl3Gui2.cpp prnt/hpcups/Pcl3Gui2.h \
- prnt/hpcups/LJMono.cpp prnt/hpcups/LJMono.h prnt/hpcups/LJColor.cpp prnt/hpcups/LJColor.h \
- prnt/hpcups/LJFastRaster.cpp prnt/hpcups/LJFastRaster.h prnt/hpcups/LJJetReady.cpp prnt/hpcups/LJJetReady.h \
-prnt/hpcups/LJZjStream.cpp prnt/hpcups/LJZjStream.h \
- prnt/hpcups/LJZxStream.cpp prnt/hpcups/LJZxStream.h prnt/hpcups/Job.cpp prnt/hpcups/Job.h \
- prnt/hpcups/Pipeline.cpp prnt/hpcups/Pipeline.h prnt/hpcups/Processor.cpp prnt/hpcups/Processor.h \
- prnt/hpcups/RasterSender.cpp prnt/hpcups/RasterSender.h prnt/hpcups/ColorMatcher.cpp prnt/hpcups/ColorMatcher.h \
- prnt/hpcups/Halftoner.cpp prnt/hpcups/Halftoner.h prnt/hpcups/Scaler.cpp prnt/hpcups/Scaler.h prnt/hpcups/resources.h \
- prnt/hpcups/dj400ColorMaps.cpp prnt/hpcups/dj600ColorMaps.cpp prnt/hpcups/dj970ColorMaps.cpp prnt/hpcups/dj8xxColorMaps.cpp \
- prnt/hpcups/dj4100ColorMaps.cpp \
- prnt/hpcups/BreakTables.cpp prnt/hpcups/PrinterCommands.h prnt/hpcups/Utils.cpp prnt/hpcups/Utils.h \
- prnt/hpcups/SystemServices.cpp prnt/hpcups/SystemServices.h prnt/hpcups/CommonDefinitions.h prnt/hpcups/hpjbig_wrapper.h \
- prnt/hpcups/apPrintModes.h prnt/hpcups/dj400PrintModes.h prnt/hpcups/dj540PrintModes.h prnt/hpcups/dj600PrintModes.h \
- prnt/hpcups/dj630PrintModes.h prnt/hpcups/dj690PrintModes.h prnt/hpcups/dj850PrintModes.h prnt/hpcups/dj890PrintModes.h \
- prnt/hpcups/dj895PrintModes.h prnt/hpcups/dj8x5PrintModes.h prnt/hpcups/dj970PrintModes.h prnt/hpcups/Pcl3GuiPrintModes.h \
- prnt/hpcups/Pcl3PrintModes.h prnt/hpcups/ColorMaps.h \
- prnt/hpcups/QuickConnect.cpp prnt/hpcups/QuickConnect.h \
- prnt/hpcups/ModeJpeg.cpp prnt/hpcups/ModeJpeg.h \
- prnt/hpcups/jccolor.c prnt/hpcups/jinclude.h \
- prnt/hpcups/jdatadbf.c prnt/hpcups/jinclude.h \
- prnt/hpcups/Lidil.cpp prnt/hpcups/Lidil.h \
- prnt/hpcups/LidilCompress.cpp prnt/hpcups/LidilCompress.h \
- prnt/hpcups/LidilPrintModes.h prnt/hpcups/dj3320ColorMaps.cpp \
- prnt/hpcups/dj3600ColorMaps.cpp prnt/hpcups/dj3320PrintModes.h \
- prnt/hpcups/dj4100PrintModes.h
-
-hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS)
-hpcups_LDADD = -ljpeg -ldl -lcups -lcupsimage $(DBUS_LIBS)
-#else
-#hpcupsdir = $(cupsfilterdir)
-#hpcups_PROGRAMS = hpcups
-#hpcups_SOURCES = prnt/hpijs/hpcups.cpp prnt/hpijs/hpcups.h prnt/hpijs/services.cpp prnt/hpijs/services.h prnt/hpijs/hpiom.c prnt/hpijs/hpiom.h prnt/hpijs/bug.h prnt/hpijs/hpimage.cpp prnt/hpijs/hpimage.h
-#hpcups_CXXFLAGS = $(libapdk_la_CXXFLAGS)
-#hpcups_CFLAGS = $(libapdk_la_CFLAGS)
-#if HPCUPS_ONLY_BUILD
-#hpcups_LDADD = libapdk.la -ljpeg -ldl -lcups -lcupsimage
-#else
-#hpcups_LDADD = libapdk.la -ljpeg -ldl libhpip.la libhpmud.la $(DBUS_LIBS) -lcups -lcupsimage
-#endif #HPCUPS_ONLY_BUILD
-#endif # NEW_HPCUPS
-if !HPCUPS_ONLY_BUILD
-if FAX_BUILD
-# hpcupsfax
-hpcupsfaxdir = $(cupsfilterdir)
-hpcupsfax_PROGRAMS = hpcupsfax
-hpcupsfax_SOURCES = prnt/hpijs/hpcupsfax.cpp prnt/hpijs/hpcupsfax.h
-hpcupsfax_LDADD = libhpip.la -lcups -lcupsimage
-endif # FAX_BUILD
-endif # HPCUPS ONLY
-endif # HPCUPS_INSTALL
-
-# PPDs
-ppddir = $(hpppddir)
-dist_ppd_DATA = $(foomatic_ps_printers)
-if FOOMATIC_PPD_INSTALL
-dist_ppd_DATA += $(foomatic_ppd_printers)
-endif
-if FOOMATIC_DRV_INSTALL
-cupsdrvdir = $(drvdir)
-cupsdrv_DATA = $(foomatic_drv)
-endif
-if CUPS_PPD_INSTALL
-dist_ppd_DATA += $(cups_ppd_printers)
-endif
-if CUPS_DRV_INSTALL
-cupsdrv2dir = $(drvdir)
-cupsdrv2_DATA = $(cups_drv)
-endif
-
-install-dist_hplip_LogDATA:
-if FULL_BUILD
- test -z "$(DESTDIR)$(hplip_Logdir)" || mkdir -p $(DESTDIR)$(hplip_Logdir)
- chgrp "lp" -R $(DESTDIR)$(hplip_Logdir)
- chmod 774 $(DESTDIR)$(hplip_Logdir)
-endif #FULL_BUILD
-if HPLIP_BUILD
- test -z "$(DESTDIR)$(hplip_Logdir)" || mkdir -p $(DESTDIR)$(hplip_Logdir)
- chgrp "lp" -R $(DESTDIR)$(hplip_Logdir)
- chmod 774 $(DESTDIR)$(hplip_Logdir)
-endif #FULL_BUILD
-
-install-data-hook:
-if HPLIP_BUILD
-# If scanner build, add hpaio entry to sane dll.conf.
- if [ "$(scan_build)" = "yes" ]; then \
- $(mkinstalldirs) $(DESTDIR)/etc/sane.d; \
- if [ ! -f $(DESTDIR)/etc/sane.d/dll.conf ]; then \
- touch $(DESTDIR)/etc/sane.d/dll.conf; \
- fi; \
- if ! grep ^hpaio $(DESTDIR)/etc/sane.d/dll.conf >/dev/null 2>/dev/null ; then \
- echo "Adding hpaio entry to /etc/sane.d/dll.conf." ; \
- echo hpaio >>$(DESTDIR)/etc/sane.d/dll.conf ; \
- fi \
- fi
-if FULL_BUILD
-# Create hp-xxx commands in bindir.
- $(mkinstalldirs) $(DESTDIR)$(bindir)
- for i in $(dist_cmd_SCRIPTS); do \
- cmd=`basename $$i .py`; \
- if [ ! \( "$$cmd" = "toolbox" -a "$(gui_build)" = "no" \) ]; then \
- ln -sf ../share/$(PACKAGE)/$$i $(DESTDIR)$(bindir)/hp-$$cmd; \
- fi \
- done
-#
-# Install fax support.
- if [ "$(fax_build)" = "yes" ]; then \
- mv $(DESTDIR)$(hpfaxdir)/hpfax.py $(DESTDIR)$(hpfaxdir)/hpfax; \
- chmod 700 $(DESTDIR)$(hpfaxdir)/hpfax; \
- fi
-#
-# Make backend run as root.
-# chmod 700 $(DESTDIR)$(hpdir)/hp
-endif # FULL_BUILD
-endif # HPLIP_BUILD
-
-uninstall-hook:
-if HPLIP_BUILD
-# Remove hp-xxx commands.
- for i in $(dist_cmd_SCRIPTS); do \
- cmd=`basename $$i .py`; \
- rm -f $(DESTDIR)$(bindir)/hp-$$cmd; \
- done
-#
-# Remove fax support.
- rm -f $(DESTDIR)$(hpfaxdir)/hpfax
-endif
-
-rpm:
-if FULL_BUILD
- epm -f rpm hplipfull hplip.list
-endif
-if LITE_BUILD
- epm -f rpm hpliplite hplip.list
-endif
-if HPCUPS_ONLY_BUILD
- epm -f rpm hpliphpcupsonly hplip.list
-endif
-if HPIJS_ONLY_BUILD
- epm -f rpm hpliphpijsonly hplip.list
-endif
-
-deb:
-if FULL_BUILD
- epm -f deb hplipfull hplip.list
-endif
-if LITE_BUILD
- epm -f deb hpliplite hplip.list
-endif
-if HPCUPS_ONLY_BUILD
- epm -f deb hpliphpcupsonly hplip.list
-endif
-if HPIJS_ONLY_BUILD
- epm -f deb hpliphpijsonly hplip.list
-endif
+# +# Makefile.am - hplip automake input file +# +# (c) 2004-2015 Copyright Hewlett-Packard Development Company, LP +# Author: David Suffield, Naga Samrat Chowdary Narla, Sarbeswar Meher + +INCLUDES = -Iip -Iio/hpmud -Iscan/sane -Iprnt/hpijs + +hplipdir = $(datadir)/hplip + +docdir = $(hpdocdir) +doc_DATA = COPYING copyright prnt/hpijs/README_LIBJPG +EXTRA_DIST = prnt/hpijs/gdevijs-krgb-1.5-gs8.61.patch prnt/hpijs/README_LIBJPG copyright + +dist_noinst_SCRIPTS = +dist_noinst_DATA = +noinst_PROGRAMS = +lib_LTLIBRARIES = + +include foomatic_drv.inc +include unreleased.inc +include cups_drv.inc + +if DOC_BUILD +wwwsrc = doc +www0dir = $(docdir) +dist_www0_DATA = $(wwwsrc)/index.html $(wwwsrc)/commandline.html $(wwwsrc)/copying.html $(wwwsrc)/devicemanager.html $(wwwsrc)/faxtrouble.html $(wwwsrc)/gettinghelp.html $(wwwsrc)/hpscan.html $(wwwsrc)/mainttask.html $(wwwsrc)/plugins.html $(wwwsrc)/print.html $(wwwsrc)/printing.html $(wwwsrc)/printoptions.html $(wwwsrc)/printtroubleshooting.html $(wwwsrc)/scanning.html $(wwwsrc)/scantrouble.html $(wwwsrc)/sendfax.html $(wwwsrc)/setup.html $(wwwsrc)/systray.html $(wwwsrc)/troubleshooting.html $(wwwsrc)/uninstalling.html $(wwwsrc)/upgrading.html +www3dir = $(docdir)/styles +dist_www3_DATA = $(wwwsrc)/styles/* +www4dir = $(docdir)/images +dist_www4_DATA = $(wwwsrc)/images/* +endif + +if HPLIP_BUILD + +# hp backend. +hpdir = $(cupsbackenddir) +hp_PROGRAMS = hp +hp_SOURCES = prnt/backend/hp.c +hp_LDADD = libhpmud.la $(DBUS_LIBS) +hp_CFLAGS = $(DBUS_CFLAGS) + +# hpaio sane backend +if SCAN_BUILD +libsane_hpaiodir = $(libdir)/sane +libsane_hpaio_LTLIBRARIES = libsane-hpaio.la +libsane_hpaio_la_SOURCES = scan/sane/hpaio.c scan/sane/mfpdtf.c scan/sane/pml.c scan/sane/scl.c scan/sane/io.c scan/sane/hpaio.h \ + scan/sane/pml.h scan/sane/saneopts.h scan/sane/io.h scan/sane/mfpdtf.h scan/sane/sane.h scan/sane/scl.h scan/sane/tables.h \ + scan/sane/common.c scan/sane/common.h scan/sane/soap.h scan/sane/soapht.h scan/sane/sanei_debug.h scan/sane/sanei.h \ + scan/sane/sanei_init_debug.c scan/sane/marvell.h scan/sane/marvelli.h scan/sane/marvell.c scan/sane/soapht.c scan/sane/soap.c \ + scan/sane/soaphti.h scan/sane/soapi.h scan/sane/xml.c scan/sane/xml.h scan/sane/ledm.h scan/sane/ledmi.h scan/sane/ledm.c \ + scan/sane/bb_ledm.c scan/sane/http.h scan/sane/http.c +if DARWIN_BUILD +libsane_hpaio_la_LDFLAGS = -module -framework CoreFoundation -version-info 1:0:0 +else +libsane_hpaio_la_LDFLAGS = -version-info 1:0:0 +endif +# The following is a interlibrary dependency that must be compiled first. +libsane_hpaio_la_LIBADD = libhpip.la libhpmud.la $(DBUS_LIBS) -lcups -ldl +#libsane_hpaio_la_CFLAGS = -DWITH_NONAMESPACES -DSOAP_DEBUG +libsane_hpaio_la_CFLAGS = $(DBUS_CFLAGS) +endif # SCAN_BUILD + +# hpmud library +MUDNAME=hpmud +lib_LTLIBRARIES += libhpmud.la +libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/musb.c io/hpmud/pml.c \ + io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/musb.h io/hpmud/pml.h io/hpmud/dot4.c \ + io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h +if NETWORK_BUILD +libhpmud_la_LDFLAGS = -version-info 0:6:0 -lusb -lpthread -l$(SNMPLIB) -lcrypto +else +libhpmud_la_LDFLAGS = -version-info 0:6:0 -lusb -lpthread +endif +libhpmud_la_CFLAGS = -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" + +# ip library +lib_LTLIBRARIES += libhpip.la +libhpip_la_LDFLAGS = -version-info 0:1:0 +libhpip_la_LIBADD = -lm +libhpip_la_SOURCES = ip/xconvolve.c ip/xfax.c ip/xgrayout.c ip/xjpg_dct.c ip/xjpg_fix.c ip/xpad.c ip/xrotate.c ip/xskel.c ip/xtiff.c \ + ip/ipmain.c ip/xchgbpp.c ip/xcrop.c ip/xgamma.c ip/xjpg_dec.c ip/xjpg_huf.c ip/xpcx.c ip/xsaturation.c ip/xtable.c ip/xtonemap.c \ + ip/xbi2gray.c ip/xcolrspc.c ip/xfakemono.c ip/xgray2bi.c ip/xinvert.c ip/xjpg_enc.c ip/xmatrix.c ip/xpnm.c ip/xscale.c ip/xthumb.c ip/xyxtract.c \ + ip/hpip.h ip/ipdefs.h ip/xform.h ip/xjpg_dct.h ip/xjpg_huf.h ip/xjpg_mrk.h + +# hp-mkuri. +hp_mkuridir = $(bindir) +hp_mkuri_PROGRAMS = hp-mkuri +hp_mkuri_SOURCES = io/hpmud/hp-mkuri.c +hp_mkuri_LDADD = -ldl libhpmud.la +hp_mkuri_CFLAGS = -DCONFDIR=\"$(hplip_confdir)\" + +# hpmud.rules +rulesdir = /etc/udev/rules.d +dist_rules_DATA = data/rules/56-hpmud_support.rules +dist_rules_DATA += data/rules/86-hpmud_plugin.rules +dist_rules_DATA += data/rules/56-hpmud_add_printer.rules +if UDEV_ACL_RULES +dist_rules_DATA += data/rules/40-hplip.rules +else +dist_rules_DATA += data/rules/55-hpmud.rules +endif +halpredir = /usr/share/hal/fdi/preprobe/10osvendor +dist_halpre_DATA = data/rules/20-hplip-devices.fdi + +# hplip.conf +hplip_confdir = /etc/hp +hplip_conf_DATA = hplip.conf + +#pstotiff filter +pstotiffdir = $(cupsfilterdir) +pstotiff_SCRIPTS = fax/filters/pstotiff + +# hplip.state +hplip_statedir = /var/lib/hp +dist_hplip_state_DATA = +#dist_hplip_state_DATA = hplip.state + +# Log Files +hplip_Logdir=/var/log/hp + +if FULL_BUILD + +dist_hplip_SCRIPTS = hpssd.py __init__.py hpdio.py +dist_noinst_DATA += scan/sane/hpaio.desc prnt/drv/hpijs.drv.in.template +dist_noinst_SCRIPTS += dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall + +cmddir = $(hplipdir) +dist_cmd_SCRIPTS = align.py info.py print.py toolbox.py clean.py colorcal.py unload.py testpage.py makeuri.py check.py fab.py levels.py \ + sendfax.py setup.py makecopies.py probe.py timedate.py firmware.py scan.py systray.py plugin.py linefeedcal.py pqdiag.py \ + faxsetup.py devicesettings.py printsettings.py query.py pkservice.py wificonfig.py check-plugin.py diagnose_plugin.py uninstall.py \ + upgrade.py config_usb_printer.py diagnose_queues.py + +# base +basedir = $(hplipdir)/base + +dist_base_DATA = base/maint.py base/codes.py base/g.py base/pml.py base/status.py \ + base/__init__.py base/mfpdtf.py base/utils.py base/wifi.py base/LedmWifi.py \ + base/device.py base/logger.py base/slp.py base/exif.py base/strings.py base/magic.py \ + base/imagesize.py base/pexpect.py base/models.py base/mdns.py base/tui.py base/dime.py \ + base/ldif.py base/vcard.py base/module.py base/pkit.py + +# installer +installdir = $(hplipdir)/installer +dist_install_DATA = installer/__init__.py installer/dcheck.py installer/distros.dat installer/core_install.py +dist_noinst_DATA += installer/text_install.py + +# makecopies +copierdir = $(hplipdir)/copier +dist_copier_DATA = copier/copier.py copier/__init__.py + +# fax +if FAX_BUILD +faxdir = $(hplipdir)/fax +dist_fax_DATA = fax/fax.py fax/__init__.py fax/coverpages.py fax/pmlfax.py fax/ledmfax.py fax/soapfax.py fax/ledmsoapfax.py fax/marvellfax.py \ + fax/faxdevice.py fax/filters/pstotiff fax/filters/pstotiff.convs fax/filters/pstotiff.types +fax_filtersdir = $(mimedir) +dist_fax_filters_DATA = fax/filters/pstotiff.convs fax/filters/pstotiff.types +hpfaxdir = $(cupsbackenddir) +dist_hpfax_SCRIPTS = fax/backend/hpfax.py +hpijsfaxppddir = $(hpppddir) +hpcupsfaxppddir = $(hpppddir) +if HPIJS_INSTALL +dist_hpijsfaxppd_DATA = fax/ppd/HP-Fax-hpijs.ppd.gz fax/ppd/HP-Fax2-hpijs.ppd.gz fax/ppd/HP-Fax3-hpijs.ppd.gz fax/ppd/HP-Fax4-hpijs.ppd.gz +endif # HPIJS_INSTALL +if HPCUPS_INSTALL +dist_hpcupsfaxppd_DATA = fax/ppd/HP-Fax-hpcups.ppd.gz fax/ppd/HP-Fax2-hpcups.ppd.gz fax/ppd/HP-Fax3-hpcups.ppd.gz fax/ppd/HP-Fax4-hpcups.ppd.gz +endif # HPCUPS_INSTALL +endif # FAX_BUILD + +# ptest +noinst_PROGRAMS += ptest +ptest_SOURCES = pcard/ptest.c pcard/ptest.h pcard/fat.c pcard/fat.h +ptest_LDADD = libhpmud.la + +# data +modelsdir = $(hplipdir)/data/models +images_16x16dir = $(hplipdir)/data/images/16x16 +images_24x24dir = $(hplipdir)/data/images/24x24 +images_32x32dir = $(hplipdir)/data/images/32x32 +images_64x64dir = $(hplipdir)/data/images/64x64 +images_128x128dir = $(hplipdir)/data/images/128x128 +images_256x256dir = $(hplipdir)/data/images/256x256 +images_devicesdir = $(hplipdir)/data/images/devices +images_otherdir = $(hplipdir)/data/images/other +pcldir = $(hplipdir)/data/pcl +ldldir = $(hplipdir)/data/ldl +postscriptdir = $(hplipdir)/data/ps +localzdir = $(hplipdir)/data/localization +dist_postscript_DATA = data/ps/testpage.ps.gz data/ps/clean_page.pdf.gz +dist_models_DATA = data/models/models.dat +dist_hplip_Log_DATA= + +if GUI_BUILD +dist_images_16x16_DATA = data/images/16x16/* +dist_images_24x24_DATA = data/images/24x24/* +dist_images_32x32_DATA = data/images/32x32/* +dist_images_64x64_DATA = data/images/64x64/* +dist_images_128x128_DATA = data/images/128x128/* +dist_images_256x256_DATA = data/images/256x256/* +dist_images_devices_DATA = data/images/devices/* +dist_images_other_DATA = data/images/other/* +endif + +dist_pcl_DATA = data/pcl/align1_8xx.pcl.gz data/pcl/align1_9xx.pcl.gz data/pcl/align2_8xx.pcl.gz data/pcl/align3_8xx.pcl.gz data/pcl/align4_8xx.pcl.gz \ + data/pcl/align5_8xx.pcl.gz data/pcl/align2_9xx.pcl.gz data/pcl/align3_9xx.pcl.gz data/pcl/align4_450.pcl.gz data/pcl/align6_450.pcl.gz \ + data/pcl/colorcal1_450.pcl.gz data/pcl/colorcal2_450.pcl.gz data/pcl/crbcal.pcl.gz data/pcl/crcaldone.pcl.gz data/pcl/crcbcal.pcl.gz data/pcl/crccal.pcl.gz \ + data/pcl/crcpcal.pcl.gz data/pcl/crpcal.pcl.gz +dist_ldl_DATA = data/ldl/cb2pcal.ldl.gz data/ldl/cb2pcal_done.ldl.gz data/ldl/cbbcal.ldl.gz data/ldl/cbccal.ldl.gz data/ldl/cbccal_done.ldl.gz data/ldl/cbcpcal.ldl.gz \ + data/ldl/cbpcal.ldl.gz +dist_localz_DATA = data/localization/hplip_de.qm data/localization/hplip_es.qm data/localization/hplip_fr.qm data/localization/hplip_it.qm \ + data/localization/hplip_pt.qm data/localization/hplip_ru.qm data/localization/hplip_zh.qm +dist_noinst_DATA += data/localization/hplip_de.ts data/localization/hplip_es.ts data/localization/hplip_fr.ts data/localization/hplip_it.ts \ + data/localization/hplip_pt.ts data/localization/hplip_ru.ts data/localization/hplip_zh.ts + +# pcard +pcarddir = $(hplipdir)/pcard +dist_pcard_DATA = pcard/__init__.py pcard/photocard.py + +# pcardext +pcardextdir = $(pyexecdir) +pcardext_LTLIBRARIES = pcardext.la +pcardext_la_LDFLAGS = -module -avoid-version +pcardext_la_SOURCES = pcard/pcardext/pcardext.c pcard/fat.c +pcardext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) + +# prnt +prntdir = $(hplipdir)/prnt +dist_prnt_DATA = prnt/cups.py prnt/__init__.py prnt/ldl.py prnt/pcl.py prnt/colorcal.py + +# cupsext +cupsextdir = $(pyexecdir) +cupsext_LTLIBRARIES = cupsext.la +cupsext_la_LDFLAGS = -module -avoid-version +cupsext_la_SOURCES = prnt/cupsext/cupsext.c +cupsext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) +cupsext_la_LIBADD = -lcups + +if SCAN_BUILD +# scan +scandir = $(hplipdir)/scan +dist_scan_DATA = scan/__init__.py scan/sane.py + +# scanext +scanextdir = $(pyexecdir) +scanext_LTLIBRARIES = scanext.la +scanext_la_LDFLAGS = -module -avoid-version -lsane +scanext_la_SOURCES = scan/scanext/scanext.c +scanext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) +endif + +# hpmudext +hpmudextdir = $(pyexecdir) +hpmudext_LTLIBRARIES = hpmudext.la +hpmudext_la_LDFLAGS = -module -avoid-version +hpmudext_la_SOURCES = io/mudext/hpmudext.c +hpmudext_la_LIBADD = libhpmud.la +hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) +# ui (qt3) +if GUI_BUILD +if QT3_INSTALL +uidir = $(hplipdir)/ui +dist_ui_DATA = ui/alignform.py \ + ui/colorcalform_base.py ui/colorcalform.py ui/coloradjform_base.py ui/coloradjform.py ui/devmgr4_base.py ui/devmgr4.py \ + ui/__init__.py ui/loadpaperform_base.py ui/loadpaperform.py \ + ui/paperedgealignform_base.py ui/paperedgealignform.py ui/ui_utils.py \ + ui/settingsdialog_base.py ui/settingsdialog.py ui/aligntype6form1.py ui/aligntype6form1_base.py ui/aligntype6form2_base.py \ + ui/aligntype6form2.py ui/nodevicesform_base.py ui/nodevicesform.py ui/unloadform.py \ + ui/imagepropertiesdlg_base.py ui/imagepropertiesdlg.py ui/choosedevicedlg.py ui/chooseprinterdlg.py \ + ui/aboutdlg.py ui/aboutdlg_base.py ui/waitform.py ui/waitform_base.py ui/cleaningform_base.py ui/cleaningform.py \ + ui/cleaningform2_base.py ui/cleaningform2.py ui/colorcalform2_base.py ui/colorcalform2.py ui/colorcal4form.py \ + ui/colorcal4form_base.py ui/colorcal4form_base.ui ui/printerform.py \ + ui/faxaddrbookgroupsform_base.py ui/faxaddrbookgroupeditform_base.py ui/faxaddrbookform_base.py \ + ui/faxaddrbookform.py ui/faxaddrbookeditform_base.py ui/align10form.py ui/align10form_base.py \ + ui/faxsendjobform.py ui/faxsettingsform_base.py ui/faxsettingsform.py \ + ui/coverpageform_base.py ui/coverpageform.py ui/allowabletypesdlg_base.py ui/allowabletypesdlg.py \ + ui/makecopiesform.py ui/setupform_base.py ui/setupform.py ui/setupmanualfind_base.py \ + ui/setupmanualfind.py ui/setupsettings_base.py ui/setupsettings.py ui/scrollview.py \ + ui/scrollprintsettings.py ui/scrollprint.py ui/scrollfax.py \ + ui/scrollunload.py ui/scrollcopy.py ui/pluginform2.py ui/pluginform2_base.py ui/systemtray.py \ + ui/ui_utils.py ui/jobstoragemixin.py ui/pluginlicenseform_base.py ui/pluginlicenseform.py \ + ui/align13form_base.py ui/align13form.py ui/firmwaredialog_base.py ui/firmwaredialog.py \ + ui/deviceuricombobox.py ui/upgradeform.py ui/upgradeform_base.py + +dist_noinst_DATA += ui/colorcalform2_base.ui ui/settingsdialog_base.ui ui/aligntype6form1_base.ui \ + ui/aboutdlg_base.ui ui/imagepropertiesdlg_base.ui ui/paperedgealignform_base.ui ui/aligntype6form2_base.ui \ + ui/nodevicesform_base.ui ui/cleaningform_base.ui ui/colorcalform_base.ui ui/devmgr4_base.ui ui/loadpaperform_base.ui \ + ui/cleaningform2_base.ui ui/waitform_base.ui ui/coloradjform_base.ui ui/faxaddrbookeditform_base.ui \ + ui/faxaddrbookform_base.ui ui/faxaddrbookgroupeditform_base.ui ui/faxaddrbookgroupsform_base.ui \ + ui/align10form_base.ui ui/pluginform2_base.ui \ + plugins/powersettingsdialog_base.ui ui/faxsettingsform_base.ui ui/coverpageform_base.ui \ + ui/allowabletypesdlg_base.ui ui/setupform_base.ui ui/setupmanualfind_base.ui \ + ui/setupsettings_base.ui ui/pluginlicenseform_base.ui ui/align13form_base.ui ui/firmwaredialog_base.ui +endif +endif + +#ui4 (qt4) +if GUI_BUILD +if QT4_INSTALL +ui4dir=$(hplipdir)/ui4 +#dist_ui4_SCRIPTS = ui4/devmgr5.py ui4/systemtray.py ui4/devmgr5_base.py ui4/__init__.py ui4/ui_utils.py \ +# ui4/settingsdialog_base.py ui4/settingsdialog.py ui4/printsettingstoolbox.py ui4/printdialog_base.py \ +# ui4/printdialog.py +#dist_noinst_DATA += ui4/devmgr5_base.ui ui4/settingsdialog_base.ui ui4/printdialog_base.ui +dist_ui4_DATA = ui4/*.py +dist_noinst_DATA += ui4/*.ui +endif +endif + +# ui plugins (qt3) +if GUI_BUILD +if QT3_INSTALL +pluginsdir = $(hplipdir)/plugins +dist_plugins_DATA = plugins/dj450.py plugins/__init__.py plugins/powersettings.py plugins/powersettingsdialog.py \ + plugins/powersettingsdialog_base.py plugins/Deskjet_460.py plugins/Officejet_H470.py plugins/powersettings2.py +endif +endif + +# ui plugins (qt4) +if GUI_BUILD +if QT4_INSTALL +plugins4dir = $(hplipdir)/ui4/plugins +dist_plugins4_SCRIPTS = +endif +endif + +# PolicyKit +if POLICYKIT_INSTALL +policykit_dbus_etcdir = /etc/dbus-1/system.d +dist_policykit_dbus_etc_DATA = data/policykit/com.hp.hplip.conf +policykit_dbus_sharedir = /usr/share/dbus-1/system-services +dist_policykit_dbus_share_DATA = data/policykit/com.hp.hplip.service +policykit_policydir = $(policykit_dir) +dist_policykit_policy_DATA = data/policykit/com.hp.hplip.policy +endif + +# hppgsz +noinst_PROGRAMS += hppgsz +hppgsz_SOURCES = prnt/hpijs/PrinterProperties.cpp prnt/hpijs/PrinterProperties.h prnt/hpijs/bug.h +hppgsz_CXXFLAGS = $(libapdk_la_CXXFLAGS) +hppgsz_CFLAGS = $(libapdk_la_CFLAGS) +hppgsz_LDADD = libapdk.la -ljpeg -ldl + +# hplip.desktop +hplip_desktopdir = $(icondir) +hplip_desktop_DATA = hplip.desktop + +# hplip-systray.desktop +hplip_systraydir = $(systraydir) +hplip_systray_DATA = hplip-systray.desktop + +# hpipjs (CUPS filter) +hplipjsdir = $(cupsfilterdir) +hplipjs_PROGRAMS = hplipjs +hplipjs_SOURCES = prnt/filters/hplipjs.c + +# hpps (CUPS filter) +hppsdir = $(cupsfilterdir) +hpps_PROGRAMS = hpps +hpps_SOURCES = prnt/hpps/hppsfilter.c +hpps_LDADD = -lcups + +# hpcac (CUPS filter, Color Access Control, ie: CLJ 4700) +cacdir = $(cupsfilterdir) +dist_cac_SCRIPTS = prnt/filters/hpcac + +endif # FULL_BUILD +endif # HPLIP_BUILD + +# foomatic-rip-hplip +if RIP_INSTALL +ripdir = $(cupsfilterdir) +dist_rip_SCRIPTS = prnt/hpijs/foomatic-rip-hplip +endif + +# apdk +noinst_LTLIBRARIES = libapdk.la +libapdk_la_SOURCES = prnt/hpijs/models.cpp prnt/hpijs/breaks_open.cpp \ + prnt/hpijs/dj9xxvip.cpp prnt/hpijs/dj9xx.cpp prnt/hpijs/capture.cpp prnt/hpijs/colormatch.cpp prnt/hpijs/colormatcher_open.cpp \ + prnt/hpijs/compression.cpp prnt/hpijs/context2.cpp prnt/hpijs/create_so.cpp prnt/hpijs/creator.cpp \ + prnt/hpijs/dj600.cpp prnt/hpijs/dj630.cpp prnt/hpijs/dj660.cpp prnt/hpijs/dj690.cpp prnt/hpijs/dj6xx.cpp prnt/hpijs/dj8xx.cpp prnt/hpijs/dj600_maps.cpp \ + prnt/hpijs/dj660_maps.cpp prnt/hpijs/dj690_maps.cpp prnt/hpijs/dj895_maps.cpp prnt/hpijs/dj895_maps2.cpp prnt/hpijs/dj970_maps.cpp \ + prnt/hpijs/dj970_maps2.cpp prnt/hpijs/dj970_maps3.cpp prnt/hpijs/filterhpa.cpp prnt/hpijs/apollo21xx.cpp prnt/hpijs/apollo2560.cpp prnt/hpijs/apollo2xxx.cpp \ + prnt/hpijs/dj8x5.cpp prnt/hpijs/psp100.cpp prnt/hpijs/phobos_cmaps.cpp prnt/hpijs/dj350.cpp prnt/hpijs/halftoner.cpp prnt/hpijs/halftoner_open.cpp \ + prnt/hpijs/globals.cpp prnt/hpijs/header2.cpp prnt/hpijs/htmtxhi.cpp prnt/hpijs/pmselect.cpp \ + prnt/hpijs/job.cpp prnt/hpijs/printer.cpp prnt/hpijs/registry.cpp prnt/hpijs/scaler.cpp \ + prnt/hpijs/scaler_open.cpp prnt/hpijs/script.cpp prnt/hpijs/systemservices.cpp \ + prnt/hpijs/translator.cpp prnt/hpijs/version.cpp prnt/hpijs/versioncode.cpp \ + prnt/hpijs/djgenericvip.cpp prnt/hpijs/dj540.cpp prnt/hpijs/dj850.cpp prnt/hpijs/dj850_maps.cpp prnt/hpijs/dj890.cpp \ + prnt/hpijs/apollo21xx.h prnt/hpijs/apollo2560.h prnt/hpijs/apollo2xxx.h prnt/hpijs/colormatch.h prnt/hpijs/colormatcher_open.h \ + prnt/hpijs/compression.h prnt/hpijs/config.h prnt/hpijs/context.h prnt/hpijs/dj350.h prnt/hpijs/dj400.h prnt/hpijs/dj540.h \ + prnt/hpijs/dj600.h prnt/hpijs/dj630.h prnt/hpijs/dj660.h prnt/hpijs/dj690.h prnt/hpijs/dj6xx.h prnt/hpijs/dj8x5.h prnt/hpijs/dj8xx.h \ + prnt/hpijs/dj850.h prnt/hpijs/dj890.h prnt/hpijs/dj9xx.h prnt/hpijs/dj9xxvip.h \ + prnt/hpijs/ernieplatform.h prnt/hpijs/filterhpa.h prnt/hpijs/global_types.h prnt/hpijs/halftoner.h prnt/hpijs/font.h prnt/hpijs/debug.h \ + prnt/hpijs/halftoner_open.h prnt/hpijs/header.h prnt/hpijs/hpprint_c_api.h \ + prnt/hpijs/hpprintapi.h prnt/hpijs/hptypes.h prnt/hpijs/htfed.h prnt/hpijs/internal.h \ + prnt/hpijs/interp.h prnt/hpijs/interp_data_50.h prnt/hpijs/io_defs.h prnt/hpijs/job.h prnt/hpijs/models.h prnt/hpijs/modes.h prnt/hpijs/pmselect.h \ + prnt/hpijs/printer.h prnt/hpijs/psp100.h prnt/hpijs/psp470.h prnt/hpijs/resources.h prnt/hpijs/scaler_open.h prnt/hpijs/scaler_prop.h prnt/hpijs/script.h \ + prnt/hpijs/systemservices.h prnt/hpijs/unistd_.h prnt/hpijs/djgenericvip.h prnt/hpijs/ljmono.h prnt/hpijs/ljmono.cpp \ + prnt/hpijs/dj3320.cpp prnt/hpijs/dj3320.h prnt/hpijs/dj3320_cmap.cpp prnt/hpijs/dj3600.cpp prnt/hpijs/dj3600.h prnt/hpijs/dj3600_cmap.cpp prnt/hpijs/dj4100.h prnt/hpijs/djd2600.h \ + prnt/hpijs/dj4100_cmap.cpp prnt/hpijs/ldlencap.h prnt/hpijs/ljcolor.cpp prnt/hpijs/ljcolor.h prnt/hpijs/pscript.h \ + prnt/hpijs/printerproxy.cpp prnt/hpijs/printerfactory.cpp prnt/hpijs/printerproxy.h prnt/hpijs/printerfactory.h \ + prnt/hpijs/ljjetready.cpp prnt/hpijs/ljjetready.h prnt/hpijs/jdatadbf.c prnt/hpijs/jccolor.c prnt/hpijs/ljfastraster.cpp prnt/hpijs/ljfastraster.h \ + prnt/hpijs/jinclude.h prnt/hpijs/jpegint.h prnt/hpijs/dj55xx.h prnt/hpijs/hpijsfax.h prnt/hpijs/ojprokx50.h \ + prnt/hpijs/ljzjs.cpp prnt/hpijs/ljzjs.h prnt/hpijs/ljzjsmono.cpp prnt/hpijs/ljm1005.cpp prnt/hpijs/ljm1005.h \ + prnt/hpijs/ljzjsmono.h prnt/hpijs/hpjbig_wrapper.h prnt/hpijs/quickconnect.cpp prnt/hpijs/quickconnect.h prnt/hpijs/ljp1xxx.h prnt/hpijs/ljzjscolor.cpp prnt/hpijs/ljzjscolor.h +libapdk_la_CXXFLAGS = -DAPDK_DJ660 -DAPDK_DJ6xx -DAPDK_DJ6xxPhoto -DAPDK_DJ8xx -DAPDK_DJ9xx -DAPDK_DJ9xxVIP -DAPDK_DJ630 \ + -DAPDK_APOLLO2XXX -DAPDK_APOLLO21XX -DAPDK_APOLLO2560 -DAPDK_DJ600 -DAPDK_DJ350 -DAPDK_DJ8x5 -DAPDK_PSP100 -DAPDK_AUTODUPLEX \ + -DAPDK_HIGH_RES_MODES -DAPDK_LJMONO -DAPDK_DJ540 -DAPDK_DJ850 -DAPDK_DJ890 -DAPDK_DJ3320 -DAPDK_LJCOLOR -DAPDK_DJGENERICVIP \ + -DAPDK_LJJETREADY -DAPDK_LJFASTRASTER -DAPDK_BUFFER_SEND -DAPDK_LDL_COMPRESS -DAPDK_EXTENDED_MEDIASIZE \ + -DAPDK_MLC_PRINTER -DAPDK_DJ3600 -DAPDK_LJZJS_MONO -DAPDK_LJZJS_COLOR -DAPDK_LJM1005 -DAPDK_QUICKCONNECT \ + $(APDK_ENDIAN_FLAG) $(APDK_AUTO_INCLUDE_FLAG) -DAPDK_LINUX -DNDEBUG $(DBUS_CFLAGS) +libapdk_la_CFLAGS = $(libapdk_la_CXXFLAGS) -Iprnt/hpijs + +if HPIJS_INSTALL +# hpijs +bin_PROGRAMS = hpijs +hpijs_SOURCES = prnt/hpijs/hpijs.cpp prnt/hpijs/ijs_server.c prnt/hpijs/ijs.c prnt/hpijs/hpijsfax.cpp prnt/hpijs/services.cpp prnt/hpijs/bug.h \ + prnt/hpijs/hpijs.h prnt/hpijs/ijs.h prnt/hpijs/ijs_server.h prnt/hpijs/services.h prnt/hpijs/ijs_client.h prnt/hpijs/hpiom.c prnt/hpijs/hpiom.h +hpijs_CXXFLAGS = $(libapdk_la_CXXFLAGS) +hpijs_CFLAGS = $(libapdk_la_CFLAGS) +if HPLIP_BUILD +hpijs_LDADD = libapdk.la -ljpeg -ldl libhpip.la libhpmud.la $(DBUS_LIBS) +else +hpijs_LDADD = libapdk.la -ljpeg -ldl +endif +endif # HPIJS_INSTALL + +if HPCUPS_INSTALL +# hpcups +#if NEW_HPCUPS +hpcupsdir = $(cupsfilterdir) +hpcups_PROGRAMS = hpcups +hpcups_SOURCES = prnt/hpcups/HPCupsFilter.cpp prnt/hpcups/HPCupsFilter.h prnt/hpcups/dbuscomm.cpp prnt/hpcups/dbuscomm.h prnt/hpcups/Compressor.cpp prnt/hpcups/Compressor.h \ + prnt/hpcups/Mode2.cpp prnt/hpcups/Mode2.h prnt/hpcups/Mode3.cpp prnt/hpcups/Mode3.h \ + prnt/hpcups/Mode9.cpp prnt/hpcups/Mode9.h prnt/hpcups/Mode10.cpp prnt/hpcups/Mode10.h \ + prnt/hpcups/ModeDeltaPlus.cpp prnt/hpcups/ModeDeltaPlus.h prnt/hpcups/ModeJbig.cpp prnt/hpcups/ModeJbig.h \ + prnt/hpcups/ErnieFilter.cpp prnt/hpcups/ErnieFilter.h prnt/hpcups/EncapsulatorFactory.cpp prnt/hpcups/EncapsulatorFactory.h \ + prnt/hpcups/Encapsulator.cpp prnt/hpcups/Encapsulator.h prnt/hpcups/Pcl3.cpp prnt/hpcups/Pcl3.h \ + prnt/hpcups/Pcl3Gui.cpp prnt/hpcups/Pcl3Gui.h prnt/hpcups/Pcl3Gui2.cpp prnt/hpcups/Pcl3Gui2.h \ + prnt/hpcups/LJMono.cpp prnt/hpcups/LJMono.h prnt/hpcups/LJColor.cpp prnt/hpcups/LJColor.h \ + prnt/hpcups/LJFastRaster.cpp prnt/hpcups/LJFastRaster.h prnt/hpcups/LJJetReady.cpp prnt/hpcups/LJJetReady.h \ +prnt/hpcups/LJZjStream.cpp prnt/hpcups/LJZjStream.h \ + prnt/hpcups/LJZxStream.cpp prnt/hpcups/LJZxStream.h prnt/hpcups/Job.cpp prnt/hpcups/Job.h \ + prnt/hpcups/Pipeline.cpp prnt/hpcups/Pipeline.h prnt/hpcups/Processor.cpp prnt/hpcups/Processor.h \ + prnt/hpcups/RasterSender.cpp prnt/hpcups/RasterSender.h prnt/hpcups/ColorMatcher.cpp prnt/hpcups/ColorMatcher.h \ + prnt/hpcups/Halftoner.cpp prnt/hpcups/Halftoner.h prnt/hpcups/Scaler.cpp prnt/hpcups/Scaler.h prnt/hpcups/resources.h \ + prnt/hpcups/dj400ColorMaps.cpp prnt/hpcups/dj600ColorMaps.cpp prnt/hpcups/dj970ColorMaps.cpp prnt/hpcups/dj8xxColorMaps.cpp \ + prnt/hpcups/dj4100ColorMaps.cpp \ + prnt/hpcups/BreakTables.cpp prnt/hpcups/PrinterCommands.h prnt/hpcups/Utils.cpp prnt/hpcups/Utils.h \ + prnt/hpcups/SystemServices.cpp prnt/hpcups/SystemServices.h prnt/hpcups/CommonDefinitions.h prnt/hpcups/hpjbig_wrapper.h \ + prnt/hpcups/apPrintModes.h prnt/hpcups/dj400PrintModes.h prnt/hpcups/dj540PrintModes.h prnt/hpcups/dj600PrintModes.h \ + prnt/hpcups/dj630PrintModes.h prnt/hpcups/dj690PrintModes.h prnt/hpcups/dj850PrintModes.h prnt/hpcups/dj890PrintModes.h \ + prnt/hpcups/dj895PrintModes.h prnt/hpcups/dj8x5PrintModes.h prnt/hpcups/dj970PrintModes.h prnt/hpcups/Pcl3GuiPrintModes.h \ + prnt/hpcups/Pcl3PrintModes.h prnt/hpcups/ColorMaps.h \ + prnt/hpcups/QuickConnect.cpp prnt/hpcups/QuickConnect.h \ + prnt/hpcups/ModeJpeg.cpp prnt/hpcups/ModeJpeg.h \ + prnt/hpcups/jccolor.c prnt/hpcups/jinclude.h \ + prnt/hpcups/jdatadbf.c prnt/hpcups/jinclude.h \ + prnt/hpcups/Lidil.cpp prnt/hpcups/Lidil.h \ + prnt/hpcups/LidilCompress.cpp prnt/hpcups/LidilCompress.h \ + prnt/hpcups/LidilPrintModes.h prnt/hpcups/dj3320ColorMaps.cpp \ + prnt/hpcups/dj3600ColorMaps.cpp prnt/hpcups/dj3320PrintModes.h \ + prnt/hpcups/dj4100PrintModes.h + +hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS) +hpcups_LDADD = -ljpeg -ldl -lcups -lcupsimage $(DBUS_LIBS) +#else +#hpcupsdir = $(cupsfilterdir) +#hpcups_PROGRAMS = hpcups +#hpcups_SOURCES = prnt/hpijs/hpcups.cpp prnt/hpijs/hpcups.h prnt/hpijs/services.cpp prnt/hpijs/services.h prnt/hpijs/hpiom.c prnt/hpijs/hpiom.h prnt/hpijs/bug.h prnt/hpijs/hpimage.cpp prnt/hpijs/hpimage.h +#hpcups_CXXFLAGS = $(libapdk_la_CXXFLAGS) +#hpcups_CFLAGS = $(libapdk_la_CFLAGS) +#if HPCUPS_ONLY_BUILD +#hpcups_LDADD = libapdk.la -ljpeg -ldl -lcups -lcupsimage +#else +#hpcups_LDADD = libapdk.la -ljpeg -ldl libhpip.la libhpmud.la $(DBUS_LIBS) -lcups -lcupsimage +#endif #HPCUPS_ONLY_BUILD +#endif # NEW_HPCUPS +if !HPCUPS_ONLY_BUILD +if FAX_BUILD +# hpcupsfax +hpcupsfaxdir = $(cupsfilterdir) +hpcupsfax_PROGRAMS = hpcupsfax +hpcupsfax_SOURCES = prnt/hpijs/hpcupsfax.cpp prnt/hpijs/hpcupsfax.h +hpcupsfax_LDADD = libhpip.la -lcups -lcupsimage +endif # FAX_BUILD +endif # HPCUPS ONLY +endif # HPCUPS_INSTALL + +# PPDs +ppddir = $(hpppddir) +dist_ppd_DATA = $(foomatic_ps_printers) +if FOOMATIC_PPD_INSTALL +dist_ppd_DATA += $(foomatic_ppd_printers) +endif +if FOOMATIC_DRV_INSTALL +cupsdrvdir = $(drvdir) +cupsdrv_DATA = $(foomatic_drv) +endif +if CUPS_PPD_INSTALL +dist_ppd_DATA += $(cups_ppd_printers) +endif +if CUPS_DRV_INSTALL +cupsdrv2dir = $(drvdir) +cupsdrv2_DATA = $(cups_drv) +endif + +install-dist_hplip_LogDATA: +if FULL_BUILD + test -z "$(DESTDIR)$(hplip_Logdir)" || mkdir -p $(DESTDIR)$(hplip_Logdir) + chgrp "lp" -R $(DESTDIR)$(hplip_Logdir) + chmod 774 $(DESTDIR)$(hplip_Logdir) +endif #FULL_BUILD +if HPLIP_BUILD + test -z "$(DESTDIR)$(hplip_Logdir)" || mkdir -p $(DESTDIR)$(hplip_Logdir) + chgrp "lp" -R $(DESTDIR)$(hplip_Logdir) + chmod 774 $(DESTDIR)$(hplip_Logdir) +endif #FULL_BUILD + +install-data-hook: +if HPLIP_BUILD +# If scanner build, add hpaio entry to sane dll.conf. + if [ "$(scan_build)" = "yes" ]; then \ + $(mkinstalldirs) $(DESTDIR)/etc/sane.d; \ + if [ ! -f $(DESTDIR)/etc/sane.d/dll.conf ]; then \ + touch $(DESTDIR)/etc/sane.d/dll.conf; \ + fi; \ + if ! grep ^hpaio $(DESTDIR)/etc/sane.d/dll.conf >/dev/null 2>/dev/null ; then \ + echo "Adding hpaio entry to /etc/sane.d/dll.conf." ; \ + echo hpaio >>$(DESTDIR)/etc/sane.d/dll.conf ; \ + fi \ + fi +if FULL_BUILD +# Create hp-xxx commands in bindir. + $(mkinstalldirs) $(DESTDIR)$(bindir) + for i in $(dist_cmd_SCRIPTS); do \ + cmd=`basename $$i .py`; \ + if [ ! \( "$$cmd" = "toolbox" -a "$(gui_build)" = "no" \) ]; then \ + ln -sf ../share/$(PACKAGE)/$$i $(DESTDIR)$(bindir)/hp-$$cmd; \ + fi \ + done +# +# Install fax support. + if [ "$(fax_build)" = "yes" ]; then \ + mv $(DESTDIR)$(hpfaxdir)/hpfax.py $(DESTDIR)$(hpfaxdir)/hpfax; \ + chmod 700 $(DESTDIR)$(hpfaxdir)/hpfax; \ + fi +# +# Make backend run as root. +# chmod 700 $(DESTDIR)$(hpdir)/hp +endif # FULL_BUILD +endif # HPLIP_BUILD + +uninstall-hook: +if HPLIP_BUILD +# Remove hp-xxx commands. + for i in $(dist_cmd_SCRIPTS); do \ + cmd=`basename $$i .py`; \ + rm -f $(DESTDIR)$(bindir)/hp-$$cmd; \ + done +# +# Remove fax support. + rm -f $(DESTDIR)$(hpfaxdir)/hpfax +endif + +rpm: +if FULL_BUILD + epm -f rpm hplipfull hplip.list +endif +if LITE_BUILD + epm -f rpm hpliplite hplip.list +endif +if HPCUPS_ONLY_BUILD + epm -f rpm hpliphpcupsonly hplip.list +endif +if HPIJS_ONLY_BUILD + epm -f rpm hpliphpijsonly hplip.list +endif + +deb: +if FULL_BUILD + epm -f deb hplipfull hplip.list +endif +if LITE_BUILD + epm -f deb hpliplite hplip.list +endif +if HPCUPS_ONLY_BUILD + epm -f deb hpliphpcupsonly hplip.list +endif +if HPIJS_ONLY_BUILD + epm -f deb hpliphpijsonly hplip.list +endif diff --git a/Makefile.in b/Makefile.in index aaa064005..3b7b41a92 100644 --- a/Makefile.in +++ b/Makefile.in @@ -18,8 +18,8 @@ # # Makefile.am - hplip automake input file # -# (c) 2004-2010 Copyright Hewlett-Packard Development Company, LP -# Author: David Suffield, Naga Samrat Chowdary Narla, +# (c) 2004-2015 Copyright Hewlett-Packard Development Company, LP +# Author: David Suffield, Naga Samrat Chowdary Narla, Sarbeswar Meher @@ -52,7 +52,6 @@ DIST_COMMON = $(am__configure_deps) $(am__dist_base_DATA_DIST) \ $(am__dist_hpfax_SCRIPTS_DIST) \ $(am__dist_hpijsfaxppd_DATA_DIST) \ $(am__dist_hplip_SCRIPTS_DIST) \ - $(am__dist_hplip_state_DATA_DIST) \ $(am__dist_images_128x128_DATA_DIST) \ $(am__dist_images_16x16_DATA_DIST) \ $(am__dist_images_24x24_DATA_DIST) \ @@ -75,8 +74,8 @@ DIST_COMMON = $(am__configure_deps) $(am__dist_base_DATA_DIST) \ $(am__dist_ui4_DATA_DIST) $(am__dist_ui_DATA_DIST) \ $(am__dist_www0_DATA_DIST) $(am__dist_www3_DATA_DIST) \ $(am__dist_www4_DATA_DIST) $(dist_hplip_Log_DATA) \ - $(dist_plugins4_SCRIPTS) $(dist_unrel_DATA) \ - $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(dist_hplip_state_DATA) $(dist_plugins4_SCRIPTS) \ + $(dist_unrel_DATA) $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/cups_drv.inc $(srcdir)/foomatic_drv.inc \ $(srcdir)/hplip-systray.desktop.in $(srcdir)/hplip.conf.in \ $(srcdir)/hplip.desktop.in $(srcdir)/hplip.list.in \ @@ -535,7 +534,8 @@ am__dist_cmd_SCRIPTS_DIST = align.py info.py print.py toolbox.py \ timedate.py firmware.py scan.py systray.py plugin.py \ linefeedcal.py pqdiag.py faxsetup.py devicesettings.py \ printsettings.py query.py pkservice.py wificonfig.py \ - check-plugin.py diagnose_plugin.py + check-plugin.py diagnose_plugin.py uninstall.py upgrade.py \ + config_usb_printer.py diagnose_queues.py am__dist_hpfax_SCRIPTS_DIST = fax/backend/hpfax.py am__dist_hplip_SCRIPTS_DIST = hpssd.py __init__.py hpdio.py am__dist_noinst_SCRIPTS_DIST = dat2drv.py install.py hplip-install \ @@ -605,7 +605,6 @@ am__dist_hpcupsfaxppd_DATA_DIST = fax/ppd/HP-Fax-hpcups.ppd.gz \ am__dist_hpijsfaxppd_DATA_DIST = fax/ppd/HP-Fax-hpijs.ppd.gz \ fax/ppd/HP-Fax2-hpijs.ppd.gz fax/ppd/HP-Fax3-hpijs.ppd.gz \ fax/ppd/HP-Fax4-hpijs.ppd.gz -am__dist_hplip_state_DATA_DIST = hplip.state am__dist_images_128x128_DATA_DIST = data/images/128x128/* am__dist_images_16x16_DATA_DIST = data/images/16x16/* am__dist_images_24x24_DATA_DIST = data/images/24x24/* @@ -931,6 +930,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz \ + ppd/hpijs/hp-laserjet_cp_1025nw-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz \ ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz \ @@ -973,7 +973,6 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz \ ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1027nw-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz \ @@ -1035,7 +1034,6 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1021-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz \ ppd/hpijs/hp-dj450-hpijs.ppd.gz \ @@ -1049,6 +1047,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6100-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz \ @@ -1107,6 +1106,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz \ + ppd/hpijs/hp-laserjet_cp_1025-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz \ @@ -1125,7 +1125,6 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1022-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz \ ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz \ @@ -1192,6 +1191,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-officejet-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6700-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz \ ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz \ @@ -1289,9 +1289,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1023-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz \ - ppd/hpijs/hp-officejet_series_500-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz \ @@ -1434,11 +1432,9 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1028nw-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz \ - ppd/hpijs/hp-laserjet_professional_p1102s-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz \ @@ -1497,6 +1493,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz \ ppd/hpijs/hp-cp1160-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6600-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz \ @@ -1900,13 +1897,10 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz \ ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz \ ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1021.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1022.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1023.ppd.gz \ + ppd/hpcups/hp-laserjet_cp_1025nw.ppd.gz \ ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz \ + ppd/hpcups/hp-laserjet_cp_1025.ppd.gz \ ppd/hpcups/hp-laserjet_cp1025.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1027nw.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1028nw.ppd.gz \ ppd/hpcups/hp-laserjet_m1005.ppd.gz \ ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz \ @@ -1977,7 +1971,6 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz \ - ppd/hpcups/hp-laserjet_professional_p1102s.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz \ @@ -2007,6 +2000,7 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpcups/hp-officejet_5600_series.ppd.gz \ ppd/hpcups/hp-officejet_6000_e609a.ppd.gz \ ppd/hpcups/hp-officejet_6000_e609n.ppd.gz \ + ppd/hpcups/hp-officejet_6100.ppd.gz \ ppd/hpcups/hp-officejet_6100_series.ppd.gz \ ppd/hpcups/hp-officejet_6150_series.ppd.gz \ ppd/hpcups/hp-officejet_6200_series.ppd.gz \ @@ -2015,6 +2009,8 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpcups/hp-officejet_6500_e709n.ppd.gz \ ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz \ ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz \ + ppd/hpcups/hp-officejet_6600.ppd.gz \ + ppd/hpcups/hp-officejet_6700.ppd.gz \ ppd/hpcups/hp-officejet_7000_e809a.ppd.gz \ ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz \ ppd/hpcups/hp-officejet_7100_series.ppd.gz \ @@ -2076,7 +2072,6 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ ppd/hpcups/hp-officejet_series_320.ppd.gz \ ppd/hpcups/hp-officejet_series_330.ppd.gz \ ppd/hpcups/hp-officejet_series_350.ppd.gz \ - ppd/hpcups/hp-officejet_series_500.ppd.gz \ ppd/hpcups/hp-officejet_series_520.ppd.gz \ ppd/hpcups/hp-officejet_series_570.ppd.gz \ ppd/hpcups/hp-officejet_series_580.ppd.gz \ @@ -2225,8 +2220,9 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-laserjet_4250-ps.ppd.gz \ am__dist_prnt_DATA_DIST = prnt/cups.py prnt/__init__.py prnt/ldl.py \ prnt/pcl.py prnt/colorcal.py am__dist_rules_DATA_DIST = data/rules/56-hpmud_support.rules \ - data/rules/86-hpmud_plugin.rules data/rules/40-hplip.rules \ - data/rules/55-hpmud.rules + data/rules/86-hpmud_plugin.rules \ + data/rules/56-hpmud_add_printer.rules \ + data/rules/40-hplip.rules data/rules/55-hpmud.rules am__dist_scan_DATA_DIST = scan/__init__.py scan/sane.py am__dist_ui_DATA_DIST = ui/alignform.py ui/colorcalform_base.py \ ui/colorcalform.py ui/coloradjform_base.py ui/coloradjform.py \ @@ -2261,7 +2257,8 @@ am__dist_ui_DATA_DIST = ui/alignform.py ui/colorcalform_base.py \ ui/pluginlicenseform_base.py ui/pluginlicenseform.py \ ui/align13form_base.py ui/align13form.py \ ui/firmwaredialog_base.py ui/firmwaredialog.py \ - ui/deviceuricombobox.py + ui/deviceuricombobox.py ui/upgradeform.py \ + ui/upgradeform_base.py am__dist_ui4_DATA_DIST = ui4/*.py am__dist_www0_DATA_DIST = $(wwwsrc)/index.html \ $(wwwsrc)/commandline.html $(wwwsrc)/copying.html \ @@ -2563,6 +2560,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz \ + ppd/hpijs/hp-laserjet_cp_1025nw-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz \ ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz \ @@ -2605,7 +2603,6 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz \ ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1027nw-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz \ @@ -2667,7 +2664,6 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1021-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz \ ppd/hpijs/hp-dj450-hpijs.ppd.gz \ @@ -2681,6 +2677,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6100-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz \ @@ -2739,6 +2736,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz \ + ppd/hpijs/hp-laserjet_cp_1025-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz \ @@ -2757,7 +2755,6 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1022-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz \ ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz \ @@ -2824,6 +2821,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-officejet-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6700-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz \ ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz \ @@ -2921,9 +2919,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1023-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz \ - ppd/hpijs/hp-officejet_series_500-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz \ @@ -3066,11 +3062,9 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1028nw-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz \ - ppd/hpijs/hp-laserjet_professional_p1102s-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz \ @@ -3129,6 +3123,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz \ ppd/hpijs/hp-cp1160-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6600-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz \ @@ -3742,13 +3737,10 @@ cups_ppd_printers = \ ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz \ ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz \ ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1021.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1022.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1023.ppd.gz \ + ppd/hpcups/hp-laserjet_cp_1025nw.ppd.gz \ ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz \ + ppd/hpcups/hp-laserjet_cp_1025.ppd.gz \ ppd/hpcups/hp-laserjet_cp1025.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1027nw.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1028nw.ppd.gz \ ppd/hpcups/hp-laserjet_m1005.ppd.gz \ ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz \ @@ -3819,7 +3811,6 @@ cups_ppd_printers = \ ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz \ - ppd/hpcups/hp-laserjet_professional_p1102s.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz \ @@ -3849,6 +3840,7 @@ cups_ppd_printers = \ ppd/hpcups/hp-officejet_5600_series.ppd.gz \ ppd/hpcups/hp-officejet_6000_e609a.ppd.gz \ ppd/hpcups/hp-officejet_6000_e609n.ppd.gz \ + ppd/hpcups/hp-officejet_6100.ppd.gz \ ppd/hpcups/hp-officejet_6100_series.ppd.gz \ ppd/hpcups/hp-officejet_6150_series.ppd.gz \ ppd/hpcups/hp-officejet_6200_series.ppd.gz \ @@ -3857,6 +3849,8 @@ cups_ppd_printers = \ ppd/hpcups/hp-officejet_6500_e709n.ppd.gz \ ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz \ ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz \ + ppd/hpcups/hp-officejet_6600.ppd.gz \ + ppd/hpcups/hp-officejet_6700.ppd.gz \ ppd/hpcups/hp-officejet_7000_e809a.ppd.gz \ ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz \ ppd/hpcups/hp-officejet_7100_series.ppd.gz \ @@ -3918,7 +3912,6 @@ cups_ppd_printers = \ ppd/hpcups/hp-officejet_series_320.ppd.gz \ ppd/hpcups/hp-officejet_series_330.ppd.gz \ ppd/hpcups/hp-officejet_series_350.ppd.gz \ - ppd/hpcups/hp-officejet_series_500.ppd.gz \ ppd/hpcups/hp-officejet_series_520.ppd.gz \ ppd/hpcups/hp-officejet_series_570.ppd.gz \ ppd/hpcups/hp-officejet_series_580.ppd.gz \ @@ -4093,7 +4086,7 @@ cups_drv = prnt/drv/hpcups.drv @HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@ scan/sane/common.c scan/sane/common.h scan/sane/soap.h scan/sane/soapht.h scan/sane/sanei_debug.h scan/sane/sanei.h \ @HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@ scan/sane/sanei_init_debug.c scan/sane/marvell.h scan/sane/marvelli.h scan/sane/marvell.c scan/sane/soapht.c scan/sane/soap.c \ @HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@ scan/sane/soaphti.h scan/sane/soapi.h scan/sane/xml.c scan/sane/xml.h scan/sane/ledm.h scan/sane/ledmi.h scan/sane/ledm.c \ -@HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@ scan/sane/bb_ledm.c scan/sane/http.h scan/sane/http.c +@HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@ scan/sane/bb_ledm.c scan/sane/http.h scan/sane/http.c @DARWIN_BUILD_FALSE@@HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@libsane_hpaio_la_LDFLAGS = -version-info 1:0:0 @DARWIN_BUILD_TRUE@@HPLIP_BUILD_TRUE@@SCAN_BUILD_TRUE@libsane_hpaio_la_LDFLAGS = -module -framework CoreFoundation -version-info 1:0:0 @@ -4129,6 +4122,7 @@ cups_drv = prnt/drv/hpcups.drv @HPLIP_BUILD_TRUE@rulesdir = /etc/udev/rules.d @HPLIP_BUILD_TRUE@dist_rules_DATA = data/rules/56-hpmud_support.rules \ @HPLIP_BUILD_TRUE@ data/rules/86-hpmud_plugin.rules \ +@HPLIP_BUILD_TRUE@ data/rules/56-hpmud_add_printer.rules \ @HPLIP_BUILD_TRUE@ $(am__append_2) $(am__append_3) @HPLIP_BUILD_TRUE@halpredir = /usr/share/hal/fdi/preprobe/10osvendor @HPLIP_BUILD_TRUE@dist_halpre_DATA = data/rules/20-hplip-devices.fdi @@ -4143,7 +4137,8 @@ cups_drv = prnt/drv/hpcups.drv # hplip.state @HPLIP_BUILD_TRUE@hplip_statedir = /var/lib/hp -@HPLIP_BUILD_TRUE@dist_hplip_state_DATA = hplip.state +@HPLIP_BUILD_TRUE@dist_hplip_state_DATA = +#dist_hplip_state_DATA = hplip.state # Log Files @HPLIP_BUILD_TRUE@hplip_Logdir = /var/log/hp @@ -4151,7 +4146,8 @@ cups_drv = prnt/drv/hpcups.drv @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@cmddir = $(hplipdir) @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@dist_cmd_SCRIPTS = align.py info.py print.py toolbox.py clean.py colorcal.py unload.py testpage.py makeuri.py check.py fab.py levels.py \ @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ sendfax.py setup.py makecopies.py probe.py timedate.py firmware.py scan.py systray.py plugin.py linefeedcal.py pqdiag.py \ -@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ faxsetup.py devicesettings.py printsettings.py query.py pkservice.py wificonfig.py check-plugin.py diagnose_plugin.py +@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ faxsetup.py devicesettings.py printsettings.py query.py pkservice.py wificonfig.py check-plugin.py diagnose_plugin.py uninstall.py \ +@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@ upgrade.py config_usb_printer.py diagnose_queues.py # base @@ -4287,7 +4283,7 @@ cups_drv = prnt/drv/hpcups.drv @FULL_BUILD_TRUE@@GUI_BUILD_TRUE@@HPLIP_BUILD_TRUE@@QT3_INSTALL_TRUE@ ui/scrollunload.py ui/scrollcopy.py ui/pluginform2.py ui/pluginform2_base.py ui/systemtray.py \ @FULL_BUILD_TRUE@@GUI_BUILD_TRUE@@HPLIP_BUILD_TRUE@@QT3_INSTALL_TRUE@ ui/ui_utils.py ui/jobstoragemixin.py ui/pluginlicenseform_base.py ui/pluginlicenseform.py \ @FULL_BUILD_TRUE@@GUI_BUILD_TRUE@@HPLIP_BUILD_TRUE@@QT3_INSTALL_TRUE@ ui/align13form_base.py ui/align13form.py ui/firmwaredialog_base.py ui/firmwaredialog.py \ -@FULL_BUILD_TRUE@@GUI_BUILD_TRUE@@HPLIP_BUILD_TRUE@@QT3_INSTALL_TRUE@ ui/deviceuricombobox.py +@FULL_BUILD_TRUE@@GUI_BUILD_TRUE@@HPLIP_BUILD_TRUE@@QT3_INSTALL_TRUE@ ui/deviceuricombobox.py ui/upgradeform.py ui/upgradeform_base.py #ui4 (qt4) @@ -205,13 +205,16 @@ try: elif align_type == ALIGN_TYPE_LIDIL_DJ_D1600: maint.AlignType14(d, tui.load_paper_prompt, type10and11and14Align, invalidPen2) - + elif align_type == ALIGN_TYPE_LEDM: maint.AlignType15(d, tui.load_paper_prompt, aioUI2) elif align_type == ALIGN_TYPE_LEDM_MANUAL: maint.AlignType16(d, tui.load_paper_prompt, enterAlignmentNumber) + elif align_type == ALIGN_TYPE_LEDM_FF_CC_0: + maint.AlignType17(d, tui.load_paper_prompt, aioUI2) + else: log.error("Invalid alignment type.") diff --git a/base/LedmWifi.py b/base/LedmWifi.py index db77337b5..4e7720976 100644 --- a/base/LedmWifi.py +++ b/base/LedmWifi.py @@ -296,9 +296,14 @@ def getVSACodes(dev, adapterName): if params is not None: try: severity= params['io:vsacodes-wifi:vsacode-dd:severity'] + except: + severity = "" + try: rule = params['io:vsacodes-wifi:vsacode-wifi:rulenumber'] - except KeyError, e: - log.error("Missing response key: %s" % str(e)) + # except KeyError, e: + # log.error("Missing response key: %s" % str(e)) + except: + rule = "" ret.append((rule, severity)) return ret @@ -362,22 +367,36 @@ def readXmlDataFromURI(dev,URI,xmlRootNode,xmlChildNode,timeout=5): params,code,elementCount ={},HTTP_ERROR,0 data = format_http_get(URI,0,"") - log.info(data) - dev.openLEDM() - dev.writeLEDM(data) + log.info(data) response = cStringIO.StringIO() - try: - while dev.readLEDM(1024, response, timeout): - pass - except Error: - dev.closeLEDM() - log.error("Unable to read LEDM Channel") - dev.closeEWS_LEDM() - strResp = str(response.getvalue()) + if dev.openLEDM() == -1: + dev.openEWS_LEDM() + dev.writeEWS_LEDM(data) + try: + while dev.readEWS_LEDM(1024, response, timeout): + pass + except Error: + dev.closeEWS_LEDM() + log.error("Unable to read EWS_LEDM Channel") + else: + dev.writeLEDM(data) + + #response = cStringIO.StringIO() + try: + while dev.readLEDM(1024, response, timeout): + pass + except Error: + dev.closeLEDM() + log.error("Unable to read LEDM Channel") + #dev.closeEWS_LEDM() + strResp = str(response.getvalue()) + #log.error(strResp) if strResp is not None: code = get_error_code(strResp) pos = strResp.find(xmlRootNode,0,len(strResp)) repstr = strResp[pos:].strip() + repstr = filter(lambda c: c not in "\r\t\n", repstr) # To remove formating characters from the received xml + repstr = repstr.rstrip('0') # To remove trailing zero from the received xml elementCount = repstr.count(xmlChildNode) try: params = utils.XMLToDictParser().parseXML(repstr) @@ -390,17 +409,30 @@ def readXmlDataFromURI(dev,URI,xmlRootNode,xmlChildNode,timeout=5): def writeXmlDataToURI(dev,URI,xml,timeout=5): code = HTTP_ERROR - data = format_http_put(URI,len(xml),xml) - dev.openLEDM() - dev.writeLEDM(data) + data = format_http_put(URI,len(xml),xml) response = cStringIO.StringIO() - try: - while dev.readLEDM(1000, response, timeout): - pass - except Error: - dev.closeLEDM() - log.error("Unable to read LEDM Channel") - dev.closeLEDM() + + if dev.openLEDM() == -1: + dev.openEWS_LEDM() + dev.writeEWS_LEDM(data) + try: + while dev.readEWS_LEDM(1000, response, timeout): + pass + except Error: + dev.closeEWS_LEDM() + log.error("Unable to read EWS_LEDM Channel") + + else: + dev.writeLEDM(data) + #response = cStringIO.StringIO() + try: + while dev.readLEDM(1000, response, timeout): + pass + except Error: + dev.closeLEDM() + log.error("Unable to read LEDM Channel") + + strResp = str(response.getvalue()) if strResp is not None: code = get_error_code(strResp) diff --git a/base/codes.py b/base/codes.py index 830c5e206..6b9356777 100644 --- a/base/codes.py +++ b/base/codes.py @@ -207,6 +207,9 @@ EVENT_SCAN_ADF_JAM = 2007 EVENT_SCAN_ADF_DOOR_OPEN = 2008 EVENT_SCAN_CANCEL = 2009 EVENT_SIZE_WARNING = 2010 +EVENT_SCAN_ADF_NO_DOCS = 2011 +EVENT_SCAN_ADF_MISPICK = 2012 +EVENT_SCAN_BUSY = 2013 #end # fax @@ -253,6 +256,11 @@ EVENT_ERROR_DEVICEOPEN_FAILED_ONE_DEVICE_ONLY = 5037 EVENT_ERROR_DEVICEOPEN_FAILED_DEV_NODE_MOVED = 5038 # end +# diagnosis tool codes +EVENT_ADD_PRINTQUEUE = 5501 +EVENT_DIAGNOSE_PRINTQUEUE = 5502 +#end + # pcard EVENT_START_PCARD_JOB = 6000 EVENT_END_PCARD_JOB = 6001 @@ -399,7 +407,7 @@ STATUS_TO_ERROR_STATE_MAP = { STATUS_DEVICE_UNSUPPORTED : ERROR_STATE_ERROR, STATUS_PRINTER_CARTRIDGE_MISSING : ERROR_STATE_ERROR, STATUS_PRINTER_CARTRIDGE_WRONG : ERROR_STATE_ERROR, - STATUS_PRINTER_PRINTHEAD_MISSING : ERROR_STATE_ERROR, + STATUS_PRINTER_PRINTHEAD_MISSING : ERROR_STATE_ERROR, # The following block are EVENTs because they are only # recieved as events from hpmud, hp backend, etc. # i.e., a device does not produce status codes in this range @@ -430,6 +438,9 @@ STATUS_TO_ERROR_STATE_MAP = { EVENT_SCAN_ADF_LOADED : ERROR_STATE_OK, EVENT_SCAN_CANCEL : ERROR_STATE_OK, EVENT_SIZE_WARNING : ERROR_STATE_WARNING, + EVENT_SCAN_ADF_NO_DOCS : ERROR_STATE_OK, + EVENT_SCAN_ADF_MISPICK : ERROR_STATE_WARNING, + EVENT_SCAN_BUSY : ERROR_STATE_SCANNING, # Fax EVENT_FAX_DIALING : ERROR_STATE_BUSY, EVENT_FAX_CONNECTING : ERROR_STATE_BUSY, @@ -603,6 +614,7 @@ ALIGN_TYPE_AIO = 13 # AiO Non-LIDIL (OJ J4500/J4600) ALIGN_TYPE_LIDIL_DJ_D1600 = 14 ALIGN_TYPE_LEDM = 15 ALIGN_TYPE_LEDM_MANUAL = 16 +ALIGN_TYPE_LEDM_FF_CC_0 = 17 # clean-types CLEAN_TYPE_UNSUPPORTED = -1 @@ -634,6 +646,7 @@ STATUS_TYPE_LJ_XML = 6 STATUS_TYPE_PJL = 8 STATUS_TYPE_PML_AND_PJL = 9 # Same as types 3(tbx)+8(hp:) STATUS_TYPE_LEDM = 10 # Low-end Data Model +STATUS_TYPE_LEDM_FF_CC_0 = 11 #Low-end Data Model over FF/CC/0 USB channel # status-battery-check STATUS_BATTERY_CHECK_NONE = 0 @@ -688,17 +701,11 @@ SCAN_TYPE_SCL_DUPLEX = 6 SCAN_TYPE_LEDM = 7 SCAN_TYPE_MARVEL2 = 8 -# scan-styles -SCAN_STYLE_NONE = 0 -SCAN_STYLE_FLATBED = 1 -SCAN_STYLE_SCROLLFED = 2 -SCAN_STYLE_BOTH = 3 - # scan-src -SCAN_SRC_NA = 0 -SCAN_SRC_ADF = 1 -SCAN_SRC_FLATBED = 2 -SCAN_SRC_BOTH = 3 +SCAN_SRC_NONE = 0x0 +SCAN_SRC_FLATBED = 0x1 +SCAN_SRC_SCROLLFED = 0x2 +SCAN_SRC_CAMERA = 0x4 # copy-types COPY_TYPE_NOT_SUPPORTED = -1 @@ -781,6 +788,12 @@ PLUGIN_NONE = 0 PLUGIN_REQUIRED = 1 PLUGIN_OPTIONAL = 2 + +#Plugin installation status values +PLUGIN_VERSION_MISMATCH = '-1' +PLUGIN_NOT_INSTALLED = '0' +PLUGIN_INSTALLED = '1' + # plugin-reason PLUGIN_REASON_NONE = 0x0 PLUGIN_REASON_PRINTING_SUPPORT = 0x1 @@ -862,3 +875,11 @@ SUPPORT_RELEASED = 1 #USB-Autoplugin-installation EVENT_AUTO_CONFIGURE = 900 + +# Queue diagnosis codes +QUEUES_CONFIG_ERROR = 1 +QUEUES_PAUSED = 2 +QUEUES_INCORRECT_PPD = 3 +QUEUES_USER_GROUPS_ERROR = 4 +QUEUES_MSG_SENDING = 5 + diff --git a/base/device.py b/base/device.py index c03353998..234fad4c1 100644 --- a/base/device.py +++ b/base/device.py @@ -96,7 +96,7 @@ usb_pat = re.compile(r"""(\d+):(\d+)""", re.IGNORECASE) ### **********Lambda Function UniStar for checking type of arguments to constructor of class event******************************* -UniStr = lambda title: isinstance(title, str) and utils.xrstrip(title, '\x00')[:128] or utils.xrstrip(title, '\x00')[:128].encode('utf-8') +UniStr = lambda title: isinstance(title, str) and utils.xrstrip(title, '\x00')[:128] or utils.xrstrip(title, '\x00')[:128].encode('utf-8') # @@ -1303,7 +1303,7 @@ class Device(object): def openEWS_LEDM(self): return self.__openChannel(hpmudext.HPMUD_S_EWS_LEDM_CHANNEL) - + def openLEDM(self): return self.__openChannel(hpmudext.HPMUD_S_LEDM_SCAN) @@ -1330,7 +1330,7 @@ class Device(object): def closeEWS_LEDM(self): return self.__closeChannel(hpmudext.HPMUD_S_EWS_LEDM_CHANNEL) - + def closeLEDM(self): return self.__closeChannel(hpmudext.HPMUD_S_LEDM_SCAN) @@ -1714,7 +1714,11 @@ class Device(object): elif status_type == STATUS_TYPE_LEDM: log.debug("Type 10: LEDM") - status_block = status.StatusType10(self) + status_block = status.StatusType10(self.getEWSUrl_LEDM) + + elif status_type == STATUS_TYPE_LEDM_FF_CC_0: + log.debug("Type 11: LEDM_FF_CC_0") + status_block = status.StatusType10(self.getUrl_LEDM) else: log.error("Unimplemented status type: %d" % status_type) @@ -2466,12 +2470,12 @@ class Device(object): if footer: return opener.open_hp(url2, data, footer) else: - return opener.open_hp(url2, data) + return opener.open_hp(url2, data) except Error: log.debug("Status read failed: %s" % url2) finally: self.closeEWS_LEDM() - + def getUrl_LEDM(self, url, stream, footer=""): try: url2 = "%s&loc=%s" % (self.device_uri.replace('hpfax:', 'hp:'), url) @@ -2481,7 +2485,7 @@ class Device(object): if footer: return opener.open_hp(url2, data, footer) else: - return opener.open_hp(url2, data) + return opener.open_hp(url2, data) except Error: log.debug("Status read failed: %s" % url2) @@ -2501,7 +2505,7 @@ class Device(object): return data #-------------------------For LEDM SOAP PROTOCOL(FAX) Devices----------------------------------------------------------------------# - + def FetchEWS_LEDMUrl(self, url, footer=""): data_fp = cStringIO.StringIO() if footer: @@ -2521,19 +2525,25 @@ class Device(object): log.error("Unable To read the XML data from device") return "" xmlDict = utils.XMLToDictParser().parseXML(data) - return str(xmlDict[attribute]) + try: + return str(xmlDict[attribute]) + except: + return str("") #---------------------------------------------------------------------------------------------------# - + def readAttributeFromXml(self,uri,attribute): stream = cStringIO.StringIO() - data = self.FetchLEDMUrl(uri) + data = self.FetchLEDMUrl(uri) if not data: log.error("Unable To read the XML data from device") return "" - xmlDict = utils.XMLToDictParser().parseXML(data) - return str(xmlDict[attribute]) - + xmlDict = utils.XMLToDictParser().parseXML(data) + try: + return str(xmlDict[attribute]) + except: + return str("") + def downloadFirmware(self, usb_bus_id=None, usb_device_id=None): # Note: IDs not currently used ok = False filename = os.path.join(prop.data_dir, "firmware", self.model.lower() + '.fw.gz') @@ -2630,7 +2640,7 @@ class LocalOpenerEWS_LEDM(urllib.URLopener): reply = xStringIO() - while dev.readEWS_LEDM(8080, reply, timeout=3): + while dev.readEWS_LEDM(512, reply, timeout=3): pass reply.seek(0) @@ -2656,11 +2666,11 @@ class LocalOpener_LEDM(urllib.URLopener): reply = xStringIO() - while dev.readLEDM(8080, reply, timeout=3): + while dev.readLEDM(512, reply, timeout=3): pass reply.seek(0) return reply.getvalue() - + @@ -268,16 +268,22 @@ prop.hpijs_build = to_bool(sys_conf.get('configure', 'hpijs-install', '0')) # Spinner, ala Gentoo Portage spinner = "\|/-\|/-" spinpos = 0 +enable_spinner = True + +def change_spinner_state(enable =True): + global enable_spinner + enable_spinner = enable def update_spinner(): - global spinner, spinpos - if not log.is_debug() and sys.stdout.isatty(): + global spinner, spinpos, enable_spinner + if enable_spinner and not log.is_debug() and sys.stdout.isatty(): sys.stdout.write("\b" + spinner[spinpos]) spinpos=(spinpos + 1) % 8 sys.stdout.flush() def cleanup_spinner(): - if not log.is_debug() and sys.stdout.isatty(): + global enable_spinner + if enable_spinner and not log.is_debug() and sys.stdout.isatty(): sys.stdout.write("\b \b") sys.stdout.flush() diff --git a/base/maint.py b/base/maint.py index 487247252..4b8193547 100644 --- a/base/maint.py +++ b/base/maint.py @@ -33,12 +33,12 @@ def AlignType1(dev, loadpaper_ui): # Auto VIP (using embedded PML) ok = loadpaper_ui() if ok: dev.writeEmbeddedPML(pml.OID_AUTO_ALIGNMENT, - pml.AUTO_ALIGNMENT, style=0, + pml.AUTO_ALIGNMENT, style=0, direct=True) dev.closePrint() return ok - + def AlignType1PML(dev, loadpaper_ui): # Auto VIP (using PML) ok = loadpaper_ui() if ok: @@ -404,7 +404,7 @@ def alignType10SetPattern(dev): log.debug("Pattern=%d" % pattern) return pattern - + def alignType10Phase1(dev): dev.writeEmbeddedPML(pml.OID_PRINT_INTERNAL_PAGE, @@ -422,7 +422,7 @@ def alignType10Phase2(dev, values, pattern): break p = ''.join([p, pcl.ESC, '*o5W\x1a', chr(i), '\x00', chr(pattern), chr(x), '\n']) - p = ''.join([p, pcl.UEL]) + p = ''.join([p, pcl.UEL]) dev.printData(p) dev.closePrint() @@ -490,7 +490,7 @@ def align10and11and14Controls(pattern, align_type): 'F' : (True, 9), 'G' : (True, 9), 'H' : (True, 9), - 'I' : (True, 9),} + 'I' : (True, 9),} else: if pattern == 1: @@ -530,7 +530,7 @@ def AlignType11(dev, loadpaper_ui, align_ui, invalidpen_ui): if pattern is None: invalidpen_ui() return - + state = 0 while state != -1: if state == 0: @@ -570,9 +570,9 @@ def alignType11SetPattern(dev): elif dev.pen_config == AGENT_CONFIG_PHOTO_ONLY: return None - log.debug("Pattern=%d" % pattern) + log.debug("Pattern=%d" % pattern) return pattern - + def alignType11Phase1(dev): dev.printData(ldl.buildResetPacket()) @@ -622,85 +622,101 @@ def alignType13Phase1(dev): calibrationSession = 1 -def dataModelHelper(dev, ui2): - data = status.StatusType10FetchUrl(dev, "/Calibration/State") +def dataModelHelper(dev, func, ui2): + data = status.StatusType10FetchUrl(func, "/Calibration/State") if not data: - data = status.StatusType10FetchUrl(dev, "/Calibration/State") + data = status.StatusType10FetchUrl(func, "/Calibration/State") if not data: log.debug("Unable to retrieve calibration state") + dev.close() return 0 if "ParmsRequested" in data: log.error("Restart device and start alignment") - return 1 + dev.close() + return 1 if "404 Not Found" in data: log.error("Device may not support Alignment") + dev.close() return 1 if "Printing<" in data: log.warn("Previous alignment job not completed") + dev.close() return 1 - data = status.StatusType10FetchUrl(dev, "/DevMgmt/ConsumableConfigDyn.xml") + data = status.StatusType10FetchUrl(func, "/DevMgmt/ConsumableConfigDyn.xml") if "AlignmentMode" not in data: log.error("Device may not support Alignment") - return 1 + dev.close() + return 1 if "automatic" in data: log.debug("Device supports automatic calibration") - status.StatusType10FetchUrl(dev, "/Calibration/Session", "<cal:CalibrationState xmlns:cal=\\\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\\\" xmlns:dd=\\\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\\\">Printing</cal:CalibrationState>") + status.StatusType10FetchUrl(func, "/Calibration/Session", "<cal:CalibrationState xmlns:cal=\\\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\\\" xmlns:dd=\\\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\\\">Printing</cal:CalibrationState>") + dev.close() return 0 if "semiAutomatic" in data: log.debug("Device supports semiAutomatic calibration") - status.StatusType10FetchUrl(dev, "/Calibration/Session", "<cal:CalibrationState xmlns:cal=\\\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\\\" xmlns:dd=\\\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\\\">Printing</cal:CalibrationState>") + status.StatusType10FetchUrl(func, "/Calibration/Session", "<cal:CalibrationState xmlns:cal=\\\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\\\" xmlns:dd=\\\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\\\">Printing</cal:CalibrationState>") + dev.close() return ui2() if "manual" in data: log.debug("Device supports manual calibration") - data = status.StatusType10FetchUrl(dev, "/Calibration/Session", "<cal:CalibrationState xmlns:cal=\\\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\\\" xmlns:dd=\\\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\\\">Printing</cal:CalibrationState>") + data = status.StatusType10FetchUrl(func, "/Calibration/Session", "<cal:CalibrationState xmlns:cal=\\\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\\\" xmlns:dd=\\\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\\\">Printing</cal:CalibrationState>") import string data = string.split(data, "/Jobs")[1] data = string.split(data, "\r\n")[0] data = "/Jobs" + data - data = status.StatusType10FetchUrl(dev, data) + data = status.StatusType10FetchUrl(func, data) data = string.split(data, "Session/")[1] data = string.split(data, "<")[0] data = "/Calibration/Session/" + data + "/ManualSelectedPatterns.xml" global calibrationSession - calibrationSession = data - + calibrationSession = data + dev.close() return 0 def AlignType16Manual(dev, a, b, c, d, e, f, g, h, i): log.debug("a=%s b=%s c=%s d=%s e=%s f=%s g=%s h=%s i=%s" % (a, b, c, d, e, f, g, h, i )) - data = status.StatusType10FetchUrl(dev, "/Calibration/State") - + data = status.StatusType10FetchUrl(func, "/Calibration/State") + if not data: return 0 while "ParmsRequested" not in data: if "CalibrationValid" in data: return - data = status.StatusType10FetchUrl(dev, "/Calibration/State") + data = status.StatusType10FetchUrl(func, "/Calibration/State") data = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- THIS DATA SUBJECT TO DISCLAIMER(S) INCLUDED WITH THE PRODUCT OF ORIGIN. -->\n<ManualSelectedPatterns xmlns=\"http://www.hp.com/schemas/imaging/con/cnx/markingagentcalibration/2009/04/08\" xmlns:locid=\"http://www.hp.com/schemas/imaging/con/ledm/localizationids/2007/10/31/\" xmlns:psdyn=\"http://www.hp.com/schemas/imaging/con/ledm/productstatdyn/2007/10/31\"><SelectedPattern><Identifier><Id>1</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>2</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>3</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>4</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>5</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>6</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>7</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>8</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern><SelectedPattern><Identifier><Id>9</Id></Identifier><Choice><Identifier><Id>%s</Id></Identifier></Choice></SelectedPattern></ManualSelectedPattern>" % ( a, b, c, d, e, f, g, h, i ) data = "PUT %s HTTP/1.1\r\nHost: localhost\r\nUser-Agent: hp\r\nAccept: text/plain\r\nAccept-Language: en-us,en\r\nAccept-Charset:utf-8\r\nContent-Type: text/xml\r\nContent-Length: %s\r\n\r\n" % ( calibrationSession, len(data)) + data - data = status.StatusType10FetchUrl(dev, calibrationSession, data) + data = status.StatusType10FetchUrl(func, calibrationSession, data) def AlignType15(dev, loadpaper_ui, ui2): if not loadpaper_ui(): return - return dataModelHelper(dev, ui2) + return dataModelHelper(dev, dev.getEWSUrl_LEDM, ui2) def AlignType15Phase1(dev, ui2): - return dataModelHelper(dev, ui2) + return dataModelHelper(dev, dev.getEWSUrl_LEDM, ui2) + +#AlignType 17 is LEDM via FF/CC/0 USB channel +def AlignType17(dev, loadpaper_ui, ui2): + if not loadpaper_ui(): + return + return dataModelHelper(dev, dev.getUrl_LEDM, ui2) + +def AlignType17Phase1(dev, ui2): + return dataModelHelper(dev, dev.getUrl_LEDM, ui2) def AlignType16(dev, loadpaper_ui, align_ui): if not loadpaper_ui(): return - dataModelHelper(dev, align_ui) + dataModelHelper(dev, dev.getEWSUrl_LEDM, align_ui) state, a, b, c, d, e, f, g, h, i = 0, 6, 6, 3, 3, 6, 6, 6, 6, 6 ok = False while state != -1: @@ -773,7 +789,7 @@ def AlignType14(dev, loadpaper_ui, align_ui, invalidpen_ui): if pattern is None: invalidpen_ui() return - + state = 0 while state != -1: if state == 0: @@ -813,9 +829,9 @@ def alignType14SetPattern(dev): elif dev.pen_config == AGENT_CONFIG_PHOTO_ONLY: return None - log.debug("Pattern=%d" % pattern) + log.debug("Pattern=%d" % pattern) return pattern - + def alignType14Phase1(dev): dev.printData(ldl.buildResetPacket()) @@ -1227,8 +1243,8 @@ def alignType8Phase2(dev, num_inks, a, b, c, d): # 450 dev.printData(s) dev.closePrint() - - + + def AlignType12(dev, loadpaper_ui): if loadpaper_ui(): dev.setPML(pml.OID_PRINT_INTERNAL_PAGE, pml.PRINT_INTERNAL_PAGE_ALIGNMENT_PAGE) @@ -1603,7 +1619,7 @@ def colorCalType4(dev, loadpaper_ui, colorcal_ui, wait_ui): def colorCalType4Phase1(dev): dev.setPML(pml.OID_PRINT_INTERNAL_PAGE, pml.PRINT_INTERNAL_PAGE_COLOR_CAL) - + dev.closePML() @@ -1637,29 +1653,29 @@ def colorCalType4Phase2(dev, values): dev.setPML(pml.OID_COLOR_CALIBRATION_ARRAY_1, kadj) - + dev.setPML(pml.OID_COLOR_CALIBRATION_ARRAY_2, Cadj) - + dev.setPML(pml.OID_COLOR_CALIBRATION_ARRAY_3, Madj) - + dev.setPML(pml.OID_COLOR_CALIBRATION_ARRAY_4, Yadj) - + dev.setPML(pml.OID_COLOR_CALIBRATION_ARRAY_5, cadj) - + dev.setPML(pml.OID_COLOR_CALIBRATION_ARRAY_6, madj) - + dev.closePML() def colorCalType4Phase3(dev): dev.setPML(pml.OID_PRINT_INTERNAL_PAGE, pml.PRINT_INTERNAL_PAGE_COLOR_PALETTE_CMYK_PAGE) - + dev.closePML() @@ -1668,32 +1684,32 @@ def colorCalType5(dev, loadpaper_ui): dev.printData("""\x1b%-12345X@PJL ENTER LANGUAGE=PCL3GUI\n\x1bE\x1b%Puifp.multi_button_push 20;\nudw.quit;\x1b*rC\x1bE\x1b%-12345X""") dev.closePrint() - + def colorCalType6(dev, loadpaper_ui): if loadpaper_ui(): dev.setPML(pml.OID_PRINT_INTERNAL_PAGE, pml.PRINT_INTERNAL_PAGE_COLOR_CAL) dev.closePML() - + def colorCalType7(dev, loadpaper_ui): if loadpaper_ui(): dev.setPML(pml.OID_PRINT_INTERNAL_PAGE, pml.PRINT_INTERNAL_PAGE_AUTOMATIC_COLOR_CALIBRATION) dev.closePML() -# ********************** LF Cal ********************** - +# ********************** LF Cal ********************** + def linefeedCalType1(dev, loadpaper_ui): if loadpaper_ui(): dev.printData("""\x1b%-12345X@PJL ENTER LANGUAGE=PCL3GUI\n\x1bE\x1b%Puifp.multi_button_push 3;\nudw.quit;\x1b*rC\x1bE\x1b%-12345X""") dev.closePrint() - + def linefeedCalType2(dev, loadpaper_ui): if loadpaper_ui(): dev.setPML(pml.OID_PRINT_INTERNAL_PAGE, pml.PRINT_INTERNAL_PAGE_LINEFEED_CALIBRATION) dev.closePML() -# ********************** PQ Diag ********************** - +# ********************** PQ Diag ********************** + def printQualityDiagType1(dev, loadpaper_ui): if loadpaper_ui(): dev.printData("""\x1b%-12345X@PJL ENTER LANGUAGE=PCL3GUI\n\x1bE\x1b%Puifp.multi_button_push 14;\nudw.quit;\x1b*rC\x1bE\x1b%-12345X""") diff --git a/base/models.py b/base/models.py index ff66417ec..87b88fec9 100644 --- a/base/models.py +++ b/base/models.py @@ -105,6 +105,7 @@ TECH_CLASSES = [ "Copperhead", "Ampere", "Python11", + "Saipan", ] TECH_CLASSES.sort() @@ -159,6 +160,7 @@ TECH_CLASS_PDLS = { "Mimas" : 'pcl3', "StingrayOJ" : 'pcl3', "Copperhead" : 'pcl3', + "Copperhead12" : 'pcl3', "Ampere" : 'pcl3' } @@ -306,7 +308,6 @@ class ModelData: 'power-settings': TYPE_INT, 'pq-diag-type' : TYPE_INT, 'r-type' : TYPE_INT, - 'scan-style' : TYPE_INT, 'scan-type' : TYPE_INT, 'scan-src' : TYPE_INT, #'scan-duplex' : TYPE_BOOL, diff --git a/base/module.py b/base/module.py index 8087cf29a..254def898 100644 --- a/base/module.py +++ b/base/module.py @@ -444,7 +444,7 @@ class Module(object): log.info(log.bold("%s ver. %s" % (self.title, self.version))) log.info("") - log.info("Copyright (c) 2001-9 Hewlett-Packard Development Company, LP") + log.info("Copyright (c) 2001-14 Hewlett-Packard Development Company, LP") log.info("This software comes with ABSOLUTELY NO WARRANTY.") log.info("This is free software, and you are welcome to distribute it") log.info("under certain conditions. See COPYING file for more details.") diff --git a/base/pkit.py b/base/pkit.py index fedb440db..06e98dab3 100644 --- a/base/pkit.py +++ b/base/pkit.py @@ -435,7 +435,8 @@ def copyPluginFiles(src_dir): sys_state.set('plugin', "installed", '1') log.debug("Updating hplip.conf - eula = 1") sys_state.set('plugin', "eula", '1') - + plugin_version = sys_conf.get('hplip', 'version', '0.0.0') + sys_state.set('plugin','version', plugin_version) return True diff --git a/base/status.py b/base/status.py index a18a53e16..d0cd60563 100644 --- a/base/status.py +++ b/base/status.py @@ -1490,7 +1490,7 @@ def clean(data): if data[0] is not '<': size = -1 temp = "" - while size: + while size: index = data.find('\r\n') size = int(data[0:index+1], 16) temp = temp + data[index+2:index+2+size] @@ -1498,19 +1498,21 @@ def clean(data): data = temp return data -def StatusType10FetchUrl(dev, url, footer=""): +def StatusType10FetchUrl(func, url, footer=""): data_fp = cStringIO.StringIO() if footer: - data = dev.getEWSUrl_LEDM(url, data_fp, footer) + #data = dev.getEWSUrl_LEDM(url, data_fp, footer) + data = func(url, data_fp, footer) else: - data = dev.getEWSUrl_LEDM(url, data_fp) + #data = dev.getEWSUrl_LEDM(url, data_fp) + data = func(url, data_fp) if data: data = data.split('\r\n\r\n', 1)[1] if data: data = clean(data) return data -def StatusType10(dev): # Low End Data Model +def StatusType10(func): # Low End Data Model status_block = { 'revision' : STATUS_REV_UNKNOWN, 'agents' : [], 'top-door' : TOP_DOOR_NOT_PRESENT, @@ -1528,7 +1530,7 @@ def StatusType10(dev): # Low End Data Model return status_block # Get the dynamic consumables configuration - data = StatusType10FetchUrl(dev, "/DevMgmt/ConsumableConfigDyn.xml") + data = StatusType10FetchUrl(func, "/DevMgmt/ConsumableConfigDyn.xml") if not data: return status_block data = data.replace("ccdyn:", "").replace("dd:", "") @@ -1562,7 +1564,7 @@ def StatusType10(dev): # Low End Data Model ink_level = 100 log.debug("type '%s' state '%s' ink_type '%s' ink_level %d" % (type, state, ink_type, ink_level)) - + entry = { 'kind' : element_type10_xlate.get(type, AGENT_KIND_NONE), 'type' : pen_type10_xlate.get(ink_type, AGENT_TYPE_NONE), 'health' : pen_health10_xlate.get(state, AGENT_HEALTH_OK), @@ -1579,7 +1581,7 @@ def StatusType10(dev): # Low End Data Model status_block['agents'] = agents # Get the media handling configuration - data = StatusType10FetchUrl(dev, "/DevMgmt/MediaHandlingDyn.xml") + data = StatusType10FetchUrl(func, "/DevMgmt/MediaHandlingDyn.xml") if not data: return status_block data = data.replace("mhdyn:", "").replace("dd:", "") @@ -1613,7 +1615,7 @@ def StatusType10(dev): # Low End Data Model status_block['duplexer'] = DUPLEXER_DOOR_CLOSED # Get the product status - data = StatusType10FetchUrl(dev, "/DevMgmt/ProductStatusDyn.xml") + data = StatusType10FetchUrl(func, "/DevMgmt/ProductStatusDyn.xml") if not data: return status_block data = data.replace("psdyn:", "").replace("locid:", "") diff --git a/base/strings.py b/base/strings.py index b858fea49..83fdb463e 100644 --- a/base/strings.py +++ b/base/strings.py @@ -135,6 +135,9 @@ class StringTable: '2008' : (self.__tr('Scanner automatic document feeder door opened'), ''), '2009' : (self.__tr('Scan job cancelled'), ''), '2010' : (self.__tr('Check scan image size requirements'), ''), + '2011' : (self.__tr('Scanner ADF empty'), ''), + '2012' : (self.__tr('Scanner ADF mispick'), ''), + '2013' : (self.__tr('Scanner busy'), ''), '3000' : (self.__tr('Fax job started'), ''), '3001' : (self.__tr('Fax job complete'), ''), '3002' : (self.__tr('Fax job failed'), '%try_again%'), @@ -158,6 +161,7 @@ class StringTable: '5026' : (self.__tr("Device status not available"), ''), '5031' : ('%5021%', ''), '5034' : (self.__tr('Device does not support requested operation'), '%try_again%'), + '5501' : (self.__tr('Device added'), ''), '6000' : (self.__tr('Photocard unload started'), ''), '6001' : (self.__tr('Photocard unload ended'), ''), '6002' : (self.__tr('Photocard unload failed'), self.__tr('Make sure photocard is inserted properly and try again')), diff --git a/base/utils.py b/base/utils.py index b31c7fc74..ae22c5c86 100644 --- a/base/utils.py +++ b/base/utils.py @@ -45,6 +45,7 @@ import xml.parsers.expat as expat import getpass import locale import htmlentitydefs +import urllib try: import platform @@ -545,6 +546,11 @@ class UserSettings(object): # Note: Deprecated after 2.8.8 in Qt4 (see ui4/ui_ut self.cmd_copy = user_conf.get('commands', 'cpy', self.cmd_copy) self.cmd_fax = user_conf.get('commands', 'fax', self.cmd_fax) self.cmd_fab = user_conf.get('commands', 'fab', self.cmd_fab) + + self.upgrade_notify= to_bool(user_conf.get('upgrade', 'notify_upgrade', '0')) + self.upgrade_last_update_time = int(user_conf.get('upgrade','last_upgraded_time', '0')) + self.upgrade_pending_update_time =int(user_conf.get('upgrade', 'pending_upgrade_time', '0')) + self.latest_available_version=str(user_conf.get('upgrade', 'latest_available_version','')) self.debug() def debug(self): @@ -557,6 +563,10 @@ class UserSettings(object): # Note: Deprecated after 2.8.8 in Qt4 (see ui4/ui_ut log.debug("Auto refresh: %s" % self.auto_refresh) log.debug("Auto refresh rate: %s" % self.auto_refresh_rate) log.debug("Auto refresh type: %s" % self.auto_refresh_type) + log.debug("Upgrade notification:%d" %self.upgrade_notify) + log.debug("Last Installed time:%d" %self.upgrade_last_update_time) + log.debug("Next scheduled installation time:%d" % self.upgrade_pending_update_time) + def save(self): log.debug("Saving user settings...") @@ -568,6 +578,11 @@ class UserSettings(object): # Note: Deprecated after 2.8.8 in Qt4 (see ui4/ui_ut user_conf.set('refresh', 'enable',self.auto_refresh) user_conf.set('refresh', 'rate', self.auto_refresh_rate) user_conf.set('refresh', 'type', self.auto_refresh_type) + user_conf.set('upgrade', 'notify_upgrade', self.upgrade_notify) + user_conf.set('upgrade','last_upgraded_time', self.upgrade_last_update_time) + user_conf.set('upgrade', 'pending_upgrade_time', self.upgrade_pending_update_time) + user_conf.set('upgrade', 'latest_available_version', self.latest_available_version) + self.debug() @@ -1034,7 +1049,7 @@ def getEndian(): def get_password(): return getpass.getpass("Enter password: ") -def get_password_ui(): +def get_password_ui(pswd_msg=''): fp = open("/etc/hp/hplip.conf", "r") qt = "qt3" for line in fp: @@ -1043,13 +1058,19 @@ def get_password_ui(): fp.close() if qt is "qt4": from ui4.setupdialog import showPasswordUI - username, password = showPasswordUI("Your HP Device requires to install HP proprietary plugin\nPlease enter root/superuser password to continue", "root", False) + if pswd_msg == '': + username, password = showPasswordUI("Your HP Device requires to install HP proprietary plugin\nPlease enter root/superuser password to continue", "root", False) + else: + username, password = showPasswordUI(pswd_msg, "root", False) if qt is "qt3": from ui.setupform import showPasswordUI - username, password = showPasswordUI("Your HP Device requires to install HP proprietary plugin\nPlease enter root/superuser password to continue", "root", False) + if pswd_msg == '': + username, password = showPasswordUI("Your HP Device requires to install HP proprietary plugin\nPlease enter root/superuser password to continue", "root", False) + else: + username, password = showPasswordUI(pswd_msg, "root", False) return password -def run(cmd, log_output=True, password_func=get_password, timeout=1, spinner=True): +def run(cmd, log_output=True, password_func=get_password, timeout=1, spinner=True, pswd_msg=''): output = cStringIO.StringIO() try: @@ -1072,7 +1093,7 @@ def run(cmd, log_output=True, password_func=get_password, timeout=1, spinner=Tru if i == 0: # Password: if password_func is not None: if password_func == "get_password_ui": - child.sendline(get_password_ui()) + child.sendline(get_password_ui(pswd_msg)) else: child.sendline(password_func()) else: @@ -1585,7 +1606,7 @@ encoding: utf8 log.info("contact the HPLIP Team.") log.info(".SH COPYRIGHT") - log.info("Copyright (c) 2011-14 Hewlett-Packard Development Company, L.P.") + log.info("Copyright (c) 2001-14 Hewlett-Packard Development Company, L.P.") log.info(".LP") log.info("This software comes with ABSOLUTELY NO WARRANTY.") log.info("This is free software, and you are welcome to distribute it") @@ -1604,7 +1625,7 @@ def log_title(program_name, version, show_ver=True): # TODO: Move to base/module log.info(log.bold("%s ver. %s" % (program_name, version))) log.info("") - log.info("Copyright (c) 2011-14 Hewlett-Packard Development Company, LP") + log.info("Copyright (c) 2001-14 Hewlett-Packard Development Company, LP") log.info("This software comes with ABSOLUTELY NO WARRANTY.") log.info("This is free software, and you are welcome to distribute it") log.info("under certain conditions. See COPYING file for more details.") @@ -1737,6 +1758,103 @@ def Is_Process_Running(process_name): print >>sys.stderr, "Execution failed:", e return False, None +#return tye: strings +#Return values. +# None --> on error. +# "terminal name"-->success +def get_terminal(): + terminal_list=['gnome-terminal', 'konsole','x-terminal-emulator', 'xterm', 'gtkterm'] + cnt = 0 + terminal_cmd = None + while cnt < len(terminal_list): + if which(terminal_list[cnt]): + terminal_cmd = terminal_list[cnt]+" -e " + log.debug("Available Terminal = %s " %terminal_cmd) + break + + return terminal_cmd + +#Return Type: bool +# Return values: +# True --> if it is older version +# False --> if it is same or later version. + +def Is_HPLIP_older_version(installed_version, available_version): + + if available_version == "" or available_version == None or installed_version == "" or installed_version == None: + log.debug("available_version is ''") + return False + + installed_array=installed_version.split('.') + available_array=available_version.split('.') + + log.debug("HPLIP Installed_version=%s Available_version=%s"%(installed_version,available_version)) + cnt = 0 + Is_older = False + while cnt <len(installed_array) and cnt <len(available_array): + if(int(installed_array[cnt]) < int(available_array[cnt])): + Is_older = True + break + elif(int(installed_array[cnt]) > int(available_array[cnt])): + log.debug("Already new verison is installed") + return False + cnt += 1 + + # To check internal version is installed. + if Is_older is False and len(installed_array) >len(available_array): + Is_older = True + + return Is_older + + +def downLoad_status(count, blockSize, totalSize): + percent = int(count*blockSize*100/totalSize) + if count != 0: + sys.stdout.write("\b\b\b") + sys.stdout.write("%s" %(log.color("%2d%%"%percent, 'bold'))) + sys.stdout.flush() + + +def download_from_network(weburl, outputFile = None, useURLLIB=False): + result =False + + if weburl is "" or weburl is None: + log.error("URL is empty") + return result, "" + + if outputFile is None: + fp, outputFile = make_temp_file() + + try: + if useURLLIB is False: + wget = which("wget") + if wget: + wget = os.path.join(wget, "wget") + status, output = run("%s --cache=off --timeout=60 --output-document=%s %s" %(wget, outputFile, weburl)) + if status: + log.error("Failed to connect to HPLIP site. Error code = %d" %status) + return False, "" + else: + useURLLIB = True + + if useURLLIB: + sys.stdout.write("Download in progress...") + urllib.urlretrieve(weburl, outputFile, downLoad_status) + + except IOError, e: + log.error("I/O Error: %s" % e.strerror) + return False, "" + + if not os.path.exists(outputFile): + log.error("Failed to get hplip version/ %s file not found."%hplip_version_file) + return False, "" + + return True, outputFile + + + + + class Sync_Lock: def __init__(self, filename): self.Lock_filename = filename diff --git a/check-plugin.py b/check-plugin.py index fa8b8db7c..aed07e811 100755 --- a/check-plugin.py +++ b/check-plugin.py @@ -90,7 +90,7 @@ def install_firmware(Plugin_Installation_Completed): if ps_plugin is False and ps_diagnose_plugin is False: Plugin_Installation_Completed = True - if core.check_for_plugin() is True: + if core.check_for_plugin() == PLUGIN_INSTALLED: break else: log.error("Failed to download firmware required files. manually run hp-plugin command in terminal fisrt") @@ -277,11 +277,14 @@ else: core = core_install.CoreInstall() core.set_plugin_version() -if core.check_for_plugin(): +plugin_sts = core.check_for_plugin() +if plugin_sts == PLUGIN_INSTALLED: log.info("Device Plugin is already installed") Is_Plugin_Already_Installed = True +elif plugin_sts == PLUGIN_VERSION_MISMATCH: + log.info("HP Device Plug-in version mismatch or some files are corrupted") else: - log.info("Device Plugin is not found") + log.info("HP Device Plug-in is not found.") if Systray_Msg_Enabled: if not Is_Plugin_Already_Installed: @@ -508,7 +508,7 @@ try: try: output = file(os.path.expanduser('/var/lib/hp/hplip.state'), 'r').read() except (IOError, OSError), e: - log.error("Could not access file: %s" % e.strerror) + log.info("Plugins are not installed. Could not access file: %s" % e.strerror) else: log.info(output) @@ -661,15 +661,18 @@ try: plugin = d.mq.get('plugin', PLUGIN_NONE) if plugin in (PLUGIN_REQUIRED, PLUGIN_OPTIONAL): - - if core.check_for_plugin(): + plugin_sts = core.check_for_plugin() + if plugin_sts == PLUGIN_INSTALLED: if plugin == PLUGIN_REQUIRED: log.info("Required plug-in status: Installed") else: log.info("Optional plug-in status: Installed") + elif plugin_sts == PLUGIN_VERSION_MISMATCH: + num_errors += 1 + log.warn("Optional plug-in status: Version mismatch") + else: num_errors += 1 - if plugin == PLUGIN_REQUIRED: log.error("Required plug-in status: Not installed") else: diff --git a/config_usb_printer.py b/config_usb_printer.py new file mode 100755 index 000000000..62e2a6b0a --- /dev/null +++ b/config_usb_printer.py @@ -0,0 +1,272 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# (c) Copyright 2011-2014 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Amarnath Chitumalla +# + +__version__ = '1.0' +__title__ = 'HP device setup using USB' +__mod__ = 'hp-config_usb_printer' +__doc__ = "Detects HP printers connected using USB and installs HPLIP printers and faxes in the CUPS spooler. Tries to automatically determine the correct PPD file to use." + +# Std Lib +import sys +import os +import getopt +import commands +import re +import time + +# Local +from base.g import * +from base import device,utils, tui, models,module +from prnt import cups + + +LPSTAT_PAT = re.compile(r"""(\S*): (.*)""", re.IGNORECASE) +USB_PATTERN = re.compile(r'''serial=(.*)''',re.IGNORECASE) +BACK_END_PATTERN = re.compile(r'''(.*):(.*)''',re.IGNORECASE) +DBUS_SERVICE='com.hplip.StatusService' + +##### METHODS ##### + +# Returns already existing print queues for this printer. +def get_already_added_queues(udev_MDL, udev_serial_no, udev_back_end,remove_non_hp_config): + status, output = utils.run('lpstat -v') + + same_printer_queues = [] + for p in output.splitlines(): + try: + match = LPSTAT_PAT.search(p) + printer_name = match.group(1) + device_uri = match.group(2) + if device_uri.startswith("cups-pdf:/"): + continue + if not USB_PATTERN.search(device_uri): + continue + + back_end = BACK_END_PATTERN.search(device_uri).group(1) + serial = USB_PATTERN.search(device_uri).group(1) + log.debug("udev_serial_no[%s] serial[%s] udev_back_end[%s] back_end[%s]"%(udev_serial_no, serial, udev_back_end, back_end)) + if udev_serial_no == serial and (udev_back_end == back_end or back_end == 'usb'): + if remove_non_hp_config and printer_name.find('_') == -1 and printer_name.find('-') != -1: + log.debug("Removed %s Queue"%printer_name) + # remove queues using cups API + cups.delPrinter(printer_name) + else: + same_printer_queues.append(printer_name) + + except AttributeError: + pass + + log.debug(same_printer_queues) + return same_printer_queues + +def check_cups_process(): + cups_running_sts = False + sts, output = utils.run('lpstat -r') + if sts == 0 and ('is running' in output): + cups_running_sts = True + + return cups_running_sts + + +def showPasswordUI(prompt): + import getpass + print "" + print log.bold(prompt) + username = raw_input("Username: ") + password = getpass.getpass("Password: ") + + return (username, password) + + +# Restart cups +def restart_cups(): + if os.path.exists('/etc/init.d/cups'): + return '/etc/init.d/cups restart' + + elif os.path.exists('/etc/init.d/cupsys'): + return '/etc/init.d/cupsys restart' + + else: + return 'killall -HUP cupsd' + + +# Send dbus event to hpssd on dbus system bus +def send_message(device_uri, printer_name, event_code, username, job_id, title, pipe_name=''): + log.debug("send_message() entered") + args = [device_uri, printer_name, event_code, username, job_id, title, pipe_name] + msg = lowlevel.SignalMessage('/', DBUS_SERVICE, 'Event') + msg.append(signature='ssisiss', *args) + SystemBus().send_message(msg) + log.debug("send_message() returning") + + +# Usage function +def usage(typ='text'): + utils.format_text(USAGE, typ, __title__, __mod__, __version__) + sys.exit(0) + +# Systray service. If hp-systray is not running, starts. +def start_systray(): + Systray_Is_Running=False + status,output = utils.Is_Process_Running('hp-systray') + if status is False: + log.debug("hp-systray is not running.") + if os.getuid() == 0: + log.error("Run \'hp-systray &\' in a terminal. ") + else: + log.debug("Starting hp-systray service") + child_pid = os.fork() + if child_pid == 0: + status,output =utils.run('hp-systray &', True, None, 1, False) + if status is not 0: + log.error("Failed to start \'hp-systray\' service. Manually run \'hp-sysray &\' from terminal as non-root user.") + sys.exit() + else: + time.sleep(1) + status,output = utils.Is_Process_Running('hp-systray') + if status is True: + Systray_Is_Running=True + else: + Systray_Is_Running=True + log.debug("hp-systray service is running\n") + return Systray_Is_Running + + +USAGE = [ (__doc__, "", "name", True), + ("Usage: %s [OPTIONS] [SERIAL NO.|USB bus:device]" % __mod__, "", "summary", True), + utils.USAGE_OPTIONS, + utils.USAGE_LOGGING1, utils.USAGE_LOGGING2, utils.USAGE_LOGGING3, + utils.USAGE_HELP, + ("[SERIAL NO.|USB bus:device]", "", "heading", False), + ("USB bus:device :", """"xxx:yyy" where 'xxx' is the USB bus and 'yyy' is the USB device. (Note: The ':' and all leading zeros must be present.)""", 'option', False), + ("", "Use the 'lsusb' command to obtain this information.", "option", False), + ("SERIAL NO.:", '"serial no." (future use)', "option", True), + utils.USAGE_EXAMPLES, + ("USB, IDs specified:", "$%s 001:002"%(__mod__), "example", False), + ("USB, using serial number:", "$%s US12345678A"%(__mod__), "example", False), + utils.USAGE_SPACE, + utils.USAGE_NOTES, + ("1. Using 'lsusb' to obtain USB IDs: (example)", "", 'note', False), + (" $ lsusb", "", 'note', False), + (" Bus 003 Device 011: ID 03f0:c202 Hewlett-Packard", "", 'note', False), + (" $ %s 003:011"%(__mod__), "", 'note', False), + (" (Note: You may have to run 'lsusb' from /sbin or another location. Use '$ locate lsusb' to determine this.)", "", 'note', True), + ] + + + +mod = module.Module(__mod__, __title__, __version__, __doc__, USAGE, (INTERACTIVE_MODE, GUI_MODE), (UI_TOOLKIT_QT3, UI_TOOLKIT_QT4), run_as_root_ok=True, quiet=True) + +opts, device_uri, printer_name, mode, ui_toolkit, loc = \ + mod.parseStdOpts('gh',['time-out=', 'timeout='],handle_device_printer=False) + + +LOG_FILE = "/var/log/hp/hplip_config_usb_printer.log" +if os.path.exists(LOG_FILE): + os.remove(LOG_FILE) + +log.set_logfile(LOG_FILE) +log.set_where(log.LOG_TO_CONSOLE_AND_FILE) +cmd="chmod 777 "+LOG_FILE +sts,output = utils.run(cmd) +if sts != 0: + log.warn("Failed to change log file permissions: %s" %output) + +cmd="chgrp lp "+LOG_FILE +sts,output = utils.run(cmd) +if sts != 0: + log.warn("Failed to change log file group permissions: %s" %output) + +try: + import dbus + from dbus import SystemBus, lowlevel +except ImportError: + log.error("hp-check-plugin Tool requires dBus and python-dbus") + sys.exit(1) + +try: + param = mod.args[0] +except IndexError: + param = '' + +log.debug("param=%s" % param) +if len(param) < 1: + usage() + sys.exit() + +try: + # ******************************* MAKEURI + if param: + device_uri, sane_uri, fax_uri = device.makeURI(param) + if not device_uri: + log.error("This is not a valid device") + sys.exit(0) + + # ******************************* QUERY MODEL AND COLLECT PPDS + log.debug("\nSetting up device: %s\n" % device_uri) + back_end, is_hp, bus, model, serial, dev_file, host, zc, port = device.parseDeviceURI(device_uri) + + mq = device.queryModelByURI(device_uri) + if not mq or mq.get('support-type', SUPPORT_TYPE_NONE) == SUPPORT_TYPE_NONE: + log.error("Unsupported printer model.") + sys.exit(1) + while check_cups_process() is False: + log.debug("CUPS is not running.. waiting for 30 sec") + time.sleep(30) + + time.sleep(1) + norm_model = models.normalizeModelName(model).lower() + remove_non_hp_config =True + if not mq.get('fax-type', FAX_TYPE_NONE) in (FAX_TYPE_NONE, FAX_TYPE_NOT_SUPPORTED): + fax_config_list = get_already_added_queues(norm_model, serial, 'hpfax',remove_non_hp_config) + + + printer_config_list = get_already_added_queues(norm_model, serial, back_end, remove_non_hp_config) + if len(printer_config_list) ==0 or len(printer_config_list) == 0: + cmd ="hp-setup -i -x -a -q %s"%param + log.debug("%s"%cmd) + os.system(cmd) + + if start_systray(): + printer_name = "" + username = "" + send_message( device_uri, printer_name, EVENT_ADD_PRINTQUEUE, username, 0,'') + send_message( device_uri, printer_name, EVENT_DIAGNOSE_PRINTQUEUE, username, 0,'') + else: + if start_systray(): + printer_name = "" + username = "" + send_message( device_uri, printer_name, EVENT_DIAGNOSE_PRINTQUEUE, username, 0,'') + + # Cleaning CUPS created Queues. If any, + i =0 + while i <24: + time.sleep(5) + get_already_added_queues(norm_model, serial, 'hpfax',remove_non_hp_config) + get_already_added_queues(norm_model, serial, 'hp',remove_non_hp_config) + i += 1 + + +except KeyboardInterrupt: + log.error("User exit") + +log.debug("Done.") @@ -1,8 +1,8 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for HP Linux Imaging and Printing 3.12.2. +# Generated by GNU Autoconf 2.63 for HP Linux Imaging and Printing 3.12.4. # -# Report bugs to <3.12.2>. +# Report bugs to <3.12.4>. # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. @@ -750,9 +750,9 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='HP Linux Imaging and Printing' PACKAGE_TARNAME='hplip' -PACKAGE_VERSION='3.12.2' -PACKAGE_STRING='HP Linux Imaging and Printing 3.12.2' -PACKAGE_BUGREPORT='3.12.2' +PACKAGE_VERSION='3.12.4' +PACKAGE_STRING='HP Linux Imaging and Printing 3.12.4' +PACKAGE_BUGREPORT='3.12.4' # Factoring default headers for most tests. ac_includes_default="\ @@ -1636,7 +1636,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures HP Linux Imaging and Printing 3.12.2 to adapt to many kinds of systems. +\`configure' configures HP Linux Imaging and Printing 3.12.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1706,7 +1706,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of HP Linux Imaging and Printing 3.12.2:";; + short | recursive ) echo "Configuration of HP Linux Imaging and Printing 3.12.4:";; esac cat <<\_ACEOF @@ -1795,7 +1795,7 @@ Some influential environment variables: Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. -Report bugs to <3.12.2>. +Report bugs to <3.12.4>. _ACEOF ac_status=$? fi @@ -1858,7 +1858,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -HP Linux Imaging and Printing configure 3.12.2 +HP Linux Imaging and Printing configure 3.12.4 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1872,7 +1872,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by HP Linux Imaging and Printing $as_me 3.12.2, which was +It was created by HP Linux Imaging and Printing $as_me 3.12.4, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2722,7 +2722,7 @@ fi # Define the identity of the package. PACKAGE='hplip' - VERSION='3.12.2' + VERSION='3.12.4' cat >>confdefs.h <<_ACEOF @@ -6063,7 +6063,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -20681,7 +20681,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -20836,7 +20836,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -22566,7 +22566,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -22722,7 +22722,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -22881,7 +22881,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -23112,7 +23112,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -23340,7 +23340,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -23721,7 +23721,7 @@ $as_echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result $as_echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## --------------------- ## -## Report this to 3.12.2 ## +## Report this to 3.12.4 ## ## --------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 @@ -24891,7 +24891,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by HP Linux Imaging and Printing $as_me 3.12.2, which was +This file was extended by HP Linux Imaging and Printing $as_me 3.12.4, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -24945,7 +24945,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -HP Linux Imaging and Printing config.status 3.12.2 +HP Linux Imaging and Printing config.status 3.12.4 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.in b/configure.in index d3e46cc4f..d00af872d 100755 --- a/configure.in +++ b/configure.in @@ -26,7 +26,7 @@ # 104 = no libdl #AC_PREREQ(2.59) -AC_INIT([HP Linux Imaging and Printing], [3.12.2], [3.12.2], [hplip]) +AC_INIT([HP Linux Imaging and Printing], [3.12.4], [3.12.4], [hplip]) #AM_INIT_AUTOMAKE([1.9 foreign]) AM_INIT_AUTOMAKE AC_DISABLE_STATIC diff --git a/copier/copier.py b/copier/copier.py index 39ebfb685..83f6c09cd 100644 --- a/copier/copier.py +++ b/copier/copier.py @@ -60,12 +60,12 @@ class PMLCopyDevice(device.Device): def copy(self, num_copies=1, contrast=0, reduction=100, quality=pml.COPIER_QUALITY_NORMAL, fit_to_page=pml.COPIER_FIT_TO_PAGE_ENABLED, - scan_style=SCAN_STYLE_FLATBED, + scan_src=SCAN_SRC_FLATBED, update_queue=None, event_queue=None): if not self.isCopyActive(): self.copy_thread = PMLCopyThread(self, num_copies, contrast, reduction, quality, - fit_to_page, scan_style, update_queue, event_queue) + fit_to_page, scan_src, update_queue, event_queue) self.copy_thread.start() return True else: @@ -87,7 +87,7 @@ class PMLCopyDevice(device.Device): class PMLCopyThread(threading.Thread): def __init__(self, dev, num_copies, contrast, reduction, quality, - fit_to_page, scan_style, + fit_to_page, scan_src, update_queue=None, event_queue=None): threading.Thread.__init__(self) @@ -97,7 +97,7 @@ class PMLCopyThread(threading.Thread): self.reduction = reduction self.quality = quality self.fit_to_page = fit_to_page - self.scan_style = scan_style + self.scan_src = scan_src self.event_queue = event_queue self.update_queue = update_queue self.prev_update = '' @@ -223,7 +223,7 @@ class PMLCopyThread(threading.Thread): self.dev.setPML(pml.OID_COPIER_JOB_QUALITY, self.quality) # fit_to_page - if self.scan_style == SCAN_STYLE_FLATBED: + if self.scan_src == SCAN_SRC_FLATBED: self.dev.setPML(pml.OID_COPIER_JOB_FIT_TO_PAGE, self.fit_to_page) else: # AiO diff --git a/cups_drv.inc b/cups_drv.inc index d6183b86d..e2e0de271 100644 --- a/cups_drv.inc +++ b/cups_drv.inc @@ -359,13 +359,10 @@ cups_ppd_printers = \ ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz \ ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz \ ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1021.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1022.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1023.ppd.gz \ + ppd/hpcups/hp-laserjet_cp_1025nw.ppd.gz \ ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz \ + ppd/hpcups/hp-laserjet_cp_1025.ppd.gz \ ppd/hpcups/hp-laserjet_cp1025.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1027nw.ppd.gz \ - ppd/hpcups/hp-laserjet_cp1028nw.ppd.gz \ ppd/hpcups/hp-laserjet_m1005.ppd.gz \ ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz \ @@ -436,7 +433,6 @@ cups_ppd_printers = \ ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz \ - ppd/hpcups/hp-laserjet_professional_p1102s.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz \ ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz \ @@ -466,6 +462,7 @@ cups_ppd_printers = \ ppd/hpcups/hp-officejet_5600_series.ppd.gz \ ppd/hpcups/hp-officejet_6000_e609a.ppd.gz \ ppd/hpcups/hp-officejet_6000_e609n.ppd.gz \ + ppd/hpcups/hp-officejet_6100.ppd.gz \ ppd/hpcups/hp-officejet_6100_series.ppd.gz \ ppd/hpcups/hp-officejet_6150_series.ppd.gz \ ppd/hpcups/hp-officejet_6200_series.ppd.gz \ @@ -474,6 +471,8 @@ cups_ppd_printers = \ ppd/hpcups/hp-officejet_6500_e709n.ppd.gz \ ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz \ ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz \ + ppd/hpcups/hp-officejet_6600.ppd.gz \ + ppd/hpcups/hp-officejet_6700.ppd.gz \ ppd/hpcups/hp-officejet_7000_e809a.ppd.gz \ ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz \ ppd/hpcups/hp-officejet_7100_series.ppd.gz \ @@ -535,7 +534,6 @@ cups_ppd_printers = \ ppd/hpcups/hp-officejet_series_320.ppd.gz \ ppd/hpcups/hp-officejet_series_330.ppd.gz \ ppd/hpcups/hp-officejet_series_350.ppd.gz \ - ppd/hpcups/hp-officejet_series_500.ppd.gz \ ppd/hpcups/hp-officejet_series_520.ppd.gz \ ppd/hpcups/hp-officejet_series_570.ppd.gz \ ppd/hpcups/hp-officejet_series_580.ppd.gz \ diff --git a/data/models/models.dat b/data/models/models.dat index 830729543..3e03f2949 100644 --- a/data/models/models.dat +++ b/data/models/models.dat @@ -20,7 +20,7 @@ # This file automatically generated by the HPLIP model editor (model_editor.py). # Please do NOT hand edit this file. # -# Last written on Wed, 01 Feb 2012 16:39:47 by goutam. +# Last written on Tue, 10 Apr 2012 12:15:36 by sanjay. # Model editor version 10.2 (Qt4). @@ -47,7 +47,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -87,7 +87,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -127,7 +127,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -166,7 +166,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -211,7 +211,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -253,7 +253,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -294,7 +294,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -333,7 +333,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -375,7 +375,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26(51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -437,7 +437,7 @@ r0-agent5-type=5 r0-agent6-kind=1 r0-agent6-sku=14 (C4923A) r0-agent6-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -479,7 +479,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26(51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -527,7 +527,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D or C1823T) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -566,7 +566,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -608,7 +608,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=92274A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -650,7 +650,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=92298A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -693,7 +693,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=92298A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -738,7 +738,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=92274A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -780,7 +780,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=92291A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -823,7 +823,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=92291A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -868,7 +868,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3909A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -912,7 +912,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3906A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -955,7 +955,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3909A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -997,7 +997,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3903A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1051,7 +1051,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=67 r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1105,7 +1105,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=67 r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1147,7 +1147,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3903A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1193,7 +1193,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3906A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1235,7 +1235,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3903A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1279,7 +1279,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3903A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1378,7 +1378,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -1417,7 +1417,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1456,7 +1456,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1501,7 +1501,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1542,7 +1542,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1587,7 +1587,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1632,7 +1632,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1678,7 +1678,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1723,7 +1723,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1768,7 +1768,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1813,7 +1813,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1852,7 +1852,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -1897,7 +1897,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1942,7 +1942,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -1987,7 +1987,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN/C6578DN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2032,7 +2032,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN/C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2077,7 +2077,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D or C1823T) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2122,7 +2122,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2161,7 +2161,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -2206,7 +2206,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN/C6578DN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2251,7 +2251,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN/C6578DN) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2296,7 +2296,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2341,7 +2341,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2386,7 +2386,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2431,7 +2431,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2472,7 +2472,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -2517,7 +2517,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN/C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -2568,7 +2568,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -2670,7 +2670,7 @@ r8-agent3-type=3 r8-agent4-kind=3 r8-agent4-sku=100 r8-agent4-type=19 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=2 status-dynamic-counters=1 @@ -2710,7 +2710,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -2785,7 +2785,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=0 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -2836,7 +2836,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -2887,7 +2887,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -2938,7 +2938,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -2989,7 +2989,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -3040,7 +3040,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -3091,7 +3091,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -3142,7 +3142,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -3184,7 +3184,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=57 (C6657AN) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -3286,7 +3286,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -3356,7 +3356,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=703 r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -3457,7 +3457,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -3559,7 +3559,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -3601,7 +3601,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -3676,7 +3676,7 @@ r8-agent1-type=1 r8-agent2-kind=2 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -3751,7 +3751,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -3850,7 +3850,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -3890,7 +3890,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -3934,7 +3934,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=57 (C6657AN) r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -3976,7 +3976,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4025,7 +4025,7 @@ r0-agent1-type=2 r0-agent2-kind=3 r0-agent2-sku=59 (C9359A) r0-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4076,7 +4076,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE322A r0-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -4127,7 +4127,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE322A r0-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -4178,7 +4178,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE322A r0-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -4218,7 +4218,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4269,7 +4269,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE322A r0-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -4309,7 +4309,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4410,7 +4410,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -4485,7 +4485,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=703 r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -4584,7 +4584,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=0 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=2 @@ -4623,7 +4623,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4662,7 +4662,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4701,7 +4701,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4745,7 +4745,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=57 (C6657AN) r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4787,7 +4787,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=43 (C8543X) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4835,7 +4835,7 @@ r0-agent1-type=2 r0-agent2-kind=3 r0-agent2-sku=59 (C9359A) r0-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4875,7 +4875,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4914,7 +4914,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -4953,7 +4953,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5032,7 +5032,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=58 r7-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=3 @@ -5084,7 +5084,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5126,7 +5126,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26 (51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5178,7 +5178,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -5226,7 +5226,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -5340,7 +5340,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=862/862XL r8-agent5-type=19 -scan-style=1 +scan-src=1 scan-type=6 status-battery-check=0 status-dynamic-counters=2 @@ -5467,7 +5467,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=178/178XL r8-agent5-type=19 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -5594,7 +5594,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=178/178XL r8-agent5-type=19 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -5639,7 +5639,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5681,7 +5681,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26 (51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5795,7 +5795,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=862/862XL r8-agent5-type=19 -scan-style=0 +scan-src=1 scan-type=10 status-battery-check=0 status-dynamic-counters=2 @@ -5837,7 +5837,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26 (51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5879,7 +5879,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=43 (C8543X) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -5919,7 +5919,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6007,7 +6007,7 @@ r7-agent1-type=2 r7-agent2-kind=3 r7-agent2-sku=100 (C9368AN) r7-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -6050,7 +6050,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6139,7 +6139,7 @@ r7-agent1-type=2 r7-agent2-kind=3 r7-agent2-sku=100 (C9368AN) r7-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -6178,7 +6178,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6220,7 +6220,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26 (51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6262,7 +6262,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6301,7 +6301,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6343,7 +6343,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=26 (51626A) r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6395,7 +6395,7 @@ r0-agent3-type=3 r0-agent4-kind=9 r0-agent4-sku=C8222A/C8263A r0-agent4-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=1 status-dynamic-counters=0 @@ -6434,7 +6434,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6523,7 +6523,7 @@ r7-agent1-type=2 r7-agent2-kind=3 r7-agent2-sku=100 (C9368AN) r7-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -6609,7 +6609,7 @@ r7-agent1-type=2 r7-agent2-kind=3 r7-agent2-sku=100 (C9368AN) r7-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -6655,7 +6655,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6707,7 +6707,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6759,7 +6759,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -6811,7 +6811,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6856,7 +6856,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6908,7 +6908,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -6960,7 +6960,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE412A r0-agent4-type=6 -scan-style=3 +scan-src=3 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -7074,7 +7074,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=862/862XL r8-agent5-type=19 -scan-style=0 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -7166,7 +7166,7 @@ r7-agent1-type=2 r7-agent2-kind=3 r7-agent2-sku=100 (C9368AN) r7-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -7212,7 +7212,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7252,7 +7252,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7296,7 +7296,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7336,7 +7336,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7389,7 +7389,7 @@ r0-agent3-type=3 r0-agent4-kind=9 r0-agent4-sku=C8222A/C8263A r0-agent4-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=1 status-dynamic-counters=1 @@ -7429,7 +7429,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7486,7 +7486,7 @@ r0-agent4-type=62 r0-agent5-kind=3 r0-agent5-sku=100 r0-agent5-type=19 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=1 status-dynamic-counters=1 @@ -7573,7 +7573,7 @@ r7-agent1-type=2 r7-agent2-kind=3 r7-agent2-sku=100 (C9368AN) r7-agent2-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -7690,7 +7690,7 @@ r8-agent4-type=19 r8-agent5-kind=9 r8-agent5-sku= r8-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=2 status-dynamic-counters=1 @@ -7729,7 +7729,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7745,51 +7745,6 @@ usb-pid=0 usb-vid=3f0 wifi-config=0 -[officejet_series_500] -align-type=0 -clean-type=0 -color-cal-type=0 -copy-type=0 -embedded-server-type=0 -fax-type=2 -fw-download=False -icon=officejet_500.png -io-mfp-mode=7 -io-mode=1 -io-support=1 -job-storage=0 -linefeed-cal-type=0 -model1=HP Officejet 500 All-in-One Printer -monitor-type=0 -panel-check-type=0 -pcard-type=0 -plugin=0 -plugin-reason=0 -power-settings=0 -pq-diag-type=0 -r-type=0 -r0-agent1-kind=3 -r0-agent1-sku=29 (51629A) -r0-agent1-type=1 -r0-agent2-kind=3 -r0-agent2-sku=49 (51649A) -r0-agent2-type=2 -scan-style=2 -scan-type=1 -status-battery-check=0 -status-dynamic-counters=0 -status-type=0 -support-released=True -support-subtype=324a -support-type=2 -support-ver=0.9.5 -tech-class=DJ6xx -tech-subclass=Normal -tech-type=2 -usb-pid=0 -usb-vid=3f0 -wifi-config=0 - [deskjet_500c] align-type=0 clean-type=0 @@ -7819,7 +7774,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7861,7 +7816,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -7907,7 +7862,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D or C1823T) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -7955,7 +7910,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8006,7 +7961,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE402A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8050,7 +8005,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8095,7 +8050,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8140,7 +8095,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8182,7 +8137,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8226,7 +8181,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8301,7 +8256,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -8415,7 +8370,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=862/862XL r8-agent5-type=19 -scan-style=0 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -8460,7 +8415,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8506,7 +8461,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8551,7 +8506,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -8595,7 +8550,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8640,7 +8595,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8679,7 +8634,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8739,7 +8694,7 @@ r0-agent5-type=4 r0-agent6-kind=2 r0-agent6-sku=HP 88 (C9387/C9392) r0-agent6-type=5 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -8784,7 +8739,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -8829,7 +8784,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -8874,7 +8829,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -8919,7 +8874,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -8958,7 +8913,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9005,7 +8960,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9049,7 +9004,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE390A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9094,7 +9049,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE390A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9139,7 +9094,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE390A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9185,7 +9140,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9230,7 +9185,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9275,7 +9230,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -9320,7 +9275,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9360,7 +9315,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9405,7 +9360,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9451,7 +9406,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9490,7 +9445,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9533,7 +9488,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9579,7 +9534,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -9624,7 +9579,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9669,7 +9624,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9721,7 +9676,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9763,7 +9718,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9811,7 +9766,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9854,7 +9809,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9903,7 +9858,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9950,7 +9905,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -9996,7 +9951,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10041,7 +9996,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10086,7 +10041,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10131,7 +10086,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10176,7 +10131,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10221,7 +10176,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=49 (51649A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10270,7 +10225,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10319,7 +10274,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10368,7 +10323,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10416,7 +10371,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10464,7 +10419,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10513,7 +10468,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10561,7 +10516,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10609,7 +10564,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -10649,7 +10604,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10697,7 +10652,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -10736,7 +10691,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10780,7 +10735,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10819,7 +10774,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10858,7 +10813,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -10906,7 +10861,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -10951,7 +10906,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -10990,7 +10945,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11038,7 +10993,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=16 (C1816A) r0-agent3-type=3 -scan-style=2 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11107,7 +11062,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=703 r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -11177,7 +11132,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=703 r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -11219,7 +11174,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11264,7 +11219,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11309,7 +11264,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11354,7 +11309,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11393,7 +11348,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11432,7 +11387,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11477,7 +11432,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11522,7 +11477,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11561,7 +11516,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -11601,7 +11556,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11640,7 +11595,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11682,7 +11637,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11727,7 +11682,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11772,7 +11727,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11811,7 +11766,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11856,7 +11811,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11901,7 +11856,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11940,7 +11895,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -11981,7 +11936,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12025,7 +11980,7 @@ r-type=0 r0-agent1-kind=3 r0-agent1-sku=110 r0-agent1-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12071,7 +12026,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12116,7 +12071,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12161,7 +12116,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12206,7 +12161,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12251,7 +12206,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12296,7 +12251,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12342,7 +12297,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12388,7 +12343,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12434,7 +12389,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12498,7 +12453,7 @@ r0-agent7-type=6 r0-agent8-kind=2 r0-agent8-sku=11 (C4837AN) r0-agent8-type=5 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12545,7 +12500,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12593,7 +12548,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=17 (C6625AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12638,7 +12593,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12683,7 +12638,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12729,7 +12684,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12776,7 +12731,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -12821,7 +12776,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -12893,7 +12848,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13010,7 +12965,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -13055,7 +13010,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13103,7 +13058,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13148,7 +13103,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -13194,7 +13149,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13239,7 +13194,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13284,7 +13239,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13329,7 +13284,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13374,7 +13329,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13422,7 +13377,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13467,7 +13422,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13512,7 +13467,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13557,7 +13512,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -13602,7 +13557,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -13647,7 +13602,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -13692,7 +13647,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13738,7 +13693,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13783,7 +13738,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13828,7 +13783,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13875,7 +13830,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13922,7 +13877,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -13969,7 +13924,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14015,7 +13970,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14063,7 +14018,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14109,7 +14064,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14155,7 +14110,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14218,7 +14173,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14265,7 +14220,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657AN)/28 (C8728AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -14304,7 +14259,7 @@ plugin-reason=1 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14379,7 +14334,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -14419,7 +14374,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14482,7 +14437,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14521,7 +14476,7 @@ plugin-reason=1 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14563,7 +14518,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=35A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14605,7 +14560,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=4 status-battery-check=0 status-dynamic-counters=0 @@ -14647,7 +14602,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=35A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14689,7 +14644,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=35A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14731,7 +14686,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=35A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14773,7 +14728,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=35A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14815,7 +14770,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14857,7 +14812,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14899,7 +14854,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -14950,7 +14905,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=Q6003A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=3 status-battery-check=0 status-dynamic-counters=0 @@ -15001,7 +14956,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=Q6003A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=3 status-battery-check=0 status-dynamic-counters=0 @@ -15044,7 +14999,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15087,7 +15042,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15103,108 +15058,6 @@ usb-pid=2b17 usb-vid=3f0 wifi-config=0 -[hp_laserjet_cp1021] -align-type=0 -clean-type=0 -color-cal-type=0 -copy-type=0 -embedded-server-type=1 -fax-type=0 -fw-download=False -icon=hp_color_laserjet_cp2025.png -io-mfp-mode=3 -io-mode=1 -io-support=6 -job-storage=0 -linefeed-cal-type=0 -model1=HP LaserJet CP1021 -monitor-type=0 -panel-check-type=0 -pcard-type=0 -plugin=1 -plugin-reason=1 -power-settings=0 -pq-diag-type=0 -r-type=0 -r0-agent1-kind=4 -r0-agent1-sku=CE310A -r0-agent1-type=1 -r0-agent2-kind=4 -r0-agent2-sku=CE311A -r0-agent2-type=4 -r0-agent3-kind=4 -r0-agent3-sku=CE313A -r0-agent3-type=5 -r0-agent4-kind=4 -r0-agent4-sku=CE312A -r0-agent4-type=6 -scan-style=0 -scan-type=0 -status-battery-check=0 -status-dynamic-counters=0 -status-type=10 -support-released=True -support-subtype=219b2b -support-type=2 -support-ver=3.11.1 -tech-class=LJZjsColor -tech-subclass=Advanced -tech-type=4 -usb-pid=112a -usb-vid=3f0 -wifi-config=0 - -[hp_laserjet_cp1022] -align-type=0 -clean-type=0 -color-cal-type=0 -copy-type=0 -embedded-server-type=1 -fax-type=0 -fw-download=False -icon=hp_color_laserjet_cp2025.png -io-mfp-mode=3 -io-mode=1 -io-support=6 -job-storage=0 -linefeed-cal-type=0 -model1=HP LaserJet CP1022 -monitor-type=0 -panel-check-type=0 -pcard-type=0 -plugin=1 -plugin-reason=1 -power-settings=0 -pq-diag-type=0 -r-type=0 -r0-agent1-kind=4 -r0-agent1-sku=CE310A -r0-agent1-type=1 -r0-agent2-kind=4 -r0-agent2-sku=CE311A -r0-agent2-type=4 -r0-agent3-kind=4 -r0-agent3-sku=CE313A -r0-agent3-type=5 -r0-agent4-kind=4 -r0-agent4-sku=CE312A -r0-agent4-type=6 -scan-style=0 -scan-type=0 -status-battery-check=0 -status-dynamic-counters=0 -status-type=10 -support-released=True -support-subtype=219b2b -support-type=2 -support-ver=3.11.1 -tech-class=LJZjsColor -tech-subclass=Advanced -tech-type=4 -usb-pid=112a -usb-vid=3f0 -wifi-config=0 - [hp_laserjet_1022nw] align-type=0 clean-type=0 @@ -15231,7 +15084,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15274,7 +15127,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15316,7 +15169,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15332,57 +15185,6 @@ usb-pid=2c17 usb-vid=3f0 wifi-config=0 -[hp_laserjet_cp1023] -align-type=0 -clean-type=0 -color-cal-type=0 -copy-type=0 -embedded-server-type=1 -fax-type=0 -fw-download=False -icon=hp_color_laserjet_cp2025.png -io-mfp-mode=3 -io-mode=1 -io-support=6 -job-storage=0 -linefeed-cal-type=0 -model1=HP LaserJet CP1023 -monitor-type=0 -panel-check-type=0 -pcard-type=0 -plugin=1 -plugin-reason=1 -power-settings=0 -pq-diag-type=0 -r-type=0 -r0-agent1-kind=4 -r0-agent1-sku=CE310A -r0-agent1-type=1 -r0-agent2-kind=4 -r0-agent2-sku=CE311A -r0-agent2-type=4 -r0-agent3-kind=4 -r0-agent3-sku=CE313A -r0-agent3-type=5 -r0-agent4-kind=4 -r0-agent4-sku=CE312A -r0-agent4-type=6 -scan-style=0 -scan-type=0 -status-battery-check=0 -status-dynamic-counters=0 -status-type=10 -support-released=True -support-subtype=219b2b -support-type=2 -support-ver=3.11.1 -tech-class=LJZjsColor -tech-subclass=Advanced -tech-type=4 -usb-pid=112a -usb-vid=3f0 -wifi-config=0 - [hp_laserjet_cp1025nw] align-type=0 clean-type=0 @@ -15394,10 +15196,10 @@ fw-download=False icon=hp_color_laserjet_cp2025.png io-mfp-mode=3 io-mode=1 -io-support=6 +io-support=14 job-storage=0 linefeed-cal-type=0 -model1=HP LaserJet CP1025nw +model1=HP LaserJet Pro CP1025nw Color Printer Series monitor-type=0 panel-check-type=0 pcard-type=0 @@ -15418,7 +15220,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15432,7 +15234,7 @@ tech-subclass=Advanced tech-type=4 usb-pid=b2a usb-vid=3f0 -wifi-config=0 +wifi-config=3 [hp_laserjet_cp1025] align-type=0 @@ -15445,10 +15247,10 @@ fw-download=False icon=hp_color_laserjet_cp2025.png io-mfp-mode=3 io-mode=1 -io-support=6 +io-support=2 job-storage=0 linefeed-cal-type=0 -model1=HP LaserJet CP1025 +model1=HP LaserJet Pro CP1025 Color Printer Series monitor-type=0 panel-check-type=0 pcard-type=0 @@ -15469,7 +15271,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15485,7 +15287,7 @@ usb-pid=b2a usb-vid=3f0 wifi-config=0 -[hp_laserjet_cp1027nw] +[hp_laserjet_cp_1025nw] align-type=0 clean-type=0 color-cal-type=0 @@ -15496,10 +15298,10 @@ fw-download=False icon=hp_color_laserjet_cp2025.png io-mfp-mode=3 io-mode=1 -io-support=6 +io-support=14 job-storage=0 linefeed-cal-type=0 -model1=HP LaserJet CP1027nw +model1=HP LaserJet Pro CP 1025nw Color Printer Series monitor-type=0 panel-check-type=0 pcard-type=0 @@ -15520,23 +15322,23 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 -status-type=10 +status-type=8 support-released=True support-subtype=219b2b support-type=2 -support-ver=3.11.1 +support-ver=3.12.4 tech-class=LJZjsColor tech-subclass=Advanced tech-type=4 usb-pid=112a usb-vid=3f0 -wifi-config=0 +wifi-config=3 -[hp_laserjet_cp1028nw] +[hp_laserjet_cp_1025] align-type=0 clean-type=0 color-cal-type=0 @@ -15547,10 +15349,10 @@ fw-download=False icon=hp_color_laserjet_cp2025.png io-mfp-mode=3 io-mode=1 -io-support=6 +io-support=2 job-storage=0 linefeed-cal-type=0 -model1=HP LaserJet CP1028nw +model1=HP LaserJet Pro CP 1025 Color Printer Series monitor-type=0 panel-check-type=0 pcard-type=0 @@ -15571,7 +15373,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE312A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15579,7 +15381,7 @@ status-type=10 support-released=True support-subtype=219b2b support-type=2 -support-ver=3.11.1 +support-ver=3.12.4 tech-class=LJZjsColor tech-subclass=Advanced tech-type=4 @@ -15646,7 +15448,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -15686,7 +15488,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15726,7 +15528,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15769,7 +15571,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4092A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -15808,7 +15610,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15854,7 +15656,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15893,7 +15695,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -15938,7 +15740,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16003,7 +15805,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16047,7 +15849,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4092A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -16089,7 +15891,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4092A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -16132,7 +15934,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16179,7 +15981,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657AN)/28 (C8728AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -16195,48 +15997,6 @@ usb-pid=3011 usb-vid=3f0 wifi-config=0 -[hp_laserjet_professional_p1102s] -align-type=0 -clean-type=0 -color-cal-type=0 -copy-type=0 -embedded-server-type=0 -fax-type=0 -fw-download=False -icon=HP_LaserJet_1012.png -io-mfp-mode=6 -io-mode=1 -io-support=2 -job-storage=0 -linefeed-cal-type=0 -model1=HP Laserjet Professional P1102s Printer -monitor-type=0 -panel-check-type=0 -pcard-type=0 -plugin=1 -plugin-reason=1 -power-settings=0 -pq-diag-type=0 -r-type=0 -r0-agent1-kind=4 -r0-agent1-sku=35A -r0-agent1-type=1 -scan-style=0 -scan-type=0 -status-battery-check=0 -status-dynamic-counters=0 -status-type=8 -support-released=True -support-subtype=219b2b -support-type=2 -support-ver=3.12.2 -tech-class=LJZjsMono -tech-subclass=NoAutoDuplex -tech-type=3 -usb-pid=2a -usb-vid=3f0 -wifi-config=0 - [hp_laserjet_professional_p1102w] align-type=0 clean-type=0 @@ -16244,7 +16004,7 @@ color-cal-type=0 copy-type=0 embedded-server-type=0 fax-type=0 -fw-download=True +fw-download=False icon=HP_LaserJet_1012.png io-mfp-mode=6 io-mode=1 @@ -16261,9 +16021,9 @@ power-settings=0 pq-diag-type=0 r-type=0 r0-agent1-kind=4 -r0-agent1-sku=35A +r0-agent1-sku=85A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16277,7 +16037,7 @@ tech-subclass=NoAutoDuplex tech-type=3 usb-pid=32a usb-vid=3f0 -wifi-config=0 +wifi-config=3 [hp_laserjet_professional_p1102] align-type=0 @@ -16286,7 +16046,7 @@ color-cal-type=0 copy-type=0 embedded-server-type=0 fax-type=0 -fw-download=True +fw-download=False icon=HP_LaserJet_1012.png io-mfp-mode=6 io-mode=1 @@ -16294,6 +16054,7 @@ io-support=2 job-storage=0 linefeed-cal-type=0 model1=HP Laserjet Professional P1102 Printer +model2=HP Laserjet Professional P1102s Printer monitor-type=0 panel-check-type=0 pcard-type=0 @@ -16303,9 +16064,9 @@ power-settings=0 pq-diag-type=0 r-type=0 r0-agent1-kind=4 -r0-agent1-sku=35A +r0-agent1-sku=85A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16328,7 +16089,7 @@ color-cal-type=0 copy-type=0 embedded-server-type=0 fax-type=0 -fw-download=True +fw-download=False icon=HP_LaserJet_1012.png io-mfp-mode=6 io-mode=1 @@ -16345,9 +16106,9 @@ power-settings=0 pq-diag-type=0 r-type=0 r0-agent1-kind=4 -r0-agent1-sku=35A +r0-agent1-sku=85A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16359,9 +16120,9 @@ support-ver=3.10.4 tech-class=LJZjsMono tech-subclass=NoAutoDuplex tech-type=3 -usb-pid=32a +usb-pid=102a usb-vid=3f0 -wifi-config=0 +wifi-config=3 [hp_laserjet_professional_p1106] align-type=0 @@ -16387,9 +16148,9 @@ power-settings=0 pq-diag-type=0 r-type=0 r0-agent1-kind=4 -r0-agent1-sku=35A +r0-agent1-sku=85A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16429,9 +16190,9 @@ power-settings=0 pq-diag-type=0 r-type=0 r0-agent1-kind=4 -r0-agent1-sku=88A +r0-agent1-sku=85A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16476,7 +16237,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16523,7 +16284,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16562,7 +16323,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16601,7 +16362,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16643,7 +16404,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=4 status-battery-check=0 status-dynamic-counters=0 @@ -16685,7 +16446,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=4 status-battery-check=0 status-dynamic-counters=0 @@ -16729,7 +16490,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16774,7 +16535,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16805,6 +16566,7 @@ io-support=2 job-storage=0 linefeed-cal-type=0 model1=HP LaserJet Professional M1132 Multifunction Printer +model2=HP LaserJet Professional M1132s Multifunction Printer monitor-type=0 panel-check-type=0 pcard-type=0 @@ -16817,7 +16579,6 @@ r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 scan-src=2 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -16860,7 +16621,6 @@ r0-agent1-kind=4 r0-agent1-sku=CE285A r0-agent1-type=1 scan-src=2 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -16902,7 +16662,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2624A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -16948,7 +16708,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=41 (51641A) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -17006,7 +16766,7 @@ r0-agent5-type=5 r0-agent6-kind=1 r0-agent6-sku=14 (C4923A) r0-agent6-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17049,7 +16809,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17091,7 +16851,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17141,7 +16901,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=23 (C1823D or C1823T) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -17184,7 +16944,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17251,7 +17011,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17290,7 +17050,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17332,7 +17092,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17388,7 +17148,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657AN)/28 (C8728AN) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -17439,7 +17199,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=40 r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17482,7 +17242,6 @@ r0-agent1-kind=4 r0-agent1-sku=CE285A r0-agent1-type=1 scan-src=3 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -17525,7 +17284,6 @@ r0-agent1-kind=4 r0-agent1-sku=CE285A r0-agent1-type=1 scan-src=3 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -17568,7 +17326,6 @@ r0-agent1-kind=4 r0-agent1-sku=CE285A r0-agent1-type=1 scan-src=3 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -17619,7 +17376,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB542A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17665,7 +17422,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17708,7 +17465,6 @@ r0-agent1-kind=4 r0-agent1-sku=CE285A r0-agent1-type=1 scan-src=3 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -17759,7 +17515,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB542A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17802,7 +17558,6 @@ r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 scan-src=3 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -17848,7 +17603,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -17891,7 +17646,6 @@ r0-agent1-kind=4 r0-agent1-sku=CE285A r0-agent1-type=1 scan-src=3 -scan-style=1 scan-type=8 status-battery-check=0 status-dynamic-counters=0 @@ -17933,7 +17687,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -17975,7 +17729,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -18023,7 +17777,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18152,7 +17906,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -18191,7 +17945,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18234,7 +17988,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2613A/Q2613X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18308,7 +18062,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=22 r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18362,7 +18116,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -18404,7 +18158,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2613A/Q2613X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18446,7 +18200,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2613A/Q2613X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18502,7 +18256,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -18553,7 +18307,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CB543A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -18604,7 +18358,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CB543A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -18649,7 +18403,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18691,7 +18445,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=4 status-battery-check=0 status-dynamic-counters=0 @@ -18733,7 +18487,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18775,7 +18529,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18817,7 +18571,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18860,7 +18614,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18902,7 +18656,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -18955,7 +18709,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -19067,7 +18821,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -19121,7 +18875,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=22 (C9352A) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -19173,7 +18927,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19225,7 +18979,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19277,7 +19031,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19329,7 +19083,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19381,7 +19135,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19433,7 +19187,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19485,7 +19239,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19537,7 +19291,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -19578,7 +19332,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -19689,7 +19443,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -19803,7 +19557,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 (C9369ZN) r7-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -19845,7 +19599,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=36A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -19887,7 +19641,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=36A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20005,7 +19759,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 (C9369ZN) r7-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -20056,7 +19810,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB543A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20107,7 +19861,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB543A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20158,7 +19912,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB543A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20210,7 +19964,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20232,7 +19986,7 @@ clean-type=0 color-cal-type=0 copy-type=0 embedded-server-type=1 -fax-type=0 +fax-type=4 fw-download=False icon=HP_LaserJet_m1522.png io-mfp-mode=1 @@ -20252,7 +20006,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7573 r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -20304,7 +20058,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20346,7 +20100,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7573 r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -20388,7 +20142,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7573 r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -20440,7 +20194,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20492,7 +20246,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20544,7 +20298,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20596,7 +20350,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20648,7 +20402,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20700,7 +20454,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CE323A r0-agent4-type=5 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20743,7 +20497,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE278A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=2 status-dynamic-counters=0 @@ -20786,7 +20540,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE278A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=2 status-dynamic-counters=0 @@ -20829,7 +20583,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE278A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=2 status-dynamic-counters=0 @@ -20872,7 +20626,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE278A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=2 status-dynamic-counters=0 @@ -20914,7 +20668,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=36A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -20965,7 +20719,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=40 r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21041,7 +20795,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -21160,7 +20914,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 (C9369ZN) r7-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -21211,7 +20965,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=40 r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21262,7 +21016,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=40 r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21301,7 +21055,7 @@ plugin-reason=1 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21343,7 +21097,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=36A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21408,7 +21162,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=11 (4813A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21471,7 +21225,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=11 (4813A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21510,7 +21264,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21549,7 +21303,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21624,7 +21378,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -21690,7 +21444,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=10 (C4803A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21765,7 +21519,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -21807,7 +21561,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21849,7 +21603,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21892,7 +21646,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21935,7 +21689,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -21978,7 +21732,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22021,7 +21775,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22064,7 +21818,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5949A/Q5949X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22115,7 +21869,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22166,7 +21920,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22217,7 +21971,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22268,7 +22022,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22310,7 +22064,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE505A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22352,7 +22106,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE505A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22427,7 +22181,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -22470,7 +22224,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE505A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22513,7 +22267,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE505A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22556,7 +22310,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE505A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22599,7 +22353,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE505A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22674,7 +22428,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -22713,7 +22467,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22766,7 +22520,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -22807,7 +22561,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22853,7 +22607,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4096A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22895,7 +22649,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4096A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -22996,7 +22750,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23044,7 +22798,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23083,7 +22837,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23136,7 +22890,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23178,7 +22932,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4096A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23243,7 +22997,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23291,7 +23045,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23338,7 +23092,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4096A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23443,7 +23197,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23482,7 +23236,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23532,7 +23286,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23595,7 +23349,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23659,7 +23413,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23698,7 +23452,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23762,7 +23516,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23811,7 +23565,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -23850,7 +23604,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23915,7 +23669,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=11 (C4813A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -23962,7 +23716,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2160A/Q2610D r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24050,7 +23804,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=58 r8-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24092,7 +23846,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2160A/Q2610D r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24143,7 +23897,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -24194,7 +23948,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -24245,7 +23999,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -24296,7 +24050,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -24416,7 +24170,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 (C9369ZN) r7-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -24469,7 +24223,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -24555,7 +24309,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -24695,7 +24449,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24737,7 +24491,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q6511A/Q6511X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24782,7 +24536,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q6511A/Q6511X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24828,7 +24582,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q6511A/Q6511X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24895,7 +24649,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=10 (C4803A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24934,7 +24688,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -24988,7 +24742,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=04 (C9704A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25027,7 +24781,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25084,7 +24838,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=04 (C9704A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25158,7 +24912,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -25209,7 +24963,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -25263,7 +25017,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25319,7 +25073,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25462,7 +25216,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -25501,7 +25255,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25540,7 +25294,7 @@ plugin-reason=1 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25681,7 +25435,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -25756,7 +25510,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -25820,7 +25574,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=11 (C4813A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25874,7 +25628,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25929,7 +25683,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -25983,7 +25737,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26022,7 +25776,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26159,7 +25913,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -26213,7 +25967,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26267,7 +26021,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26310,7 +26064,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7573 r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -26353,7 +26107,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7573 r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -26396,7 +26150,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7573 r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=5 status-battery-check=0 status-dynamic-counters=0 @@ -26435,7 +26189,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26489,7 +26243,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -26554,7 +26308,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26608,7 +26362,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -26662,7 +26416,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -26716,7 +26470,7 @@ r0-agent4-type=5 r0-agent5-kind=7 r0-agent5-sku=64 (Q3964A) r0-agent5-type=62 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -26781,7 +26535,7 @@ r0-agent7-type=5 r0-agent8-kind=1 r0-agent8-sku=12 (C5026A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26835,7 +26589,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=Q7582A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26910,7 +26664,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -26949,7 +26703,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -26991,7 +26745,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -27038,7 +26792,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -27081,7 +26835,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE255A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -27123,7 +26877,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27165,7 +26919,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27208,7 +26962,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A/X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -27250,7 +27004,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27299,7 +27053,7 @@ r0-agent2-type=62 r0-agent3-kind=6 r0-agent3-sku=Q5779A r0-agent3-type=62 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -27374,7 +27128,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -27417,7 +27171,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27492,7 +27246,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=122/122XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -27534,7 +27288,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q2612A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27576,7 +27330,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27663,7 +27417,7 @@ r3-agent3-type=5 r3-agent4-kind=2 r3-agent4-sku=862/862XL r3-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=0 @@ -27706,7 +27460,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -27747,7 +27501,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -27853,7 +27607,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -28038,7 +27792,7 @@ r7-agent5-type=7 r7-agent6-kind=2 r7-agent6-sku=801 (C8775Z) r7-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -28079,7 +27833,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28121,7 +27875,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -28164,7 +27918,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4092A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28353,7 +28107,7 @@ r7-agent5-type=7 r7-agent6-kind=2 r7-agent6-sku=801 (C8775Z) r7-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -28395,7 +28149,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4092A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28437,7 +28191,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4092A r0-agent1-type=1 -scan-style=2 +scan-src=2 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28483,7 +28237,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28670,7 +28424,7 @@ r7-agent5-type=7 r7-agent6-kind=2 r7-agent6-sku=801 (C8775Z) r7-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -28718,7 +28472,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -28763,7 +28517,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -28805,7 +28559,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28847,7 +28601,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28889,7 +28643,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28931,7 +28685,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=2 status-battery-check=0 status-dynamic-counters=0 @@ -28977,7 +28731,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29022,7 +28776,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29067,7 +28821,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29106,7 +28860,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29160,7 +28914,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=55 (Q3655A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29210,7 +28964,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29255,7 +29009,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=22 r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -29311,7 +29065,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=55 (Q3655A) r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29365,7 +29119,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB402A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29419,7 +29173,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB402A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29471,7 +29225,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CC532A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29528,7 +29282,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=58 (Q3658A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29576,7 +29330,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29633,7 +29387,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=58 (Q3658A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29689,7 +29443,7 @@ r0-agent4-type=6 r0-agent5-kind=5 r0-agent5-sku=Q5421A r0-agent5-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29739,7 +29493,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=22 r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -29790,7 +29544,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29846,7 +29600,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29903,7 +29657,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=58 (Q3658A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -29963,7 +29717,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=58 (Q3658A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30014,7 +29768,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=28 (C8728A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30053,7 +29807,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30107,7 +29861,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=Q7582A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30152,7 +29906,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30198,7 +29952,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30243,7 +29997,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30290,7 +30044,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30335,7 +30089,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30388,7 +30142,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30433,7 +30187,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30478,7 +30232,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=22 (C9352A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30531,7 +30285,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30576,7 +30330,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=22 (C9352A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30622,7 +30376,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=22 (C9352A) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30661,7 +30415,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30707,7 +30461,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4127A/C4127X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30746,7 +30500,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30816,7 +30570,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=703 r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -30855,7 +30609,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30908,7 +30662,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB402A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30951,7 +30705,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -30994,7 +30748,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31037,7 +30791,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31080,7 +30834,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31123,7 +30877,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31166,7 +30920,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31209,7 +30963,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31252,7 +31006,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31293,7 +31047,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31332,7 +31086,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31395,7 +31149,7 @@ r1-agent3-type=5 r1-agent4-kind=4 r1-agent4-sku=CE263A r1-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31441,7 +31195,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4127A/C4127X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31484,7 +31238,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8061A/C8061X r0-agent1-type=1 -scan-style=1 +scan-src=1 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -31529,7 +31283,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8061A/C8061X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -31639,7 +31393,7 @@ r8-agent3-type=3 r8-agent4-kind=3 r8-agent4-sku=100 r8-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -31729,7 +31483,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -31856,7 +31610,7 @@ r816-agent1-type=1 r816-agent2-kind=3 r816-agent2-sku= r816-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -31904,7 +31658,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657AN)/28 (C8728AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -31949,7 +31703,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657AN)/28 (C8728AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -31994,7 +31748,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657AN)/28 (C8728AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -32036,7 +31790,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8061A/C8061X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -32086,7 +31840,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q1338A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -32180,7 +31934,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -32234,7 +31988,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=56 (C6656AN) r0-agent3-type=1 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -32273,7 +32027,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -32380,7 +32134,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -32468,7 +32222,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -32547,7 +32301,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -32626,7 +32380,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -32672,7 +32426,7 @@ r0-agent1-type=1 r0-agent2-kind=5 r0-agent2-sku=Q5421A/Q5422A r0-agent2-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -32721,7 +32475,7 @@ r0-agent1-type=1 r0-agent2-kind=5 r0-agent2-sku=Q5421A/Q5422A r0-agent2-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -32773,7 +32527,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=56 (C6656AN) r0-agent3-type=1 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -32844,7 +32598,7 @@ r7-agent1-type=1 r7-agent2-kind=3 r7-agent2-sku=817 r7-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=3 @@ -32891,7 +32645,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q1339A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -32978,7 +32732,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=3 @@ -33076,7 +32830,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33127,7 +32881,7 @@ r0-agent2-type=62 r0-agent3-kind=6 r0-agent3-sku=Q5779A r0-agent3-type=62 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -33178,7 +32932,7 @@ r0-agent2-type=62 r0-agent3-kind=6 r0-agent3-sku=Q5779A r0-agent3-type=62 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -33226,7 +32980,7 @@ r0-agent2-type=62 r0-agent3-kind=6 r0-agent3-sku=Q5779A r0-agent3-type=62 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -33272,7 +33026,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q5942A/Q5942X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -33369,7 +33123,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33477,7 +33231,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33552,7 +33306,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=703 r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33636,7 +33390,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33706,7 +33460,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33747,7 +33501,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -33822,7 +33576,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33891,7 +33645,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -33953,7 +33707,7 @@ r0-agent6-type=62 r0-agent7-kind=5 r0-agent7-sku=97 (C4197A) r0-agent7-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -33992,7 +33746,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34069,7 +33823,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -34139,7 +33893,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -34243,7 +33997,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -34282,7 +34036,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -34351,7 +34105,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -34394,7 +34148,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34437,7 +34191,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34480,7 +34234,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34523,7 +34277,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34566,7 +34320,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7551A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34629,7 +34383,7 @@ r1-agent3-type=5 r1-agent4-kind=4 r1-agent4-sku=CE263A r1-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34668,7 +34422,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34707,7 +34461,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -34748,7 +34502,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34799,7 +34553,7 @@ r0-agent3-type=6 r0-agent4-kind=4 r0-agent4-sku=CF033A r0-agent4-type=5 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34864,7 +34618,7 @@ r0-agent6-type=62 r0-agent7-kind=5 r0-agent7-sku=97 (C4197A) r0-agent7-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -34906,7 +34660,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE390A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -34967,7 +34721,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=24 (C9724A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35051,7 +34805,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -35108,7 +34862,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=24 (C9724A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35165,7 +34919,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=24 (C9724A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35226,7 +34980,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=24 (C9724A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35296,7 +35050,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -35367,7 +35121,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -35451,7 +35205,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -35515,7 +35269,7 @@ r0-agent6-type=62 r0-agent7-kind=5 r0-agent7-sku=Q7502A/Q7503A r0-agent7-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35569,7 +35323,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=Q6462A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -35632,7 +35386,7 @@ r0-agent6-type=62 r0-agent7-kind=5 r0-agent7-sku=Q7502A/Q7503A r0-agent7-type=62 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -35674,7 +35428,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35716,7 +35470,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4129X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35762,7 +35516,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4129X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35804,7 +35558,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7570A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -35848,7 +35602,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7570A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -35890,7 +35644,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=Q7570A r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -36028,7 +35782,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -36166,7 +35920,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 r8-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -36212,7 +35966,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4129X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36267,7 +36021,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36371,7 +36125,7 @@ r8-agent3-type=3 r8-agent4-kind=3 r8-agent4-sku=100 r8-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -36410,7 +36164,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36459,7 +36213,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN / C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -36504,7 +36258,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -36549,7 +36303,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -36595,7 +36349,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578DN/C6578AN) r0-agent2-type=2 -scan-style=2 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -36688,7 +36442,7 @@ r8-agent2-type=1 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -36733,7 +36487,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36775,7 +36529,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36817,7 +36571,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C7115A/C7115X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36868,7 +36622,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE742A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36919,7 +36673,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE742A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -36970,7 +36724,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE742A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -37090,7 +36844,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=19 -scan-style=0 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -37147,7 +36901,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=18 (C4937A) r0-agent6-type=4 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -37234,7 +36988,7 @@ r8-agent2-type=1 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -37295,7 +37049,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=88 (C9386) / 88L (C9391) r0-agent6-type=4 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -37411,7 +37165,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -37550,7 +37304,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 (C9369ZN) r7-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -37600,7 +37354,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=57 (C6657A) r0-agent2-type=2 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -37654,7 +37408,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -37715,7 +37469,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=34 (C9734A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -37762,7 +37516,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -37840,7 +37594,7 @@ r8-agent1-type=1 r8-agent2-kind=3 r8-agent2-sku=121/121XL r8-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -37927,7 +37681,7 @@ r8-agent2-type=1 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -38014,7 +37768,7 @@ r3-agent3-type=5 r3-agent4-kind=2 r3-agent4-sku=862/862XL r3-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=0 @@ -38101,7 +37855,7 @@ r3-agent3-type=5 r3-agent4-kind=2 r3-agent4-sku=862/862XL r3-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=0 @@ -38152,7 +37906,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE272A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38213,7 +37967,7 @@ r0-agent5-type=62 r0-agent6-kind=8 r0-agent6-sku=34 (C9734A) r0-agent6-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38263,7 +38017,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38311,7 +38065,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38359,7 +38113,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38417,7 +38171,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -38465,7 +38219,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38516,7 +38270,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38564,7 +38318,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38680,7 +38434,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 (C9369ZN) r7-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -38775,7 +38529,7 @@ r8-agent2-type=2 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -38823,7 +38577,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -38872,7 +38626,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39010,7 +38764,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -39124,7 +38878,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -39238,7 +38992,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -39293,7 +39047,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB382A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39345,7 +39099,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB382A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39398,7 +39152,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CB382A r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39449,7 +39203,7 @@ r0-agent3-type=5 r0-agent4-kind=4 r0-agent4-sku=CE302C r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39488,7 +39242,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39629,7 +39383,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 r8-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -39645,6 +39399,93 @@ usb-pid=5911 usb-vid=3f0 wifi-config=0 +[officejet_6100] +align-type=1 +clean-type=1 +color-cal-type=0 +copy-type=0 +embedded-server-type=1 +fax-type=0 +fw-download=False +icon=officejet_k550.png +io-mfp-mode=3 +io-mode=1 +io-support=14 +job-storage=0 +linefeed-cal-type=0 +model1=HP OfficeJet 6100 ePrinter H611a +monitor-type=0 +panel-check-type=0 +pcard-type=0 +plugin=0 +plugin-reason=0 +power-settings=0 +pq-diag-type=0 +r-type=0 +r0-agent1-kind=2 +r0-agent1-sku=932/932XL +r0-agent1-type=1 +r0-agent2-kind=2 +r0-agent2-sku=933/933XL +r0-agent2-type=4 +r0-agent3-kind=2 +r0-agent3-sku=933/933XL +r0-agent3-type=5 +r0-agent4-kind=2 +r0-agent4-sku=933/933XL +r0-agent4-type=6 +r1-agent2-kind=2 +r1-agent2-sku=04/04XL +r1-agent2-type=4 +r1-agent3-kind=2 +r1-agent3-sku=04/04XL +r1-agent3-type=5 +r1-agent4-kind=2 +r1-agent4-sku=04/04XL +r1-agent4-type=6 +r1-agent5-kind=2 +r1-agent5-sku=04/04XL +r1-agent5-type=16 +r2-agent2-kind=2 +r2-agent2-sku=360/360XL +r2-agent2-type=4 +r2-agent3-kind=2 +r2-agent3-sku=360/360XL +r2-agent3-type=5 +r2-agent4-kind=2 +r2-agent4-sku=360/360XL +r2-agent4-type=6 +r2-agent5-kind=2 +r2-agent5-sku=360/360XL +r2-agent5-type=16 +r4-agent2-kind=2 +r4-agent2-sku=155/155XL +r4-agent2-type=4 +r4-agent3-kind=2 +r4-agent3-sku=155/155XL +r4-agent3-type=5 +r4-agent4-kind=2 +r4-agent4-sku=155/155XL +r4-agent4-type=6 +r4-agent5-kind=2 +r4-agent5-sku=155/155XL +r4-agent5-type=16 +scan-src=0 +scan-type=0 +status-battery-check=0 +status-dynamic-counters=2 +status-type=2 +support-released=True +support-subtype=219b2b +support-type=2 +support-ver=3.12.4 +tech-class=Saipan +tech-subclass=Normal +tech-type=2 +usb-pid=5e12 +usb-vid=3f0 +wifi-config=3 + [hp_designjet_z6100ps_42in_photo] align-type=0 clean-type=0 @@ -39668,7 +39509,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39708,7 +39549,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39839,7 +39680,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 (C8775Z) r8-agent6-type=8 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -39890,7 +39731,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -39935,7 +39776,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -39980,7 +39821,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -40025,7 +39866,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -40073,7 +39914,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658AN) r0-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -40192,7 +40033,7 @@ r7-agent2-type=2 r7-agent3-kind=3 r7-agent3-sku=858 r7-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -40231,7 +40072,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -40270,7 +40111,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -40415,7 +40256,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 r8-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -40535,7 +40376,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=2 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -40668,7 +40509,7 @@ r8-agent3-type=3 r8-agent4-kind=3 r8-agent4-sku=100 r8-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -40759,7 +40600,7 @@ r8-agent2-type=1 r8-agent3-kind=3 r8-agent3-sku=138 r8-agent3-type=3 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -40874,7 +40715,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -40988,7 +40829,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=7 status-battery-check=0 status-dynamic-counters=2 @@ -41102,7 +40943,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=3 scan-type=7 status-battery-check=0 status-dynamic-counters=2 @@ -41217,7 +41058,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=2 @@ -41361,7 +41202,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -41448,7 +41289,7 @@ r3-agent3-type=5 r3-agent4-kind=2 r3-agent4-sku=862/862XL r3-agent4-type=6 -scan-style=1 +scan-src=1 scan-type=7 status-battery-check=0 status-dynamic-counters=0 @@ -41587,7 +41428,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -41603,6 +41444,108 @@ usb-pid=8504 usb-vid=3f0 wifi-config=0 +[officejet_6600] +align-type=17 +clean-type=1 +color-cal-type=0 +copy-type=0 +embedded-server-type=1 +fax-type=6 +fw-download=False +icon=officejet_5600.png +io-mfp-mode=1 +io-mode=1 +io-support=10 +job-storage=0 +linefeed-cal-type=0 +model1=HP Officejet 6600 e-All-in-One Printer - H711a +monitor-type=0 +panel-check-type=0 +pcard-type=0 +plugin=0 +plugin-reason=0 +power-settings=0 +pq-diag-type=0 +r-type=0 +r0-agent1-kind=2 +r0-agent1-sku=932/932XL +r0-agent1-type=1 +r0-agent2-kind=2 +r0-agent2-sku=933/933XL +r0-agent2-type=4 +r0-agent3-kind=2 +r0-agent3-sku=933/933XL +r0-agent3-type=5 +r0-agent4-kind=2 +r0-agent4-sku=933/933XL +r0-agent4-type=6 +scan-src=3 +scan-type=7 +status-battery-check=0 +status-dynamic-counters=0 +status-type=2 +support-released=True +support-subtype=219b2b +support-type=2 +support-ver=3.12.4 +tech-class=Saipan +tech-subclass=Normal +tech-type=2 +usb-pid=5d12 +usb-vid=3f0 +wifi-config=3 + +[officejet_6700] +align-type=17 +clean-type=1 +color-cal-type=0 +copy-type=0 +embedded-server-type=1 +fax-type=6 +fw-download=False +icon=officejet_5600.png +io-mfp-mode=1 +io-mode=1 +io-support=14 +job-storage=0 +linefeed-cal-type=0 +model1=HP Officejet 6700 e-All-in-One Printer - H711n +monitor-type=0 +panel-check-type=0 +pcard-type=0 +plugin=0 +plugin-reason=0 +power-settings=0 +pq-diag-type=0 +r-type=0 +r0-agent1-kind=2 +r0-agent1-sku=932/932XL +r0-agent1-type=1 +r0-agent2-kind=2 +r0-agent2-sku=933/933XL +r0-agent2-type=4 +r0-agent3-kind=2 +r0-agent3-sku=933/933XL +r0-agent3-type=5 +r0-agent4-kind=2 +r0-agent4-sku=933/933XL +r0-agent4-type=6 +scan-src=3 +scan-type=7 +status-battery-check=0 +status-dynamic-counters=0 +status-type=2 +support-released=True +support-subtype=219b2b +support-type=2 +support-ver=3.12.4 +tech-class=Saipan +tech-subclass=AutoDuplex +tech-type=2 +usb-pid=5c12 +usb-vid=3f0 +wifi-config=3 + [deskjet_6800] align-type=1 clean-type=1 @@ -41729,7 +41672,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -41866,7 +41809,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -42007,7 +41950,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -42121,7 +42064,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=155/155XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -42235,7 +42178,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=155/155XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -42299,7 +42242,7 @@ r0-agent5-type=5 r0-agent6-kind=1 r0-agent6-sku=14 (C4923A) r0-agent6-type=6 -scan-style=1 +scan-src=3 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -42435,7 +42378,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 r8-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -42474,7 +42417,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -42513,7 +42456,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -42650,7 +42593,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -42783,7 +42726,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 (C8775Z) r8-agent6-type=8 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -42833,7 +42776,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -42881,7 +42824,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43014,7 +42957,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 (C8775Z) r8-agent6-type=8 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -43065,7 +43008,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43206,7 +43149,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -43339,7 +43282,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 r8-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -43390,7 +43333,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43429,7 +43372,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43468,7 +43411,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43605,7 +43548,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -43663,7 +43606,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=88 (C9386) / 88L (C9391) r0-agent6-type=4 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -43796,7 +43739,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 (C8775Z) r8-agent6-type=8 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -43844,7 +43787,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43894,7 +43837,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -43942,7 +43885,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44080,7 +44023,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -44132,7 +44075,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44263,7 +44206,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 (C8775Z) r8-agent6-type=8 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -44320,7 +44263,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=88 (C9386) / 88L (C9391) r0-agent6-type=4 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -44359,7 +44302,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44375,6 +44318,67 @@ usb-pid=0 usb-vid=3f0 wifi-config=0 +[officejet_pro_l7500] +align-type=12 +clean-type=1 +color-cal-type=0 +copy-type=0 +embedded-server-type=1 +fax-type=1 +fw-download=False +icon=officejet_k550.png +io-mfp-mode=3 +io-mode=1 +io-support=6 +job-storage=0 +linefeed-cal-type=2 +model1=HP Officejet Pro L7500 Series All-in-One Printer +model2=HP Officejet Pro L7550 All-in-One Printer +model3=HP Officejet Pro L7555 All-in-One Printer +model4=HP Officejet Pro L7580 All-in-One Printer +model5=HP Officejet Pro L7590 All-in-One Printer +monitor-type=0 +panel-check-type=1 +pcard-type=1 +plugin=0 +plugin-reason=0 +power-settings=0 +pq-diag-type=2 +r-type=0 +r0-agent1-kind=1 +r0-agent1-sku=88 (C9381) +r0-agent1-type=14 +r0-agent2-kind=1 +r0-agent2-sku=88 (C9382) +r0-agent2-type=15 +r0-agent3-kind=2 +r0-agent3-sku=88 (C9396 ) / 88L (C9385) +r0-agent3-type=1 +r0-agent4-kind=2 +r0-agent4-sku=88 (C9388) / 88L (C9393) +r0-agent4-type=6 +r0-agent5-kind=2 +r0-agent5-sku=88 (C9387) / 88L (C9392) +r0-agent5-type=5 +r0-agent6-kind=2 +r0-agent6-sku=88 (C9386) / 88L (C9391) +r0-agent6-type=4 +scan-src=1 +scan-type=6 +status-battery-check=0 +status-dynamic-counters=0 +status-type=2 +support-released=True +support-subtype=219b2b +support-type=2 +support-ver=1.7.2 +tech-class=OJProKx50 +tech-subclass=NoFullBleed +tech-type=2 +usb-pid=2112 +usb-vid=3f0 +wifi-config=0 + [officejet_7500_e910] align-type=15 clean-type=1 @@ -44458,7 +44462,7 @@ r8-agent3-type=5 r8-agent4-kind=2 r8-agent4-sku=862/862XL r8-agent4-type=6 -scan-style=0 +scan-src=3 scan-type=7 status-battery-check=0 status-dynamic-counters=1 @@ -44474,67 +44478,6 @@ usb-pid=4812 usb-vid=3f0 wifi-config=3 -[officejet_pro_l7500] -align-type=12 -clean-type=1 -color-cal-type=0 -copy-type=0 -embedded-server-type=1 -fax-type=1 -fw-download=False -icon=officejet_k550.png -io-mfp-mode=3 -io-mode=1 -io-support=6 -job-storage=0 -linefeed-cal-type=2 -model1=HP Officejet Pro L7500 Series All-in-One Printer -model2=HP Officejet Pro L7550 All-in-One Printer -model3=HP Officejet Pro L7555 All-in-One Printer -model4=HP Officejet Pro L7580 All-in-One Printer -model5=HP Officejet Pro L7590 All-in-One Printer -monitor-type=0 -panel-check-type=1 -pcard-type=1 -plugin=0 -plugin-reason=0 -power-settings=0 -pq-diag-type=2 -r-type=0 -r0-agent1-kind=1 -r0-agent1-sku=88 (C9381) -r0-agent1-type=14 -r0-agent2-kind=1 -r0-agent2-sku=88 (C9382) -r0-agent2-type=15 -r0-agent3-kind=2 -r0-agent3-sku=88 (C9396 ) / 88L (C9385) -r0-agent3-type=1 -r0-agent4-kind=2 -r0-agent4-sku=88 (C9388) / 88L (C9393) -r0-agent4-type=6 -r0-agent5-kind=2 -r0-agent5-sku=88 (C9387) / 88L (C9392) -r0-agent5-type=5 -r0-agent6-kind=2 -r0-agent6-sku=88 (C9386) / 88L (C9391) -r0-agent6-type=4 -scan-style=1 -scan-type=6 -status-battery-check=0 -status-dynamic-counters=0 -status-type=2 -support-released=True -support-subtype=219b2b -support-type=2 -support-ver=1.7.2 -tech-class=OJProKx50 -tech-subclass=NoFullBleed -tech-type=2 -usb-pid=2112 -usb-vid=3f0 -wifi-config=0 - [photosmart_d7500_series] align-type=1 clean-type=1 @@ -44633,7 +44576,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=808/808XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -44747,7 +44690,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=862/862XL r8-agent5-type=19 -scan-style=3 +scan-src=3 scan-type=7 status-battery-check=0 status-dynamic-counters=2 @@ -44787,7 +44730,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44837,7 +44780,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44877,7 +44820,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44917,7 +44860,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -44956,7 +44899,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45016,7 +44959,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=88 (C9386) / 88L (C9391) r0-agent6-type=4 -scan-style=1 +scan-src=1 scan-type=6 status-battery-check=0 status-dynamic-counters=0 @@ -45068,7 +45011,7 @@ r0-agent3-type=3 r0-agent4-kind=3 r0-agent4-sku=59 (C9359A) r0-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45128,7 +45071,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=88 (C9386) / 88L (C9391) r0-agent6-type=4 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -45186,7 +45129,7 @@ r0-agent3-type=3 r0-agent4-kind=3 r0-agent4-sku=59 (C9359A) r0-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45326,7 +45269,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -45380,7 +45323,7 @@ r0-agent3-type=3 r0-agent4-kind=3 r0-agent4-sku=59 (C9359A) r0-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45422,7 +45365,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3909A/C3909X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45473,7 +45416,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=C4907A r0-agent4-type=4 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45525,7 +45468,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=940 r0-agent4-type=4 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45569,7 +45512,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C3909A/C3909X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -45710,7 +45653,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -45749,7 +45692,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -45788,7 +45731,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -45830,7 +45773,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4128X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -45881,7 +45824,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=951 r0-agent4-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -46013,7 +45956,7 @@ r8-agent5-type=7 r8-agent6-kind=2 r8-agent6-sku=801 r8-agent6-type=8 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=1 @@ -46152,7 +46095,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -46196,7 +46139,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4128X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -46241,7 +46184,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4128X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -46283,7 +46226,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C4128X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -46471,7 +46414,7 @@ r7-agent5-type=7 r7-agent6-kind=2 r7-agent6-sku=801 (C8775Z) r7-agent6-type=8 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=2 @@ -46573,7 +46516,7 @@ r8-agent3-type=3 r8-agent4-kind=3 r8-agent4-sku=100/102 r8-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -46713,7 +46656,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -46764,7 +46707,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=940 r0-agent4-type=4 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -46815,7 +46758,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=940 r0-agent4-type=4 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -46866,7 +46809,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=940 r0-agent4-type=4 -scan-style=1 +scan-src=1 scan-type=6 status-battery-check=0 status-dynamic-counters=0 @@ -46928,7 +46871,7 @@ r0-agent6-type=62 r0-agent7-kind=5 r0-agent7-sku=55 (C4155A) r0-agent7-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47044,7 +46987,7 @@ r8-agent4-type=6 r8-agent5-kind=2 r8-agent5-sku=178/178XL r8-agent5-type=16 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -47097,7 +47040,7 @@ r0-agent3-type=5 r0-agent4-kind=2 r0-agent4-sku=940 r0-agent4-type=4 -scan-style=0 +scan-src=3 scan-type=7 status-battery-check=0 status-dynamic-counters=0 @@ -47111,7 +47054,7 @@ tech-subclass=Normal tech-type=2 usb-pid=5312 usb-vid=3f0 -wifi-config=1 +wifi-config=3 [hp_color_laserjet_8550] align-type=0 @@ -47162,7 +47105,7 @@ r0-agent6-type=62 r0-agent7-kind=5 r0-agent7-sku=55 (C4155A) r0-agent7-type=62 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47220,7 +47163,7 @@ r0-agent5-type=5 r0-agent6-kind=2 r0-agent6-sku=88 (C9386) / 88L (C9391) r0-agent6-type=4 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47273,7 +47216,7 @@ r0-agent4-kind=2 r0-agent4-sku=951 r0-agent4-type=6 r0-agent5-kind=2 -scan-style=3 +scan-src=3 scan-type=7 status-battery-check=0 status-dynamic-counters=0 @@ -47436,7 +47379,7 @@ r7-agent4-type=10 r7-agent5-kind=3 r7-agent5-sku=101 r7-agent5-type=11 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -47511,7 +47454,7 @@ r0-agent8-type=4 r0-agent9-kind=2 r0-agent9-sku=HP 38 (C9416A) r0-agent9-type=5 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47557,7 +47500,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47600,7 +47543,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -47644,7 +47587,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -47688,7 +47631,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47730,7 +47673,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47774,7 +47717,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47816,7 +47759,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -47859,7 +47802,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47901,7 +47844,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -47943,7 +47886,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=CE266C r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -47985,7 +47928,7 @@ r-type=0 r0-agent1-kind=4 r0-agent1-sku=C8543X r0-agent1-type=1 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -48050,7 +47993,7 @@ r0-agent7-type=5 r0-agent8-kind=2 r0-agent8-sku=11 (C4838AN) r0-agent8-type=6 -scan-style=1 +scan-src=1 scan-type=1 status-battery-check=0 status-dynamic-counters=0 @@ -48126,7 +48069,7 @@ r0-agent8-type=4 r0-agent9-kind=2 r0-agent9-sku=C9416A r0-agent9-type=5 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -48171,7 +48114,7 @@ r0-agent1-type=1 r0-agent2-kind=3 r0-agent2-sku=78 (C6578AN / C6578DN) r0-agent2-type=2 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -48237,7 +48180,7 @@ r0-agent7-type=5 r0-agent8-kind=7 r0-agent8-sku=62 (C8562A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -48300,7 +48243,7 @@ r0-agent7-type=5 r0-agent8-kind=7 r0-agent8-sku=62 (C8562A) r0-agent8-type=6 -scan-style=0 +scan-src=0 scan-type=-2 status-battery-check=0 status-dynamic-counters=0 @@ -48351,7 +48294,7 @@ r0-agent2-type=2 r0-agent3-kind=3 r0-agent3-sku=58 (C6658A) r0-agent3-type=3 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -48493,7 +48436,7 @@ r7-agent3-type=3 r7-agent4-kind=3 r7-agent4-sku=100 (C9368AN) r7-agent4-type=10 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=1 @@ -48532,7 +48475,7 @@ plugin-reason=0 power-settings=0 pq-diag-type=0 r-type=0 -scan-style=0 +scan-src=0 scan-type=0 status-battery-check=0 status-dynamic-counters=0 @@ -48571,6 +48514,7 @@ wifi-config=0 # 14 : LIDIL DJ D1600 # 15 : Low End Data Model (automatic and semiautomatic) # 16 : Low End Data Model (manual) +# 17 : Low End Data Model via ff/cc/o channel # # # clean-type @@ -48782,14 +48726,14 @@ wifi-config=0 # 2 : OJ Pro L7xxx # # -# scan-style -# ---------- +# scan-src +# -------- # Scan paper path # (TYPE_INT) # 0 : None or n/a # 1 : Flatbed -# 2 : Scrollfed -# 3 : Both +# 2 : Adf +# 4 : Camera # # # scan-type @@ -48843,6 +48787,7 @@ wifi-config=0 # 8 : PJL only over print channel # 9 : PML + PJL over print channel # 10 : Low End Data Model +# 11 : Low End Data Model via FF/CC/0 channel # # # support-released @@ -48920,6 +48865,7 @@ wifi-config=0 # Python10 # Python11 # QuickConnect +# Saipan # Stabler # StingrayOJ # Undefined diff --git a/data/rules/56-hpmud_add_printer.rules b/data/rules/56-hpmud_add_printer.rules new file mode 100644 index 000000000..6ebc84081 --- /dev/null +++ b/data/rules/56-hpmud_add_printer.rules @@ -0,0 +1,11 @@ +# Load hp firmware for this printer. + +ACTION!="add", GOTO="hpmud_rules_end" + +#Check and add printer for Suse 10.3 distro +SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="????", PROGRAM="/bin/sh -c 'logger -p user.info loading HP Device $env{BUSNUM} $env{DEVNUM}'", RUN+="/bin/sh -c '/usr/bin/hp-config_usb_printer $env{BUSNUM}:$env{DEVNUM} &'" + +#Check and add printer +SUBSYSTEM=="usb_device", ATTRS{idVendor}=="03f0", ATTRS{idProduct}=="????", PROGRAM="/bin/sh -c 'X=%k; X=$${X#usbdev}; B=$${X%%%%.*}; D=$${X#*.}; logger -p user.info loading HP Device $$B $$D; printf %%03i:%%03i $$B $$D'", RUN+="/bin/sh -c '/usr/bin/hp-config_usb_printer %c &'" + +LABEL="hpmud_rules_end" diff --git a/diagnose_plugin.py b/diagnose_plugin.py index 520695387..b78cefd45 100755 --- a/diagnose_plugin.py +++ b/diagnose_plugin.py @@ -37,17 +37,8 @@ import os from base.g import * from base import utils, module -pm = None - - - USAGE = [ (__doc__, "", "name", True), - ("Usage: %s [MODE] [OPTIONS]" % __mod__, "", "summary", True), - utils.USAGE_MODE, - ("Installation for required printer mode:", "--required (Qt4 only)", "option", False), - ("Installation for optional printer mode:", "--optional (Qt4 only)", "option", False), - #("Installation generic mode:", "--generic (default)", "option", False), - utils.USAGE_LANGUAGE, + ("Usage: %s [OPTIONS]" % __mod__, "", "summary", True), utils.USAGE_OPTIONS, utils.USAGE_LOGGING1, utils.USAGE_LOGGING2, utils.USAGE_LOGGING3, utils.USAGE_HELP, @@ -67,64 +58,47 @@ opts, device_uri, printer_name, mode, ui_toolkit, loc = \ mod.parseStdOpts( handle_device_printer=False) plugin_path = None -install_mode = PLUGIN_NONE # reuse plugin types for mode (PLUGIN_NONE = generic) +install_mode = PLUGIN_REQUIRED plugin_reason = PLUGIN_REASON_NONE -for o, a in opts: - if o == '--required': - install_mode = PLUGIN_REQUIRED - if ui_toolkit == 'qt3': - log.warn("--required switch ignored.") - - elif o == '--optional': - install_mode = PLUGIN_OPTIONAL - if ui_toolkit == 'qt3': - log.warn("--optional switch ignored.") - - elif o == '--reason': - plugin_reason = int(a) - - -version = prop.installed_version - - - if mode == GUI_MODE: if ui_toolkit == 'qt3': - if not utils.canEnterGUIMode(): - log.error("%s requires GUI support (try running with --qt4). Try using interactive (-i) mode." % __mod__) - sys.exit(1) - else: + log.error("Unable to load Qt3. Please use Qt4") + + else: #qt4 if not utils.canEnterGUIMode4(): - log.error("%s requires GUI support (try running with --qt3). Try using interactive (-i) mode." % __mod__) + log.error("%s requires GUI support . Is Qt4 installed?" % __mod__) sys.exit(1) - -if mode == GUI_MODE: - if ui_toolkit == 'qt3': - log.error("Unable to load Qt3. Please use qt4") - - else: # qt4 try: from PyQt4.QtGui import QApplication, QMessageBox from ui4.plugindiagnose import PluginDiagnose + from installer import core_install except ImportError: log.error("Unable to load Qt4 support. Is it installed?") sys.exit(1) app = QApplication(sys.argv) + core = core_install.CoreInstall() + plugin_sts = core.check_for_plugin() + if plugin_sts == PLUGIN_INSTALLED: + log.info("Device Plugin is already installed") + sys.exit(0) + elif plugin_sts == PLUGIN_VERSION_MISMATCH: + dialog = PluginDiagnose(None, install_mode, plugin_reason, True) + else: + dialog = PluginDiagnose(None, install_mode, plugin_reason) - dialog = PluginDiagnose(None, install_mode, plugin_reason) dialog.show() - try: log.debug("Starting GUI loop...") app.exec_() except KeyboardInterrupt: log.error("User exit") sys.exit(0) - +else: #Interaction mode + log.error("Only Qt4 GUI mode is supported \n") + usage() log.info("") log.info("Done.") - diff --git a/diagnose_queues.py b/diagnose_queues.py new file mode 100755 index 000000000..9b965fcad --- /dev/null +++ b/diagnose_queues.py @@ -0,0 +1,440 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# (c) Copyright 2011-2014 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Amarnath Chitumalla +# + +__version__ = '1.0' +__title__ = 'AutoConfig Utility to check queues configuration' +__mod__ = 'hp-daignose-queues' +__doc__ = """Auto config utility for HPLIP supported multifunction Devices to diagnose queues configuration.""" + +# Std Lib +import sys +import os +import getopt +import commands +import re + +# Local +from base.g import * +from base import utils, tui, models +from prnt import cups +from installer import core_install + +# ppd type +HPCUPS = 1 +HPIJS = 2 +HPPS = 3 +HPOTHER = 4 + +DEVICE_URI_PATTERN = re.compile(r"""(.*):/(.*?)/(\S*?)\?(?:serial=(\S*)|device=(\S*)|ip=(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[^&]*)|zc=(\S+))(?:&port=(\d))?""", re.I) +NICKNAME_PATTERN = re.compile(r'''\*NickName:\s*\"(.*)"''', re.MULTILINE) +NET_PATTERN = re.compile(r"""(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})""") +NET_ZC_PATTERN = re.compile(r'''zc=(.*)''',re.IGNORECASE) +NET_OTHER_PATTERN = re.compile(r'''(.*)://(.*)''',re.IGNORECASE) +USB_PATTERN = re.compile(r'''serial=(.*)''',re.IGNORECASE) +LPSTAT_PATTERN = re.compile(r"""(\S*): (.*)""", re.IGNORECASE) +#BACK_END_PATTERN = re.compile(r'''(.*):(.*)''',re.IGNORECASE) + +##### METHODS ##### + +def usage(typ='text'): + if typ == 'text': + utils.log_title(__title__, __version__) + utils.format_text(USAGE, typ, __title__, __mod__, __version__) + sys.exit(0) + + +# Checks 'lp' group is added o not +def check_user_groups(): + result = False + sts,output = utils.run('groups') + if sts != 0: + log.error("Failed to get groups") + else: + output = output.rstrip('\r\n') + log.debug("groups =%s "%output) + grp_list= output.split(' ') + cnt = 0 + while cnt < len(grp_list) : + if grp_list[cnt] == 'lp': + result = True + break + cnt += 1 + + return result + +# This function adds the groups ('lp') to user +def add_group(core): + result = False + add_user_to_group = core.get_distro_ver_data('add_user_to_group', '') + if add_user_to_group: + usermod = os.path.join(utils.which("usermod"), "usermod") + " %s %s" % (add_user_to_group, prop.username) + else: + usermod = os.path.join(utils.which("usermod"), "usermod") + " %s %s" % ("-Glp", prop.username) + + su_sudo = utils.su_sudo() + password_f = None + if su_sudo is "su": + name,version,is_su = utils.os_release() + log.debug("name = %s version = %s is_su = %s" %(name,version,is_su)) + if ( name == 'Fedora' and version >= '14' and is_su == True): + #using su opening GUI apps fail in Fedora 14. + #To run GUI apps as root, you need a root login shell (su -) in Fedora 14 + su_sudo = 'su - -c "%s"' + else: + su_sudo = 'su -c "%s"' + + password_f = "get_password_ui" +# password_f = utils.get_password + cmd =su_sudo % usermod + log.info("cmd = %s" %cmd) +# sts, output = utils.run(cmd, True, password_f, -1,True,cmd) + sts, output = utils.run(cmd, True, password_f, 1, True, "Please enter root/superuser password to add 'lp' group") + if sts == 0: + result = True + + return result + + +# This parse the given Device URI. and provides the details. +def parseDeviceURI(device_uri): + m = DEVICE_URI_PATTERN.match(device_uri) + if m is None: + raise Error(ERROR_INVALID_DEVICE_URI) + + back_end = m.group(1).lower() or '' + is_hp = (back_end in ('hp', 'hpfax', 'hpaio')) + bus = m.group(2).lower() or '' + + if bus not in ('usb', 'net', 'bt', 'fw', 'par'): + raise Error(ERROR_INVALID_DEVICE_URI) + + model =m.group(3) or '' + serial = m.group(4) or '' + dev_file = m.group(5) or '' + host = m.group(6) or '' + zc = '' + if not host: + zc = host = m.group(7) or '' + port = m.group(8) or 1 + + if bus == 'net': + try: + port = int(port) + except (ValueError, TypeError): + port = 1 + + if port == 0: + port = 1 + +# log.warning("++++: back_end '%s' is_hp '%s' bus '%s' model '%s' serial '%s' dev_file '%s' host '%s' zc '%s' port '%s' " % +# ( back_end, is_hp, bus, model, serial, dev_file, host, zc, port)) + + return back_end, is_hp, bus, model, serial, dev_file, host, zc, port + + +####### Device class ######## +class DetectedDevice: + def __init__(self, Printer_Name,Device_URI,Device_Type, ppdType, PPDFileError = False, IsEnabled=True ): + self.PrinterName =Printer_Name + self.DeviceURI = Device_URI + self.DeviceType = Device_Type + self.PPDFileType = ppdType + self.PPDFileError = PPDFileError + self.IsEnabled = IsEnabled + + + + +#########Main########## +USAGE = [(__doc__, "", "name", True), + ("Usage: %s [OPTIONS]" % __mod__, "", "summary", True), + utils.USAGE_OPTIONS, + utils.USAGE_LOGGING1, utils.USAGE_LOGGING2, utils.USAGE_LOGGING3, + utils.USAGE_HELP, + ] + +try: + log.set_module(__mod__) + + try: + opts, args = getopt.getopt(sys.argv[1:], 'hl:gsr', ['help', 'help-rest', 'help-man', 'help-desc', 'logging=']) + + except getopt.GetoptError, e: + log.error(e.msg) + usage() + sys.exit(1) + + if os.getenv("HPLIP_DEBUG"): + log.set_level('debug') + + log_level = 'info' + Show_result=False + quiet_mode = False + for o, a in opts: + if o in ('-h', '--help'): + usage() + + elif o == '--help-rest': + usage('rest') + + elif o == '--help-man': + usage('man') + + elif o == '--help-desc': + print __doc__, + sys.exit(0) + + elif o in ('-l', '--logging'): + log_level = a.lower().strip() + + elif o == '-g': + log_level = 'debug' + + elif o == '-r': + Show_result = True + + elif o == '-s': + quiet_mode = True + + if not log.set_level(log_level): + usage() + if not quiet_mode: + utils.log_title(__title__, __version__) + + log_file = os.path.normpath('/var/loh/hp/hplip_queues.log') + log.debug(log.bold("Saving output in log file: %s" % log_file)) + if os.path.exists(log_file): + os.remove(log_file) + log.set_logfile(log_file) + log.set_where(log.LOG_TO_CONSOLE_AND_FILE) + + try: + from base import device, pml + # This can fail due to hpmudext not being present + except ImportError: + log.error("Device library is not avail.") + sys.exit(1) + + # Only Qt4 is supported. + try: + from PyQt4.QtGui import QApplication, QMessageBox + from ui4.queuesconf import QueuesDiagnose + except ImportError: + log.error("Unable to load Qt4 support. Is it installed?") + sys.exit(1) + + app = QApplication(sys.argv) + Error_Found = False + if check_user_groups() is False: + dialog = QueuesDiagnose(None, "","",QUEUES_MSG_SENDING) + core = core_install.CoreInstall() + core.init() + if add_group(core) is False: + Error_Found = True + #log.error("Failed to add lp group to user[%s]. Manually add 'lp' group to usergroups"%prop.username) + dialog.showMessage("User must be part of 'lp' group.\nManually add 'lp' group to '%s' user. " %prop.username) + else: + dialog.showSuccessMessage("Groups added successfully and reboot is required. Please reboot system to take effect.") + + + is_hpcups_installed = to_bool(sys_conf.get('configure', 'hpcups-install', '0')) + is_hpijs_installed = to_bool(sys_conf.get('configure', 'hpijs-install', '0')) +# tui.header("INSTALLED CUPS PRINTER QUEUES") + + + status, output = utils.run('lpstat -v') + + cups_printers = [] + for p in output.splitlines(): + try: + match = LPSTAT_PATTERN.search(p) + printer_name = match.group(1) + device_uri = match.group(2) + cups_printers.append((printer_name, device_uri)) + except AttributeError: + pass + + log.debug(cups_printers) + log.debug("HPCups installation=%d HPIJS installation =%d" %(is_hpcups_installed, is_hpijs_installed)) + if cups_printers: + mapofDevices={} + + for p in cups_printers: + printer_name, device_uri = p + + if device_uri.startswith("cups-pdf:/"): + continue + + log.debug(log.bold(printer_name)) + log.debug(log.bold('-'*len(printer_name))) + + try: + back_end, is_hp, bus, model, serial, dev_file, host, zc, port = parseDeviceURI(device_uri) + except Error: + back_end, is_hp, bus, model, serial, dev_file, host, zc, port = '', False, '', '', '', '', '', '', 1 + if 'HP' in device_uri: + is_hp = True + + log.debug("Device URI: %s" % device_uri) + ppd_file = os.path.join('/etc/cups/ppd', printer_name + '.ppd') + if os.path.exists(ppd_file): + log.debug("PPD: %s" % ppd_file) + + fileptr = file(ppd_file, 'r').read(4096) + try: + desc = NICKNAME_PATTERN.search(fileptr).group(1) + except AttributeError: + desc = '' + + log.debug("PPD Description: %s" % desc) + status, output = utils.run('lpstat -p%s' % printer_name) + log.debug("Printer status: %s" % output.replace("\n", "")) + + #### checking for USb devices #### + if USB_PATTERN.search(device_uri): + Key =USB_PATTERN.search(device_uri).group(1) + #### checking for network devices #### + elif NET_PATTERN.search(device_uri): + Key = NET_PATTERN.search(device_uri).group(1) + elif NET_ZC_PATTERN.search(device_uri): + Key = NET_ZC_PATTERN.search(device_uri).group(1) + elif NET_OTHER_PATTERN.search(device_uri): + part_1 = NET_OTHER_PATTERN.search(device_uri).group(1) + part_2 = NET_OTHER_PATTERN.search(device_uri).group(2) + if 'HP' in part_2: + Key = part_2 + else: + log.info("unknown protocol device_uri=%s" %device_uri) + Key=None + else: + log.info("unknown protocol device_uri=%s" %device_uri) + Key=None + + if Key is not None: + Is_Print_Q_Enabled= True + if output.find('Paused') != -1: + Is_Print_Q_Enabled= False + Key=Key+"_"+back_end + log.debug("Key'%s': deviceType '%s' is_hp '%s' bus '%s' model '%s' serial '%s' dev_file '%s' host '%s' zc '%s' port '%s' Enabled'%d'"\ + %( Key,back_end, is_hp, bus, model, serial, dev_file, host, zc, port,Is_Print_Q_Enabled)) + + PPDFileError = False + if back_end == 'hpfax' and not 'HP Fax' in desc: + log.error("Incorrect PPD file for fax queue '%s'. Fax queue must use 'HP-Fax-hplip.ppd'." % printer_name) + PPDFileError = True + elif back_end == 'hp' and 'HP Fax' in desc: + log.error("Incorrect PPD file for print queue '%s'. Print queue must not use 'HP-Fax-hplip.ppd'." % printer_name) + PPDFileError = True + elif back_end not in ('hp', 'hpfax'): + log.warn("Device %s is not HPLIP installed. Device must use the hp: or hpfax: to function in HPLIP."% printer_name) + + ppd_fileType = None + if 'hpcups' in desc: + ppd_fileType = HPCUPS + if not is_hpcups_installed: + PPDFileError = True + elif 'hpijs' in desc: + ppd_fileType = HPIJS + if not is_hpijs_installed: + PPDFileError = True + elif 'Postscript' in desc: + ppd_fileType =HPPS + elif is_hp: + ppd_fileType =HPOTHER + PPDFileError = True + + if ppd_fileType != None: + device1 =DetectedDevice(printer_name, device_uri,back_end, ppd_fileType,PPDFileError, Is_Print_Q_Enabled) + if Key in mapofDevices: + mapofDevices[Key].append(device1) + else: + deviceList=[device1] + mapofDevices[Key]=deviceList + else: + log.warn("%s is not HP Device." %(printer_name)) + + for key,val in mapofDevices.items(): + if len(val) >1: + log.debug("") + log.warn('%d queues of same device %s is configured. Remove unwanted queues.' %(len(val),val[0].PrinterName)) + if Show_result: + Error_Found = True + dialog = QueuesDiagnose(None, "","",QUEUES_MSG_SENDING) + dialog.showMessage("%d queues of same device %s is configured.\nRemove unwanted queues."%(len(val),val[0].PrinterName)) + + for que in val: + Error_msg =None + if 'hp' in que.DeviceType or 'hpfax' in que.DeviceType: + if que.PPDFileError == False: + log.debug("'%s' is configured correctly." %(que.PrinterName)) + else: + log.error("PPD file for '%s' is not correct. Need to choose correct PPD file." %(que.PrinterName)) + Error_msg = QUEUES_INCORRECT_PPD + else: + log.error("'%s' is not configured using HPLIP. Need to remove and re-cofigure from hp-setup." %(que.PrinterName)) + Error_msg =QUEUES_CONFIG_ERROR + + if Error_msg ==None and que.IsEnabled == False: + Error_msg = QUEUES_PAUSED + + if Error_msg != None: + Error_Found = True + dialog = QueuesDiagnose(None, que.PrinterName,que.DeviceURI,Error_msg) + dialog.show() + log.debug("Starting GUI loop...") + app.exec_() + else: + Error_msg =None + log.debug("") + log.debug("Single print queue is configured for '%s'. " %val[0].PrinterName) + if 'hp' in val[0].DeviceType or 'hpfax' in val[0].DeviceType: + if val[0].PPDFileError == False: + log.debug("'%s' is configured correctly." %(val[0].PrinterName)) + else: + log.error("PPD file for '%s' is not correct. Need to choose correct PPD file." %(val[0].PrinterName)) + Error_msg = QUEUES_INCORRECT_PPD + else: + log.error("'%s' is not configured using HPLIP. Need to remove and re-configure using hp-setup." %(val[0].PrinterName)) + Error_msg = QUEUES_CONFIG_ERROR + + if Error_msg ==None and val[0].IsEnabled == False: + Error_msg = QUEUES_PAUSED + + if Error_msg != None: + Error_Found = True + name = val[0].PrinterName + dialog = QueuesDiagnose(None, name, val[0].DeviceURI, Error_msg) + dialog.show() + log.debug("Starting GUI loop...") + app.exec_() + else: + log.debug("No queues found.") + + if Show_result and (Error_Found is False): + dialog = QueuesDiagnose(None, "","",QUEUES_MSG_SENDING) + dialog.showSuccessMessage("Queue(s) configured correctly using HPLIP.") + + +except KeyboardInterrupt: + log.error("User exit") + +log.debug("Done.") diff --git a/fax/ledmfax.py b/fax/ledmfax.py index 6713f723e..7a79d6e77 100644 --- a/fax/ledmfax.py +++ b/fax/ledmfax.py @@ -96,7 +96,7 @@ Content-length: %d\r self.writeLEDM(data) response = cStringIO.StringIO() - while self.readLEDM(4096, response, timeout=5): + while self.readLEDM(512, response, timeout=5): pass response = response.getvalue() @@ -389,7 +389,7 @@ class LEDMFaxSendThread(FaxSendThread): self.dev.writeLEDM(data) response = cStringIO.StringIO() try: - while self.dev.readLEDM(1000, response, timeout=5): + while self.dev.readLEDM(512, response, timeout=5): pass except Error: fax_send_state = FAX_SEND_STATE_ERROR @@ -473,7 +473,7 @@ class LEDMFaxSendThread(FaxSendThread): response = cStringIO.StringIO() try: - while self.dev.readLEDM(1000, response, timeout=5): + while self.dev.readLEDM(512, response, timeout=5): pass except Error: fax_send_state = FAX_SEND_STATE_ERROR @@ -523,7 +523,7 @@ class LEDMFaxSendThread(FaxSendThread): response = cStringIO.StringIO() try: - while self.dev.readLEDM(1000, response, timeout=10): + while self.dev.readLEDM(512, response, timeout=10): pass except Error: fax_send_state = FAX_SEND_STATE_ERROR @@ -562,7 +562,7 @@ class LEDMFaxSendThread(FaxSendThread): response = cStringIO.StringIO() try: - while self.dev.readLEDM(1000, response, timeout=10): + while self.dev.readLEDM(512, response, timeout=10): pass except Error: fax_send_state = FAX_SEND_STATE_ERROR diff --git a/fax/ppd/HP-Fax-hpcups.ppd.gz b/fax/ppd/HP-Fax-hpcups.ppd.gz Binary files differindex 0d6e094e6..bafd439e2 100644 --- a/fax/ppd/HP-Fax-hpcups.ppd.gz +++ b/fax/ppd/HP-Fax-hpcups.ppd.gz diff --git a/fax/ppd/HP-Fax-hpijs.ppd.gz b/fax/ppd/HP-Fax-hpijs.ppd.gz Binary files differindex 510a0bd27..612bcaf55 100644 --- a/fax/ppd/HP-Fax-hpijs.ppd.gz +++ b/fax/ppd/HP-Fax-hpijs.ppd.gz diff --git a/fax/ppd/HP-Fax2-hpcups.ppd.gz b/fax/ppd/HP-Fax2-hpcups.ppd.gz Binary files differindex 8c8894ffd..ffc35f34b 100644 --- a/fax/ppd/HP-Fax2-hpcups.ppd.gz +++ b/fax/ppd/HP-Fax2-hpcups.ppd.gz diff --git a/fax/ppd/HP-Fax2-hpijs.ppd.gz b/fax/ppd/HP-Fax2-hpijs.ppd.gz Binary files differindex 50fe7ce3f..b2280739d 100644 --- a/fax/ppd/HP-Fax2-hpijs.ppd.gz +++ b/fax/ppd/HP-Fax2-hpijs.ppd.gz diff --git a/fax/ppd/HP-Fax3-hpcups.ppd.gz b/fax/ppd/HP-Fax3-hpcups.ppd.gz Binary files differindex 5589bbdf6..4e289b347 100644 --- a/fax/ppd/HP-Fax3-hpcups.ppd.gz +++ b/fax/ppd/HP-Fax3-hpcups.ppd.gz diff --git a/fax/ppd/HP-Fax3-hpijs.ppd.gz b/fax/ppd/HP-Fax3-hpijs.ppd.gz Binary files differindex 524167ded..cb6116c18 100644 --- a/fax/ppd/HP-Fax3-hpijs.ppd.gz +++ b/fax/ppd/HP-Fax3-hpijs.ppd.gz diff --git a/fax/ppd/HP-Fax4-hpcups.ppd.gz b/fax/ppd/HP-Fax4-hpcups.ppd.gz Binary files differindex 542c7bbe2..40a6f5bf9 100644 --- a/fax/ppd/HP-Fax4-hpcups.ppd.gz +++ b/fax/ppd/HP-Fax4-hpcups.ppd.gz diff --git a/fax/ppd/HP-Fax4-hpijs.ppd.gz b/fax/ppd/HP-Fax4-hpijs.ppd.gz Binary files differindex 8a4e4cbb0..2fee3b0c8 100644 --- a/fax/ppd/HP-Fax4-hpijs.ppd.gz +++ b/fax/ppd/HP-Fax4-hpijs.ppd.gz diff --git a/foomatic_drv.inc b/foomatic_drv.inc index 06e0365b0..422344d67 100644 --- a/foomatic_drv.inc +++ b/foomatic_drv.inc @@ -63,6 +63,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz \ + ppd/hpijs/hp-laserjet_cp_1025nw-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz \ ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz \ @@ -105,7 +106,6 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz \ ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1027nw-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz \ @@ -167,7 +167,6 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1021-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz \ ppd/hpijs/hp-dj450-hpijs.ppd.gz \ @@ -181,6 +180,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6100-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz \ @@ -239,6 +239,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz \ + ppd/hpijs/hp-laserjet_cp_1025-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz \ @@ -257,7 +258,6 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1022-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz \ ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz \ @@ -324,6 +324,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-officejet-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6700-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz \ ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz \ @@ -421,9 +422,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1023-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz \ - ppd/hpijs/hp-officejet_series_500-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz \ @@ -566,11 +565,9 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz \ - ppd/hpijs/hp-laserjet_cp1028nw-hpijs.ppd.gz \ ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz \ - ppd/hpijs/hp-laserjet_professional_p1102s-hpijs.ppd.gz \ ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz \ @@ -629,6 +626,7 @@ foomatic_ppd_printers = \ ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz \ ppd/hpijs/hp-cp1160-hpijs.ppd.gz \ ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz \ + ppd/hpijs/hp-officejet_6600-hpijs.ppd.gz \ ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz \ ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz \ ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz \ diff --git a/hplip.list.in b/hplip.list.in index 56a46891d..b277c0947 100644 --- a/hplip.list.in +++ b/hplip.list.in @@ -250,6 +250,8 @@ f 0644 root root $ppd/HP prnt/ps/*.ppd.gz @epm_full@f 644 root root $home/installer/__init__.py installer/__init__.py @epm_full@f 644 root root $home/installer/dcheck.py installer/dcheck.py @epm_full@f 644 root root $home/installer/core_install.py installer/core_install.py +@epm_full@f 755 root root $home/uninstall.py uninstall.py +@epm_full@f 755 root root $home/upgrade.py upgrade.py @epm_full@f 755 root root $home/colorcal.py colorcal.py @epm_full@d 775 root root $home/prnt - @epm_full@f 644 root root $home/prnt/pcl.py prnt/pcl.py @@ -263,6 +265,11 @@ f 0644 root root $ppd/HP prnt/ps/*.ppd.gz @epm_full@f 644 root root $home/pcard/__init__.py pcard/__init__.py @epm_full@f 644 root root $home/pcard/photocard.py pcard/photocard.py @epm_full@f 755 root root $home/info.py info.py +@epm_full@f 755 root root $home/wificonfig.py wificonfig.py +@epm_full@f 755 root root $home/devicesettings.py devicesettings.py +@epm_full@f 755 root root $home/config_usb_printer.py config_usb_printer.py +@epm_full@f 755 root root $home/diagnose_queues.py diagnose_queues.py + # docs @epm_full@f 644 root root $docdir doc/* @epm_full@d 775 root root $docdir/images - @@ -300,6 +307,10 @@ f 0644 root root $ppd/HP prnt/ps/*.ppd.gz @epm_full@l 755 root root $bindir/hp-query ../share/hplip/query.py @epm_full@l 755 root root $bindir/hp-wificonfig ../share/hplip/wificonfig.py @epm_full@l 755 root root $bindir/hp-devicesettings ../share/hplip/devicesettings.py +@epm_full@l 755 root root $bindir/hp-uninstall ../share/hplip/uninstall.py +@epm_full@l 755 root root $bindir/hp-upgrade ../share/hplip/upgrade.py +@epm_full@l 755 root root $bindir/hp-config_usb_printer ../share/hplip/config_usb_printer.py +@epm_full@l 755 root root $bindir/hp-diagnose_queues ../share/hplip/diagnose_queues.py # qt4 @epm_full@@epm_qt4@d 775 root root $home/ui4 - @@ -434,7 +445,7 @@ EOF f 0644 root root $docdir/license.txt prnt/plugins/license.txt f 0644 root root $docdir/COPYING prnt/plugins/license.txt f 0644 root root $docdir/copyright prnt/plugins/copyright -f 0644 root root /var/lib/hp/hplip.state hplip-plugin.state +d 0755 root root /var/lib/hp/ - f 0644 root root $home/data/firmware data/firmware/*.fw.gz d 0775 root root $home/data/plugin - d 0775 root lp /var/log/hp - @@ -445,6 +456,7 @@ d 0775 root lp /var/log/hp - %system !darwin @epm_print_only_exclude@f 0644 root root /etc/udev/rules.d data/rules/86-hpmud*.rules +@epm_print_only_exclude@f 0644 root root /etc/udev/rules.d data/rules/56-hpmud_add_printer.rules f 0755 root root $home/prnt/plugins/lj-${machine}.so prnt/plugins/lj-${machine}.so l 0755 root root $home/prnt/plugins/lj.so lj-${machine}.so @epm_print_only_exclude@d 0775 root root $home/scan/plugins - @@ -456,6 +468,8 @@ l 0755 root root $home/prnt/plugins/lj.so lj-${machine}.so @epm_print_only_exclude@l 0755 root root $home/scan/plugins/bb_soap.so bb_soap-${machine}.so @epm_print_only_exclude@f 0755 root root $home/fax/plugins/fax_marvell-${machine}.so fax/plugins/fax_marvell-${machine}.so @epm_print_only_exclude@l 0755 root root $home/fax/plugins/fax_marvell.so fax_marvell-${machine}.so + + %system all %postinstall <<EOF ver=`echo $version | sed 's/\([0-9]*.[0-9]*.[0-9]*\).*/\1/'` @@ -468,11 +482,13 @@ EOF %else f 0644 root root $docdir/COPYING COPYING f 0644 root root $docdir/copyright copyright -f 0644 root root /var/lib/hp/hplip.state hplip.state +d 0755 root root /var/lib/hp/ - d 0775 root lp /var/log/hp - %system !darwin @epm_print_only_exclude@f 0644 root root /etc/udev/rules.d/56-hpmud_support.rules data/rules/56-hpmud_support.rules @epm_print_only_exclude@f 0644 root root /etc/udev/rules.d/86-hpmud_plugin.rules data/rules/86-hpmud_plugin.rules +@epm_print_only_exclude@f 0644 root root /etc/udev/rules.d/56-hpmud_add_printer.rules data/rules/56-hpmud_add_printer.rules + %system all %endif #end PLUGIN diff --git a/hplip.state b/hplip.state deleted file mode 100644 index 46d5f18fb..000000000 --- a/hplip.state +++ /dev/null @@ -1,6 +0,0 @@ -# hplip.state - HPLIP runtime persistent variables. - -[plugin] -installed=0 -eula=0 - @@ -349,16 +349,6 @@ def handle_hpdio_event(event, bytes_written): def handle_plugin_install(): -# child_process=os.fork() -# if child_process ==0: ### child process -# child_pid=os.getpid() -# utils.run('hp-diagnose_plugin',True, None, 1, False) -# os.kill(child_pid,signal.SIGKILL) -# -# else: ## parent process -# log.debug("Started Plug-in installation wizard") - -##### TBD: Valdiation pending for Plug-in is already running or not?... child_process=os.fork() if child_process== 0: # child process lockObj = utils.Sync_Lock("/tmp/pluginInstall.tmp") @@ -366,7 +356,7 @@ def handle_plugin_install(): child_pid=os.getpid() core = core_install.CoreInstall() core.set_plugin_version() - if not core.check_for_plugin(): + if core.check_for_plugin() != PLUGIN_INSTALLED: sts,out = utils.run('hp-diagnose_plugin',True, None, 1, False) if sts != 0: log.error("Failed to load hp-diagnose_plugin") @@ -376,16 +366,32 @@ def handle_plugin_install(): lockObj.release() os.kill(child_pid,signal.SIGKILL) - else: #parent process log.debug("Started Plug-in installation wizard") +def handle_printer_diagnose(): + path = utils.which('hp-diagnose_queues') + if path: + path = os.path.join(path, 'hp-diagnose_queues') + else: + log.error("Unable to find hp-diagnose_queues on PATH.") + return + + log.debug("Running hp-diagnose_queues: %s" % (path)) + os.spawnlp(os.P_NOWAIT, path, 'hp-diagnose_queues','-s') + def handle_event(event, more_args=None): #global polling_blocked #global request_queue + # checking if any zombie child process exists. then cleaning same. + try: + os.waitpid(0, os.WNOHANG) + except OSError: + pass + log.debug("Handling event...") if more_args is None: @@ -397,6 +403,10 @@ def handle_event(event, more_args=None): handle_plugin_install() return + if event.event_code == EVENT_DIAGNOSE_PRINTQUEUE: + handle_printer_diagnose() + return + if event.device_uri and check_device(event.device_uri) != ERROR_SUCCESS: return @@ -547,7 +557,7 @@ def handle_session_signal(*args, **kwds): def run(write_pipe1=None, # write pipe to systemtray write_pipe2=None, # write pipe to hpdio read_pipe3=None): # read pipe from hpdio - + global dbus_loop, main_loop global system_bus, session_bus global w1, w2, r3 diff --git a/installer/core_install.py b/installer/core_install.py index 82cd8ab9d..7f1578166 100644 --- a/installer/core_install.py +++ b/installer/core_install.py @@ -1,2051 +1,2387 @@ -# -*- coding: utf-8 -*-
-#
-# (c) Copyright 2003-2009 Hewlett-Packard Development Company, L.P.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# Author: Don Welch
-#
-
-# Std Lib
-import sys
-import os
-import os.path
-import re
-import time
-import cStringIO
-import grp
-import pwd
-import tarfile
-
-try:
- import hashlib # new in 2.5
-
- def get_checksum(s):
- return hashlib.sha1(s).hexdigest()
-
-except ImportError:
- import sha # deprecated in 2.6/3.0
-
- def get_checksum(s):
- return sha.new(s).hexdigest()
-
-
-import urllib # TODO: Replace with urllib2 (urllib is deprecated in Python 3.0)
-
-
-# Local
-from base.g import *
-from base.codes import *
-from base import utils, pexpect
-from dcheck import *
-
-
-
-DISTRO_UNKNOWN = 0
-DISTRO_VER_UNKNOWN = '0.0'
-
-MODE_INSTALLER = 0 # hplip-install/hp-setup
-MODE_CHECK = 1 # hp-check
-MODE_CREATE_DOCS = 2 # create_docs
-
-TYPE_STRING = 1
-TYPE_LIST = 2
-TYPE_BOOL = 3
-TYPE_INT = 4
-
-DEPENDENCY_RUN_TIME = 1
-DEPENDENCY_COMPILE_TIME = 2
-DEPENDENCY_RUN_AND_COMPILE_TIME = 3
-
-# Plug-in download errors
-PLUGIN_INSTALL_ERROR_NONE = 0
-PLUGIN_INSTALL_ERROR_PLUGIN_FILE_NOT_FOUND = 1
-PLUGIN_INSTALL_ERROR_DIGITAL_SIG_NOT_FOUND = 2
-PLUGIN_INSTALL_ERROR_DIGITAL_SIG_BAD = 3
-PLUGIN_INSTALL_ERROR_PLUGIN_FILE_CHECKSUM_ERROR = 4
-PLUGIN_INSTALL_ERROR_NO_NETWORK = 5
-PLUGIN_INSTALL_ERROR_DIRECTORY_ERROR = 6
-PLUGIN_INSTALL_ERROR_UNABLE_TO_RECV_KEYS = 7
-
-
-PING_TARGET = "www.google.com"
-HTTP_GET_TARGET = "http://www.google.com"
-PLUGIN_FALLBACK_LOCATION = 'http://hplipopensource.com/hplip-web/plugin/'
-
-EXPECT_WORD_LIST = [
- pexpect.EOF, # 0
- pexpect.TIMEOUT, # 1
- "Continue?", # 2 (for zypper)
- "passwor[dt]", # en/de/it/ru
- "kennwort", # de?
- "password for", # en
- "mot de passe", # fr
- "contraseña", # es
- "palavra passe", # pt
- "口令", # zh
- "wachtwoord", # nl
- "heslo", # czech
-]
-
-# Mapping from patterns to probability contribution of pattern
-# Example code from David Mertz' Text Processing in Python.
-# Released in the Public Domain.
-err_pats = {r'(?is)<TITLE>.*?(404|403).*?ERROR.*?</TITLE>': 0.95,
- r'(?is)<TITLE>.*?ERROR.*?(404|403).*?</TITLE>': 0.95,
- r'(?is)<TITLE>ERROR</TITLE>': 0.30,
- r'(?is)<TITLE>.*?ERROR.*?</TITLE>': 0.10,
- r'(?is)<META .*?(404|403).*?ERROR.*?>': 0.80,
- r'(?is)<META .*?ERROR.*?(404|403).*?>': 0.80,
- r'(?is)<TITLE>.*?File Not Found.*?</TITLE>': 0.80,
- r'(?is)<TITLE>.*?Not Found.*?</TITLE>': 0.40,
- r'(?is)<BODY.*(404|403).*</BODY>': 0.10,
- r'(?is)<H1>.*?(404|403).*?</H1>': 0.15,
- r'(?is)<BODY.*not found.*</BODY>': 0.10,
- r'(?is)<H1>.*?not found.*?</H1>': 0.15,
- r'(?is)<BODY.*the requested URL.*</BODY>': 0.10,
- r'(?is)<BODY.*the page you requested.*</BODY>': 0.10,
- r'(?is)<BODY.*page.{1,50}unavailable.*</BODY>': 0.10,
- r'(?is)<BODY.*request.{1,50}unavailable.*</BODY>': 0.10,
- r'(?i)does not exist': 0.10,
- }
-# end
-
-
-EXPECT_LIST = []
-for s in EXPECT_WORD_LIST:
- try:
- p = re.compile(s, re.I)
- except TypeError:
- EXPECT_LIST.append(s)
- else:
- EXPECT_LIST.append(p)
-
-OK_PROCESS_LIST = ['adept-notifier',
- 'adept_notifier',
- 'yum-updatesd',
- ]
-
-CONFIGURE_ERRORS = { 1 : "General/unknown error",
- 2 : "libusb not found",
- 3 : "cups-devel not found",
- 4 : "libnetsnmp not found",
- 5 : "netsnmp-devel not found",
- 6 : "python-devel not found",
- 7 : "pthread-devel not found",
- 8 : "ppdev-devel not found",
- 9 : "libcups not found",
- 10 : "libm not found",
- 11 : "libusb-devel not found",
- 12 : "sane-backends-devel not found",
- 13 : "libdbus not found",
- 14 : "dbus-devel not found",
- 15 : "fax requires dbus support",
- 102 : "libjpeg not found",
- 103 : "jpeg-devel not found",
- 104 : "libdi not found",
- }
-
-
-try:
- from functools import update_wrapper
-except ImportError: # using Python version < 2.5
- def trace(f):
- def newf(*args, **kw):
- log.debug("TRACE: func=%s(), args=%s, kwargs=%s" % (f.__name__, args, kw))
- return f(*args, **kw)
- newf.__name__ = f.__name__
- newf.__dict__.update(f.__dict__)
- newf.__doc__ = f.__doc__
- newf.__module__ = f.__module__
- return newf
-else: # using Python 2.5+
- def trace(f):
- def newf(*args, **kw):
- log.debug("TRACE: func=%s(), args=%s, kwargs=%s" % (f.__name__, args, kw))
- return f(*args, **kw)
- return update_wrapper(newf, f)
-
-
-
-class CoreInstall(object):
- def __init__(self, mode=MODE_INSTALLER, ui_mode=INTERACTIVE_MODE, ui_toolkit='qt4'):
- os.umask(0022)
- self.mode = mode
- self.ui_mode = ui_mode
- self.password = ''
- self.version_description, self.version_public, self.version_internal = '', '', ''
- self.bitness = 32
- self.endian = utils.LITTLE_ENDIAN
- self.distro, self.distro_name, self.distro_version = DISTRO_UNKNOWN, '', DISTRO_VER_UNKNOWN
- self.distro_version_supported = False
- self.install_location = '/usr'
- self.hplip_present = False
- self.have_dependencies = {}
- self.native_cups = True
- self.ppd_dir = None
- self.drv_dir = None
- self.distros = {}
- self.network_connected = False
- self.ui_toolkit = ui_toolkit
- self.enable = None
- self.disable = None
- self.plugin_path = "/tmp"
- self.plugin_version = '0.0.0'
- self.plugin_name = ''
- self.reload_dbus = False
-
-
- self.FIELD_TYPES = {
- 'distros' : TYPE_LIST,
- 'index' : TYPE_INT,
- 'versions' : TYPE_LIST,
- 'display_name' : TYPE_STRING,
- 'alt_names': TYPE_LIST,
- 'display': TYPE_BOOL,
- 'notes': TYPE_STRING,
- 'package_mgrs': TYPE_LIST,
- 'package_mgr_cmd':TYPE_STRING,
- 'pre_install_cmd': TYPE_LIST,
- 'pre_depend_cmd': TYPE_LIST,
- 'post_depend_cmd': TYPE_LIST,
- 'hpoj_remove_cmd': TYPE_STRING,
- 'hplip_remove_cmd': TYPE_STRING,
- 'su_sudo': TYPE_STRING,
- 'ppd_install': TYPE_STRING,
- 'udev_mode_fix': TYPE_BOOL,
- 'ppd_dir': TYPE_STRING,
- 'drv_dir' : TYPE_STRING,
- 'fix_ppd_symlink': TYPE_BOOL,
- 'code_name': TYPE_STRING,
- 'supported': TYPE_BOOL, # Supported by installer
- 'release_date': TYPE_STRING,
- 'packages': TYPE_LIST,
- 'commands': TYPE_LIST,
- 'same_as_version' : TYPE_STRING,
- 'scan_supported' : TYPE_BOOL,
- 'fax_supported' : TYPE_BOOL,
- 'pcard_supported' : TYPE_BOOL,
- 'network_supported' : TYPE_BOOL,
- 'parallel_supported' : TYPE_BOOL,
- 'usb_supported' : TYPE_BOOL,
- 'packaged_version': TYPE_STRING, # Version of HPLIP pre-packaged in distro
- 'cups_path_with_bitness' : TYPE_BOOL,
- 'ui_toolkit' : TYPE_STRING, # qt3 or qt4 [or gtk] or none
- 'policykit' : TYPE_BOOL,
- 'native_cups' : TYPE_BOOL,
- 'package_available' : TYPE_BOOL,
- 'package_arch' : TYPE_LIST,
- 'add_user_to_group': TYPE_STRING,
- 'open_mdns_port' : TYPE_LIST, # command to use to open mdns multicast port 5353
- 'acl_rules' : TYPE_BOOL, # Use ACL uDEV rules (Ubuntu 9.10+)
- 'libdir_path' : TYPE_STRING,
- }
-
- # components
- # 'name': ('description', [<option list>])
- self.components = {
- 'hplip': ("HP Linux Imaging and Printing System", ['base', 'network', 'gui_qt4',
- 'fax', 'scan', 'docs']),
- }
-
- self.selected_component = 'hplip'
-
- # options
- # name: (<required>, "<display_name>", [<dependency list>]), ...
- self.options = {
- 'base': (True, 'Required HPLIP base components (including hpcups)', []), # HPLIP
- 'network' : (False, 'Network/JetDirect I/O', []),
- 'gui_qt4' : (False, 'Graphical User Interfaces (Qt4)', []),
- 'fax' : (False, 'PC Send Fax support', []),
- 'scan': (False, 'Scanning support', []),
- 'docs': (False, 'HPLIP documentation (HTML)', []),
- 'policykit': (False, 'Administrative policy framework', []),
- }
-
-
- # holds whether the user has selected (turned on each option)
- # initial values are defaults (for GUI only)
- self.selected_options = {
- 'base': True,
- 'network': True,
- 'gui_qt4': True,
- 'fax': True,
- 'scan': True,
- 'docs': True,
- 'policykit': False,
- 'native_cups': False,
- }
-
- # dependencies
- # 'name': (<required for option>, [<option list>], <display_name>, <check_func>, <runtime/compiletime>), ...
- # Note: any change to the list of dependencies must be reflected in base/distros.py
- self.dependencies = {
- # Required base packages
- 'libjpeg': (True, ['base'], "libjpeg - JPEG library", self.check_libjpeg, DEPENDENCY_RUN_AND_COMPILE_TIME),
- 'libtool': (True, ['base'], "libtool - Library building support services", self.check_libtool, DEPENDENCY_COMPILE_TIME),
- 'cups' : (True, ['base'], 'CUPS - Common Unix Printing System', self.check_cups, DEPENDENCY_RUN_TIME),
- 'cups-devel': (True, ['base'], 'CUPS devel- Common Unix Printing System development files', self.check_cups_devel, DEPENDENCY_COMPILE_TIME),
- 'cups-image': (True, ['base'], "CUPS image - CUPS image development files", self.check_cups_image, DEPENDENCY_COMPILE_TIME),
- 'gcc' : (True, ['base'], 'gcc - GNU Project C and C++ Compiler', self.check_gcc, DEPENDENCY_COMPILE_TIME),
- 'make' : (True, ['base'], "make - GNU make utility to maintain groups of programs", self.check_make, DEPENDENCY_COMPILE_TIME),
- 'python-devel' : (True, ['base'], "Python devel - Python development files", self.check_python_devel, DEPENDENCY_COMPILE_TIME),
- 'libpthread' : (True, ['base'], "libpthread - POSIX threads library", self.check_libpthread, DEPENDENCY_RUN_AND_COMPILE_TIME),
- 'python2x': (True, ['base'], "Python 2.2 or greater - Python programming language", self.check_python2x, DEPENDENCY_RUN_AND_COMPILE_TIME),
- 'python-xml' : (True, ['base'], "Python XML libraries", self.check_python_xml, DEPENDENCY_RUN_TIME),
- 'gs': (True, ['base'], "GhostScript - PostScript and PDF language interpreter and previewer", self.check_gs, DEPENDENCY_RUN_TIME),
- 'libusb': (True, ['base'], "libusb - USB library", self.check_libusb, DEPENDENCY_RUN_AND_COMPILE_TIME),
-
- # Optional base packages
- 'cups-ddk': (False, ['base'], "CUPS DDK - CUPS driver development kit", self.check_cupsddk, DEPENDENCY_RUN_TIME), # req. for .drv PPD installs
-
-
- # Required scan packages
- 'sane': (True, ['scan'], "SANE - Scanning library", self.check_sane, DEPENDENCY_RUN_TIME),
- 'sane-devel' : (True, ['scan'], "SANE - Scanning library development files", self.check_sane_devel, DEPENDENCY_COMPILE_TIME),
-
- # Optional scan packages
- 'xsane': (False, ['scan'], "xsane - Graphical scanner frontend for SANE", self.check_xsane, DEPENDENCY_RUN_TIME),
- 'scanimage': (False, ['scan'], "scanimage - Shell scanning program", self.check_scanimage, DEPENDENCY_RUN_TIME),
- 'pil': (False, ['scan'], "PIL - Python Imaging Library (required for commandline scanning with hp-scan)", self.check_pil, DEPENDENCY_RUN_TIME),
-
- # Required fax packages
- 'python23': (True, ['fax'], "Python 2.3 or greater - Required for fax functionality", self.check_python23, DEPENDENCY_RUN_TIME),
- 'dbus': (True, ['fax'], "DBus - Message bus system", self.check_dbus, DEPENDENCY_RUN_AND_COMPILE_TIME),
- 'python-dbus': (True, ['fax'], "Python DBus - Python bindings for DBus", self.check_python_dbus, DEPENDENCY_RUN_TIME),
-
- # Optional fax packages
- 'reportlab': (False, ['fax'], "Reportlab - PDF library for Python", self.check_reportlab, DEPENDENCY_RUN_TIME),
-
- # Required and optional qt4 GUI packages
- 'pyqt4': (True, ['gui_qt4'], "PyQt 4- Qt interface for Python (for Qt version 4.x)", self.check_pyqt4, DEPENDENCY_RUN_TIME), # PyQt 4.x )
- 'pyqt4-dbus' : (True, ['gui_qt4'], "PyQt 4 DBus - DBus Support for PyQt4", self.check_pyqt4_dbus, DEPENDENCY_RUN_TIME),
- 'policykit': (False, ['gui_qt4'], "PolicyKit - Administrative policy framework", self.check_policykit, DEPENDENCY_RUN_TIME), # optional for non-sudo behavior of plugins (only optional for Qt4 option)
- 'python-notify' : (False, ['gui_qt4'], "Python libnotify - Python bindings for the libnotify Desktop notifications", self.check_pynotify, DEPENDENCY_RUN_TIME), # Optional for libnotify style popups from hp-systray
-
- # Required network I/O packages
- 'libnetsnmp-devel': (True, ['network'], "libnetsnmp-devel - SNMP networking library development files", self.check_libnetsnmp, DEPENDENCY_RUN_AND_COMPILE_TIME),
- 'libcrypto': (True, ['network'], "libcrypto - OpenSSL cryptographic library", self.check_libcrypto, DEPENDENCY_RUN_AND_COMPILE_TIME),
- }
-
- for opt in self.options:
- update_spinner()
- for d in self.dependencies:
- if opt in self.dependencies[d][1]:
- self.options[opt][2].append(d)
-
- self.load_distros()
-
- self.distros_index = {}
- for d in self.distros:
- self.distros_index[self.distros[d]['index']] = d
-
-
- def init(self, callback=None):
- if callback is not None:
- callback("Init...\n")
-
- update_spinner()
-
- # Package manager names
- self.package_mgrs = []
- for d in self.distros:
- update_spinner()
-
- for a in self.distros[d].get('package_mgrs', []):
- if a and a not in self.package_mgrs:
- self.package_mgrs.append(a)
-
- self.version_description, self.version_public, self.version_internal = self.get_hplip_version()
- log.debug("HPLIP Description=%s Public version=%s Internal version = %s" %
- (self.version_description, self.version_public, self.version_internal))
-
- # have_dependencies
- # is each dependency satisfied?
- # start with each one 'No'
- for d in self.dependencies:
- update_spinner()
- self.have_dependencies[d] = False
-
- self.get_distro()
- self.distro_changed()
-
- if callback is not None:
- callback("Distro: %s\n" % self.distro)
-
- self.check_dependencies(callback)
-
- for d in self.dependencies:
- update_spinner()
-
- log.debug("have %s = %s" % (d, self.have_dependencies[d]))
-
- if callback is not None:
- callback("Result: %s = %s\n" % (d, self.have_dependencies[d]))
-
- pid, cmdline = self.check_pkg_mgr()
- if pid:
- log.debug("Running package manager: %s (%d)" % (cmdline, pid) )
-
- self.bitness = utils.getBitness()
- log.debug("Bitness = %d" % self.bitness)
-
- update_spinner()
-
- self.endian = utils.getEndian()
- log.debug("Endian = %d" % self.endian)
-
- update_spinner()
-
- self.distro_name = self.distros_index[self.distro]
- self.distro_version_supported = self.get_distro_ver_data('supported', False)
-
- log.debug("Distro = %s Distro Name = %s Display Name= %s Version = %s Supported = %s" %
- (self.distro, self.distro_name, self.distros[self.distro_name]['display_name'],
- self.distro_version, self.distro_version_supported))
-
- update_spinner()
-
- self.hplip_present = self.check_hplip()
- log.debug("HPLIP (prev install) = %s" % self.hplip_present)
-
- status, output = self.run('cups-config --version')
- self.cups_ver = output.strip()
- log.debug("CUPS version = %s" % self.cups_ver)
-
- if self.distro_name == "ubuntu":
- self.reload_dbus = True
-
- log.debug("DBUS configuration reload possible? %s" % self.reload_dbus)
-
- status, self.sys_uname_info = self.run('uname -a')
- self.sys_uname_info = self.sys_uname_info.replace('\n', '')
- log.debug(self.sys_uname_info)
-
- # Record the installation time/date and version.
- # Also has the effect of making the .hplip.conf file user r/w
- # on the 1st run so that running hp-setup as root doesn't lock
- # the user out of owning the file
- user_conf.set('installation', 'date_time', time.strftime("%x %H:%M:%S", time.localtime()))
- user_conf.set('installation', 'version', self.version_public)
-
- if callback is not None:
- callback("Done")
-
-
- def init_for_docs(self, distro_name, version, bitness=32):
- self.distro_name = distro_name
- self.distro_version = version
-
- try:
- self.distro = self.distros[distro_name]['index']
- except KeyError:
- log.error("Invalid distro name: %s" % distro_name)
- sys.exit(1)
-
- self.bitness = bitness
-
- for d in self.dependencies:
- self.have_dependencies[d] = True
-
- self.enable_ppds = self.get_distro_ver_data('ppd_install', 'ppd') == 'ppd'
- self.ppd_dir = self.get_distro_ver_data('ppd_dir')
- self.drv_dir = self.get_distro_ver_data('drv_dir')
-
- self.distro_version_supported = True # for manual installs
-
-
- def check_dependencies(self, callback=None):
- update_ld_output()
-
- for d in self.dependencies:
- update_spinner()
-
- log.debug("Checking for dependency '%s'...\n" % d)
-
- if callback is not None:
- callback("Checking: %s\n" % d)
-
- self.have_dependencies[d] = self.dependencies[d][3]()
- log.debug("have %s = %s" % (d, self.have_dependencies[d]))
-
- cleanup_spinner()
-
-
- def password_func(self):
- if self.password:
- return self.password
- elif self.ui_mode == INTERACTIVE_MODE:
- import getpass
- return getpass.getpass("Enter password: ")
- else:
- return ''
-
-
- def run(self, cmd, callback=None, timeout=300): # ==> status, output
- if cmd is None:
- return 1, ''
- output = cStringIO.StringIO()
- ok, ret = False, ''
- # Hack! TODO: Fix!
- check_timeout = not (cmd.startswith('xterm') or cmd.startswith('gnome-terminal'))
-
- try:
- child = pexpect.spawn(cmd, timeout=1)
- except pexpect.ExceptionPexpect:
- return 1, ''
-
- try:
- try:
- start = time.time()
-
- while True:
- update_spinner()
-
- i = child.expect_list(EXPECT_LIST)
-
- cb = child.before
- if cb:
- # output
- start = time.time()
- log.log_to_file(cb)
- log.debug(cb)
- output.write(cb)
-
- if callback is not None:
- if callback(cb): # cancel
- break
-
- elif check_timeout:
- # no output
- span = int(time.time()-start)
-
- if span:
- if span % 5 == 0:
- log.debug("No output seen in %d secs" % span)
-
- if span > timeout:
- log.error("No output seen in over %d sec... (Is the CD-ROM/DVD source repository enabled? It shouldn't be!)" % timeout)
- child.close()
- child.terminate(force=True)
- break
-
- if i == 0: # EOF
- ok, ret = True, output.getvalue()
- break
-
- elif i == 1: # TIMEOUT
- continue
-
- elif i == 2: # zypper "Continue?"
- child.sendline("YES")
-
- else: # password
- child.sendline(self.password)
-
- except (Exception, pexpect.ExceptionPexpect):
- log.exception()
-
- finally:
- cleanup_spinner()
-
- try:
- child.close()
- except OSError:
- pass
-
- if ok:
- return child.exitstatus, ret
- else:
- return 1, ''
-
-
- def get_distro(self):
- log.debug("Determining distro...")
- self.distro, self.distro_version = DISTRO_UNKNOWN, '0.0'
-
- found = False
-
- lsb_release = utils.which("lsb_release")
-
- if lsb_release:
- log.debug("Using 'lsb_release -is/-rs'")
- cmd = os.path.join(lsb_release, "lsb_release")
- status, name = self.run(cmd + ' -is')
- name = name.lower().strip()
- log.debug("Distro name=%s" % name)
-
- if not status and name:
- status, ver = self.run(cmd + ' -rs')
- ver = ver.lower().strip()
- log.debug("Distro version=%s" % ver)
-
- if not status and ver:
- for d in self.distros:
- if name.find(d) > -1:
- self.distro = self.distros[d]['index']
- found = True
- self.distro_version = ver
- break
-
- if not found:
- try:
- name = file('/etc/issue', 'r').read().lower().strip()
- except IOError:
- # Some O/Ss don't have /etc/issue (Mac)
- self.distro, self.distro_version = DISTRO_UNKNOWN, '0.0'
- else:
- for d in self.distros:
- if name.find(d) > -1:
- self.distro = self.distros[d]['index']
- found = True
- else:
- for x in self.distros[d].get('alt_names', ''):
- if x and name.find(x) > -1:
- self.distro = self.distros[d]['index']
- found = True
- break
-
- if found:
- break
-
- if found:
- for n in name.split():
- m= n
- if '.' in n:
- m = '.'.join(n.split('.')[:2])
-
- try:
- float(m)
- except ValueError:
- try:
- int(m)
- except ValueError:
- self.distro_version = '0.0'
- else:
- self.distro_version = m
- break
- else:
- self.distro_version = m
- break
-
- log.debug("/etc/issue: %s %s" % (name, self.distro_version))
-
- log.debug("distro=%d, distro_version=%s" % (self.distro, self.distro_version))
-
-
- def distro_changed(self):
- ppd_install = self.get_distro_ver_data('ppd_install', 'ppd')
-
- if ppd_install not in ('ppd', 'drv'):
- log.warning("Invalid ppd_install value: %s" % ppd_install)
-
- self.enable_ppds = (ppd_install == 'ppd')
-
- log.debug("Enable PPD install: %s (False=drv)" % self.enable_ppds)
-
- self.ppd_dir = self.get_distro_ver_data('ppd_dir')
-
- self.drv_dir = self.get_distro_ver_data('drv_dir')
- if not self.enable_ppds and not self.drv_dir:
- log.warning("Invalid drv_dir value: %s" % self.drv_dir)
-
- self.distro_version_supported = self.get_distro_ver_data('supported', False)
- self.selected_options['fax'] = self.get_distro_ver_data('fax_supported', True)
- self.selected_options['network'] = self.get_distro_ver_data('network_supported', True)
- self.selected_options['scan'] = self.get_distro_ver_data('scan_supported', True)
- self.selected_options['policykit'] = self.get_distro_ver_data('policykit', False)
- self.native_cups = self.get_distro_ver_data('native_cups', False)
-
- # Adjust required flag based on the distro ver ui_toolkit value
- ui_toolkit = self.get_distro_ver_data('ui_toolkit', 'qt4').lower()
-
- if ui_toolkit == 'qt4':
- log.debug("Default UI toolkit: Qt4")
- self.ui_toolkit = 'qt4'
- self.selected_options['gui_qt4'] = True
-
- # todo: gtk
- else:
- self.selected_options['gui_qt4'] = False
-
- # Override with --qt4 command args
- if self.enable is not None:
- if 'qt4' in self.enable:
- log.debug("User selected UI toolkit: Qt4")
- self.ui_toolkit = 'qt4'
- self.selected_options['gui_qt4'] = True
-
- if self.disable is not None:
- if 'qt4' in self.disable:
- log.debug("User deselected UI toolkit: Qt4")
- self.selected_options['gui_qt4'] = False
-
-
- def __fixup_data(self, key, data):
- field_type = self.FIELD_TYPES.get(key, TYPE_STRING)
- #log.debug("%s (%s) %d" % (key, data, field_type))
-
- if field_type == TYPE_BOOL:
- return utils.to_bool(data)
-
- elif field_type == TYPE_STRING:
- if type('') == type(data):
- return data.strip()
- else:
- return data
-
- elif field_type == TYPE_INT:
- try:
- return int(data)
- except ValueError:
- return 0
-
- elif field_type == TYPE_LIST:
- return [x for x in data.split(',') if x]
-
-
- def load_distros(self):
- if self.mode == MODE_INSTALLER:
- distros_dat_file = os.path.join('installer', 'distros.dat')
-
- elif self.mode == MODE_CREATE_DOCS:
- distros_dat_file = os.path.join('..', '..', 'installer', 'distros.dat')
-
- else: # MODE_CHECK
- distros_dat_file = os.path.join(prop.home_dir, 'installer', 'distros.dat')
-
- if not os.path.exists(distros_dat_file):
- log.debug("DAT file not found at %s. Using local relative path..." % distros_dat_file)
- distros_dat_file = os.path.join('installer', 'distros.dat')
-
- distros_dat = ConfigBase(distros_dat_file)
- distros_list = self.__fixup_data('distros', distros_dat.get('distros', 'distros'))
- log.debug(distros_list)
-
- for distro in distros_list:
- update_spinner()
- d = {}
-
- if not distros_dat.has_section(distro):
- log.debug("Missing distro section in distros.dat: [%s]" % distro)
- continue
-
- for key in distros_dat.keys(distro):
- d[key] = self.__fixup_data(key, distros_dat.get(distro, key))
-
- self.distros[distro] = d
- versions = self.__fixup_data("versions", distros_dat.get(distro, 'versions'))
- self.distros[distro]['versions'] = {}
-
- for ver in versions:
- same_as_version, supported = False, True
- v = {}
- ver_section = "%s:%s" % (distro, ver)
-
- if not distros_dat.has_section(ver_section):
- log.error("Missing version section in distros.dat: [%s:%s]" % (distro, ver))
- continue
-
- if 'same_as_version' in distros_dat.keys(ver_section):
- same_as_version = True
-
- supported = self.__fixup_data('supported', distros_dat.get(ver_section, 'supported'))
-
- for key in distros_dat.keys(ver_section):
- v[key] = self.__fixup_data(key, distros_dat.get(ver_section, key))
-
- self.distros[distro]['versions'][ver] = v
- self.distros[distro]['versions'][ver]['dependency_cmds'] = {}
-
- if same_as_version: # or not supported:
- continue
-
- for dep in self.dependencies:
- dd = {}
- dep_section = "%s:%s:%s" % (distro, ver, dep)
-
- if not distros_dat.has_section(dep_section) and not same_as_version:
- log.debug("Missing dependency section in distros.dat: [%s:%s:%s]" % (distro, ver, dep))
- continue
-
- #if same_as_version:
- # continue
-
- for key in distros_dat.keys(dep_section):
- dd[key] = self.__fixup_data(key, distros_dat.get(dep_section, key))
-
- self.distros[distro]['versions'][ver]['dependency_cmds'][dep] = dd
-
- versions = self.distros[distro]['versions']
- for ver in versions:
- ver_section = "%s:%s" % (distro, ver)
-
- if 'same_as_version' in distros_dat.keys(ver_section):
- v = self.__fixup_data("same_as_version", distros_dat.get(ver_section, 'same_as_version'))
- log.debug("Setting %s:%s to %s:%s" % (distro, ver, distro, v))
-
- try:
- vv = self.distros[distro]['versions'][v].copy()
- vv['same_as_version'] = v
- self.distros[distro]['versions'][ver] = vv
- except KeyError:
- log.debug("Missing 'same_as_version=' version in distros.dat for section [%s:%s]." % (distro, v))
- continue
-
- #import pprint
- #pprint.pprint(self.distros)
-
- def pre_install(self):
- pass
-
-
- def pre_depend(self):
- pass
-
-
- def check_python2x(self):
- py_ver = sys.version_info
- py_major_ver, py_minor_ver = py_ver[:2]
- log.debug("Python ver=%d.%d" % (py_major_ver, py_minor_ver))
- return py_major_ver >= 2
-
-
- def check_gcc(self):
- return check_tool('gcc --version', 0) and check_tool('g++ --version', 0)
-
-
- def check_make(self):
- return check_tool('make --version', 3.0)
-
-
- def check_libusb(self):
- if not check_lib('libusb'):
- return False
-
- return len(locate_file_contains("usb.h", '/usr/include', 'usb_init(void)'))
-
-
- def check_libjpeg(self):
- return check_lib("libjpeg") and check_file("jpeglib.h")
-
-
- def check_libcrypto(self):
- return check_lib("libcrypto") and check_file("crypto.h")
-
-
- def check_libpthread(self):
- return check_lib("libpthread") and check_file("pthread.h")
-
-
- def check_libnetsnmp(self):
- return check_lib("libnetsnmp") and check_file("net-snmp-config.h")
-
-
- def check_reportlab(self):
- try:
- log.debug("Trying to import 'reportlab'...")
- import reportlab
-
- ver = reportlab.Version
- try:
- ver_f = float(ver)
- except ValueError:
- log.debug("Can't determine version.")
- return False
- else:
- log.debug("Version: %.1f" % ver_f)
- if ver_f >= 2.0:
- log.debug("Success.")
- return True
- else:
- return False
-
- except ImportError:
- log.debug("Failed.")
- return False
-
-
- def check_python23(self):
- py_ver = sys.version_info
- py_major_ver, py_minor_ver = py_ver[:2]
- log.debug("Python ver=%d.%d" % (py_major_ver, py_minor_ver))
- return py_major_ver >= 2 and py_minor_ver >= 3
-
-
- def check_python_xml(self):
- try:
- import xml.parsers.expat
- except ImportError:
- return False
- else:
- return True
-
-
- def check_sane(self):
- return check_lib('libsane')
-
-
- def check_sane_devel(self):
- return len(locate_file_contains("sane.h", '/usr/include', 'extern SANE_Status sane_init'))
-
-
- def check_xsane(self):
- if os.getenv('DISPLAY'):
- return check_tool('xsane --version', 0.9) # will fail if X not running...
- else:
- return bool(utils.which("xsane")) # ...so just see if it installed somewhere
-
-
- def check_scanimage(self):
- return check_tool('scanimage --version', 1.0)
-
-
- def check_gs(self):
- return check_tool('gs -v', 7.05)
-
-
- def check_pyqt4(self):
- if self.ui_toolkit == 'qt4':
- try:
- import PyQt4
- except ImportError:
- return False
- else:
- return True
-
- else:
- return False
-
-
- def check_pyqt4_dbus(self):
- if self.ui_toolkit == 'qt4':
- try:
- from dbus.mainloop.qt import DBusQtMainLoop
- except ImportError:
- return False
- else:
- return True
- else:
- return False
-
-
- def check_python_devel(self):
- return check_file('Python.h')
-
-
- def check_pynotify(self):
- try:
- import pynotify
- except ImportError:
- return False
-
- return True
-
-
- def check_python_dbus(self):
- log.debug("Checking for python-dbus (>= 0.80)...")
- try:
- import dbus
- try:
- ver = dbus.version
- log.debug("Version: %s" % '.'.join([str(x) for x in dbus.version]))
- return ver >= (0,80,0)
-
- except AttributeError:
- try:
- ver = dbus.__version__
- log.debug("Version: %s" % dbus.__version__)
- log.debug("HPLIP requires dbus version > 0.80.")
- return False
-
- except AttributeError:
- log.debug("Unknown version. HPLIP requires dbus version > 0.80.")
- return False
-
- except ImportError:
- return False
-
-
- def check_python_ctypes(self):
- try:
- import ctypes
- return True
- except ImportError:
- return False
-
-
- def check_dbus(self):
- log.debug("Checking for dbus running and header files present (dbus-devel)...")
- return check_ps(['dbus-daemon']) and \
- len(locate_file_contains("dbus-message.h", '/usr/include', 'dbus_message_new_signal'))
-
-
- def check_cups_devel(self):
- return check_file('cups.h') and bool(utils.which('lpr'))
-
-
- def check_cups(self):
- status, output = self.run('lpstat -r')
- if status > 0:
- log.debug("CUPS is not running.")
- return False
- else:
- log.debug("CUPS is running.")
- return True
-
-
- def check_cups_image(self):
- return check_file("raster.h", "/usr/include/cups")
-
-
- def check_hplip(self):
- log.debug("Checking for HPLIP...")
- return locate_files('hplip.conf', '/etc/hp')
-
-
- def check_hpssd(self):
- log.debug("Checking for hpssd...")
- return check_ps(['hpssd'])
-
-
- def check_libtool(self):
- log.debug("Checking for libtool...")
- return check_tool('libtool --version')
-
-
- def check_pil(self):
- log.debug("Checking for PIL...")
- try:
- import Image
- return True
- except ImportError:
- return False
-
-
- def check_cupsddk(self):
- log.debug("Checking for cups-ddk...")
- # TODO: Compute these paths some way or another...
- #return check_tool("/usr/lib/cups/driver/drv list") and os.path.exists("/usr/share/cupsddk/include/media.defs")
- return (check_file('drv', "/usr/lib/cups/driver") or check_file('drv', "/usr/lib64/cups/driver")) and \
- check_file('media.defs', "/usr/share/cupsddk/include")
-
-
- def check_policykit(self):
- log.debug("Checking for PolicyKit...")
- return (check_file('PolicyKit.conf', "/etc/PolicyKit") and check_file('org.gnome.PolicyKit.AuthorizationManager.service', "/usr/share/dbus-1/services")) or (check_file('50-localauthority.conf', "/etc/polkit-1/localauthority.conf.d") and check_file('org.freedesktop.PolicyKit1.service', "/usr/share/dbus-1/system-services"))
-
- def check_pkg_mgr(self):
- """
- Check if any pkg mgr processes are running
- """
- log.debug("Searching for '%s' in running processes..." % self.package_mgrs)
-
- processes = get_process_list()
-
- for pid, cmdline in processes:
- for p in self.package_mgrs:
- if p in cmdline:
- for k in OK_PROCESS_LIST:
- #print k, cmdline
- if k in cmdline:
- break
-
- else:
- log.debug("Found: %s (%d)" % (cmdline, pid))
- return (pid, cmdline)
-
- log.debug("Not found")
- return (0, '')
-
-
- def get_hplip_version(self):
- self.version_description, self.version_public, self.version_internal = '', '', ''
-
- if self.mode == MODE_INSTALLER:
- ac_init_pat = re.compile(r"""AC_INIT\(\[(.*?)\], *\[(.*?)\], *\[(.*?)\], *\[(.*?)\] *\)""", re.IGNORECASE)
-
- try:
- config_in = open('./configure.in', 'r')
- except IOError:
- self.version_description, self.version_public, self.version_internal = \
- '', sys_conf.get('configure', 'internal-tag', '0.0.0'), prop.installed_version
- else:
- for c in config_in:
- if c.startswith("AC_INIT"):
- match_obj = ac_init_pat.search(c)
- self.version_description = match_obj.group(1)
- self.version_public = match_obj.group(2)
- self.version_internal = match_obj.group(3)
- name = match_obj.group(4)
- break
-
- config_in.close()
-
- if name != 'hplip':
- log.error("Invalid archive!")
-
-
- else: # MODE_CHECK
- try:
- self.version_description, self.version_public, self.version_internal = \
- '', sys_conf.get('configure', 'internal-tag', '0.0.0'), prop.installed_version
- except KeyError:
- self.version_description, self.version_public, self.version_internal = '', '', ''
-
- return self.version_description, self.version_public, self.version_internal
-
-
- def configure(self):
- configure_cmd = './configure'
- configuration = {}
- dbus_avail = self.have_dependencies['dbus'] and self.have_dependencies['python-dbus']
- configuration['network-build'] = self.selected_options['network']
- configuration['fax-build'] = self.selected_options['fax'] and dbus_avail
- configuration['dbus-build'] = dbus_avail
- configuration['qt4'] = self.selected_options['gui_qt4']
- configuration['scan-build'] = self.selected_options['scan']
- configuration['doc-build'] = self.selected_options['docs']
- configuration['policykit'] = self.selected_options['policykit']
-
- # Setup printer driver configure flags based on distro data...
- if self.native_cups: # hpcups
- configuration['hpcups-install'] = True
- configuration['hpijs-install'] = False
- configuration['foomatic-ppd-install'] = False
- configuration['foomatic-drv-install'] = False
-
- if self.enable_ppds:
- configuration['cups-ppd-install'] = True
- configuration['cups-drv-install'] = False
- else:
- configuration['cups-ppd-install'] = False
- configuration['cups-drv-install'] = True
-
- else: # HPIJS/foomatic
- configuration['hpcups-install'] = False
- configuration['hpijs-install'] = True
- configuration['cups-ppd-install'] = False
- configuration['cups-drv-install'] = False
-
- if self.enable_ppds:
- configuration['foomatic-ppd-install'] = True
- configuration['foomatic-drv-install'] = False
- else:
- configuration['foomatic-ppd-install'] = False
- configuration['foomatic-drv-install'] = True
-
-
- # ... and then override and adjust for consistency with passed in parameters
- if self.enable is not None:
- for c in self.enable:
- if c == 'hpcups-install':
- configuration['hpijs-install'] = False
- configuration['foomatic-ppd-install'] = False
- configuration['foomatic-drv-install'] = False
- elif c == 'hpijs-install':
- configuration['hpcups-install'] = False
- configuration['cups-ppd-install'] = False
- configuration['cups-drv-install'] = False
- elif c == 'foomatic-ppd-install':
- configuration['foomatic-drv-install'] = False
- elif c == 'foomatic-drv-install':
- configuration['foomatic-ppd-install'] = False
- elif c == 'cups-ppd-install':
- configuration['cups-drv-install'] = False
- elif c == 'cups-drv-install':
- configuration['cups-ppd-install'] = False
-
- if self.disable is not None:
- for c in self.disable:
- if c == 'hpcups-install':
- configuration['hpijs-install'] = True
- configuration['cups-ppd-install'] = False
- configuration['cups-drv-install'] = False
- elif c == 'hpijs-install':
- configuration['hpcups-install'] = True
- configuration['foomatic-ppd-install'] = False
- configuration['foomatic-drv-install'] = False
- elif c == 'foomatic-ppd-install':
- configuration['foomatic-drv-install'] = True
- elif c == 'foomatic-drv-install':
- configuration['foomatic-ppd-install'] = True
- elif c == 'cups-ppd-install':
- configuration['cups-drv-install'] = True
- elif c == 'cups-drv-install':
- configuration['cups-ppd-install'] = True
-
- if self.ppd_dir is not None:
- configure_cmd += ' --with-hpppddir=%s' % self.ppd_dir
-
- libdir_path = self.get_distro_ver_data('libdir_path',False)
- if libdir_path and self.bitness == 64:
- configure_cmd += ' --libdir=%s' % (libdir_path)
- elif self.bitness == 64:
- configure_cmd += ' --libdir=/usr/lib64'
-
- configure_cmd += ' --prefix=%s' % self.install_location
-
- if self.get_distro_ver_data('cups_path_with_bitness', False) and self.bitness == 64:
- configure_cmd += ' --with-cupsbackenddir=/usr/lib64/cups/backend --with-cupsfilterdir=/usr/lib64/cups/filter'
-
- if self.get_distro_ver_data('acl_rules', False):
- configure_cmd += ' --enable-udev-acl-rules'
-
- if self.enable is not None:
- for c in self.enable:
- configuration[c] = True
-
- if self.disable is not None:
- for c in self.disable:
- configuration[c] = False
-
- for c in configuration:
- if configuration[c]:
- configure_cmd += ' --enable-%s' % c
- else:
- configure_cmd += ' --disable-%s' % c
-
- return configure_cmd
-
- def configure_html(self):
- configure_cmd = './configure'
- configure_cmd += ' --prefix=/usr'
- configure_cmd += ' --with-hpppddir=%s' % self.ppd_dir
-
- if self.bitness == 64:
- configure_cmd += ' --libdir=/usr/lib64'
-
- self.ui_toolkit = self.get_distro_ver_data('ui_toolkit')
- if self.ui_toolkit is not None and self.ui_toolkit == 'qt3':
- configure_cmd += ' --enable-qt3 --disable-qt4'
- else:
- configure_cmd += ' --enable-qt4'
-
- self.native_cups = self.get_distro_ver_data('native_cups')
- if self.native_cups is not None and self.native_cups == 1:
- configure_cmd += ' --enable-hpcups-install --enable-cups-drv-install --enable-cups-ppd-install --disable-hpijs-install --disable-foomatic-drv-install --disable-foomatic-ppd-install --disable-foomatic-rip-hplip-install'
- else:
- configure_cmd += ' --disable-hpcups-install --disable-cups-drv-install --disable-cups-ppd-install --enable-hpijs-install --enable-foomatic-drv-install --enable-foomatic-ppd-install --enable-foomatic-rip-hplip-install'
-
- self.fax_supported = self.get_distro_ver_data('fax_supported')
- if self.fax_supported is None:
- configure_cmd += ' --disable-fax-build --disable-dbus-build'
- else:
- configure_cmd += ' --enable-fax-build --enable-dbus-build'
-
- self.network_supported = self.get_distro_ver_data('network_supported')
- if self.network_supported is None:
- configure_cmd += ' --disable-network-build'
- else:
- configure_cmd += ' --enable-network-build'
-
- self.scan_supported = self.get_distro_ver_data('scan_supported')
- if self.scan_supported is None:
- configure_cmd += ' --disable-scan-build'
- else:
- configure_cmd += ' --enable-scan-build'
-
- self.policykit = self.get_distro_ver_data('policykit')
- if self.policykit is not None and self.policykit == 1:
- configure_cmd += ' --enable-policykit'
- else:
- configure_cmd += ' --disable-policykit'
-
- return configure_cmd
-
- def configure_qt4(self):
- configure_cmd = './configure'
- configure_cmd += ' --prefix=/usr'
- configure_cmd += ' --with-hpppddir=%s' % self.ppd_dir
-
- if self.bitness == 64:
- configure_cmd += ' --libdir=/usr/lib64'
-
- self.ui_toolkit = self.get_distro_ver_data('ui_toolkit')
- if self.ui_toolkit is not None and self.ui_toolkit == 'qt3':
- configure_cmd += ' --enable-qt3 --disable-qt4'
- else:
- configure_cmd += ' --enable-qt4'
-
- self.native_cups = self.get_distro_ver_data('native_cups')
- self.ppd_install = self.get_distro_ver_data('ppd_install')
- if self.native_cups is not None and self.native_cups == 1:
- configure_cmd += ' --enable-hpcups-install'
- if self.ppd_install == 'drv':
- configure_cmd += ' --enable-cups-drv-install --disable-cups-ppd-install'
- else:
- configure_cmd += ' --enable-cups-ppd-install --disable-cups-drv-install'
- configure_cmd += ' --disable-hpijs-install --disable-foomatic-drv-install --disable-foomatic-ppd-install --disable-foomatic-rip-hplip-install'
- else:
- configure_cmd += ' --enable-hpijs-install'
- if self.ppd_install == 'drv':
- configure_cmd += ' --enable-foomatic-drv-install --disable-foomatic-ppd-install'
- else:
- configure_cmd += ' --enable-foomatic-ppd-install --disable-foomatic-drv-install'
- configure_cmd += ' --enable-foomatic-rip-hplip-install --disable-hpcups-install --disable-cups-drv-install --disable-cups-ppd-install'
-
- self.fax_supported = self.get_distro_ver_data('fax_supported')
- if self.fax_supported is None:
- configure_cmd += ' --disable-fax-build --disable-dbus-build'
- else:
- configure_cmd += ' --enable-fax-build --enable-dbus-build'
-
- self.network_supported = self.get_distro_ver_data('network_supported')
- if self.network_supported is None:
- configure_cmd += ' --disable-network-build'
- else:
- configure_cmd += ' --enable-network-build'
-
- self.scan_supported = self.get_distro_ver_data('scan_supported')
- if self.scan_supported is None:
- configure_cmd += ' --disable-scan-build'
- else:
- configure_cmd += ' --enable-scan-build'
-
- self.policykit = self.get_distro_ver_data('policykit')
- if self.policykit is not None and self.policykit == 1:
- configure_cmd += ' --enable-policykit'
- else:
- configure_cmd += ' --disable-policykit'
-
- return configure_cmd
-
-
- def restart_cups(self):
- if os.path.exists('/etc/init.d/cups'):
- cmd = self.su_sudo() % '/etc/init.d/cups restart'
-
- elif os.path.exists('/etc/init.d/cupsys'):
- cmd = self.su_sudo() % '/etc/init.d/cupsys restart'
-
- else:
- cmd = self.su_sudo() % 'killall -HUP cupsd'
-
- self.run(cmd)
-
-
- def stop_hplip(self):
- return self.su_sudo() % "/etc/init.d/hplip stop"
-
-
- def su_sudo(self):
- if os.geteuid() == 0:
- return '%s'
- else:
- try:
- cmd = self.distros[self.distro_name]['su_sudo']
- except KeyError:
- cmd = 'su'
-
- if cmd == 'su':
- return 'su -c "%s"'
- else:
- return 'sudo %s'
-
- def su_sudo_str(self):
- return self.get_distro_data('su_sudo', 'su')
-
-
- def build_cmds(self):
- return [self.configure(),
- 'make clean',
- 'make',
- self.su_sudo() % 'make install']
-
-
- def get_distro_ver_data(self, key, default=None):
- try:
- return self.distros[self.distro_name]['versions'][self.distro_version].get(key, None) or \
- self.distros[self.distro_name].get(key, None) or default
- except KeyError:
- return default
-
- return value
-
-
- def get_distro_data(self, key, default=None):
- try:
- return self.distros[self.distro_name].get(key, None) or default
- except KeyError:
- return default
-
-
- def get_ver_data(self, key, default=None):
- try:
- return self.distros[self.distro_name]['versions'][self.distro_version].get(key, None) or default
- except KeyError:
- return default
-
- return value
-
-
- def get_dependency_data(self, dependency):
- dependency_cmds = self.get_ver_data("dependency_cmds", {})
- dependency_data = dependency_cmds.get(dependency, {})
- packages = dependency_data.get('packages', [])
- commands = dependency_data.get('commands', [])
- return packages, commands
-
-
- def get_dependency_commands(self):
- dd = self.dependencies.keys()
- dd.sort()
- commands_to_run = []
- packages_to_install = []
- overall_commands_to_run = []
- for d in dd:
- include = False
- for opt in self.dependencies[d][1]:
- if self.selected_options[opt]:
- include = True
- if include:
- pkgs, cmds = self.get_dependency_data(d)
-
- if pkgs:
- for p in pkgs:
- if not p in packages_to_install:
- packages_to_install.append(p)
-
- if cmds:
- commands_to_run.extend(cmds)
-
- package_mgr_cmd = self.get_distro_data('package_mgr_cmd')
-
- overall_commands_to_run.extend(commands_to_run)
-
- if package_mgr_cmd:
- packages_to_install = ' '.join(packages_to_install)
- overall_commands_to_run.append(utils.cat(package_mgr_cmd))
-
- if not overall_commands_to_run:
- log.error("No cmds/pkgs")
-
- return overall_commands_to_run
-
-
- def distro_known(self):
- return self.distro != DISTRO_UNKNOWN and self.distro_version != DISTRO_VER_UNKNOWN
-
-
- def distro_supported(self):
- if self.mode == MODE_INSTALLER:
- return self.distro != DISTRO_UNKNOWN and self.distro_version != DISTRO_VER_UNKNOWN and self.get_ver_data('supported', False)
- else:
- return True # For docs (manual install)
-
-
- def sort_vers(self, x, y):
- try:
- return cmp(float(x), float(y))
- except ValueError:
- return cmp(x, y)
-
-
- def running_as_root(self):
- return os.geteuid() == 0
-
-
- def show_release_notes_in_browser(self):
- url = "file://%s" % os.path.join(os.getcwd(), 'doc', 'release_notes.html')
- log.debug(url)
- status, output = self.run("xhost +")
- utils.openURL(url)
-
-
- def count_num_required_missing_dependencies(self):
- num_req_missing = 0
- for d, desc, opt in self.missing_required_dependencies():
- num_req_missing += 1
- return num_req_missing
-
-
- def count_num_optional_missing_dependencies(self):
- num_opt_missing = 0
- for d, desc, req, opt in self.missing_optional_dependencies():
- num_opt_missing += 1
- return num_opt_missing
-
-
- def missing_required_dependencies(self): # missing req. deps in req. options
- for opt in self.components[self.selected_component][1]:
- if self.options[opt][0]: # required options
- for d in self.options[opt][2]: # dependencies for option
- if self.dependencies[d][0]: # required option
- if not self.have_dependencies[d]: # missing
- log.debug("Missing required dependency: %s" % d)
- yield d, self.dependencies[d][2], opt
- # depend, desc, option
-
- def missing_optional_dependencies(self):
- # missing deps in opt. options
- for opt in self.components[self.selected_component][1]:
- if not self.options[opt][0]: # not required option
- if self.selected_options[opt]: # only for options that are ON
- for d in self.options[opt][2]: # dependencies
- if not self.have_dependencies[d]: # missing dependency
- log.debug("Missing optional dependency: %s" % d)
- yield d, self.dependencies[d][2], self.dependencies[d][0], opt
- # depend, desc, required_for_opt, opt
-
- # opt. deps in req. options
- for opt in self.components[self.selected_component][1]:
- if self.options[opt][0]: # required options
- for d in self.options[opt][2]: # dependencies for option
- if d == 'cups-ddk':
- status, output = self.run('cups-config --version')
- import string
- if status == 0 and (string.count(output, '.') == 1 or string.count(output, '.') == 2):
- if string.count(output, '.') == 1:
- major, minor = string.split(output, '.', 2)
- if string.count(output, '.') == 2:
- major, minor, release = string.split(output, '.', 3)
- if len(minor) > 1 and minor[1] >= '0' and minor[1] <= '9':
- minor = ((ord(minor[0]) - ord('0')) * 10) + (ord(minor[1]) - ord('0'))
- else:
- minor = ord(minor[0]) - ord('0')
- if major > '1' or (major == '1' and minor >= 4):
- continue
- if not self.dependencies[d][0]: # optional dep
- if not self.have_dependencies[d]: # missing
- log.debug("Missing optional dependency: %s" % d)
- yield d, self.dependencies[d][2], self.dependencies[d][0], opt
- # depend, desc, option
-
- def select_options(self, answer_callback):
- num_opt_missing = 0
- # not-required options
- for opt in self.components[self.selected_component][1]:
- if not self.options[opt][0]: # not required
- default = 'y'
-
- if not self.selected_options[opt]:
- default = 'n'
-
- self.selected_options[opt] = answer_callback(opt, self.options[opt][1], default)
-
- if self.selected_options[opt]: # only for options that are ON
- for d in self.options[opt][2]: # dependencies
- if not self.have_dependencies[d]: # missing dependency
- log.debug("Missing optional dependency: %s" % d)
- num_opt_missing += 1
-
- return num_opt_missing
-
-
- def check_network_connection(self):
- self.network_connected = False
-
- wget = utils.which("wget")
- if wget:
- wget = os.path.join(wget, "wget")
- cmd = "%s --timeout=60 --output-document=- %s" % (wget, HTTP_GET_TARGET)
- log.debug(cmd)
- status, output = self.run(cmd)
- log.debug("wget returned: %d" % status)
- self.network_connected = (status == 0)
-
- else:
- curl = utils.which("curl")
- if curl:
- curl = os.path.join(curl, "curl")
- cmd = "%s --output - --connect-timeout 5 --max-time 10 %s" % (curl, HTTP_GET_TARGET)
- log.debug(cmd)
- status, output = self.run(cmd)
- log.debug("curl returned: %d" % status)
- self.network_connected = (status == 0)
-
- else:
- ping = utils.which("ping")
-
- if ping:
- ping = os.path.join(ping, "ping")
- cmd = "%s -c1 -W1 -w10 %s" % (ping, PING_TARGET)
- log.debug(cmd)
- status, output = self.run(cmd)
- log.debug("ping returned: %d" % status)
- self.network_connected = (status == 0)
-
- return self.network_connected
-
-
- def run_pre_install(self, callback=None):
- pre_cmd = self.get_distro_ver_data('pre_install_cmd')
- log.debug(pre_cmd)
- if pre_cmd:
- x = 1
- for cmd in pre_cmd:
- status, output = self.run(cmd)
-
- if status != 0:
- log.warn("An error occurred running '%s'" % cmd)
-
- if callback is not None:
- callback(cmd, "Pre-install step %d" % x)
-
- x += 1
-
- return True
-
- else:
- return False
-
-
- def run_pre_depend(self, callback=None):
- pre_cmd = self.get_distro_ver_data('pre_depend_cmd')
- log.debug(pre_cmd)
- if pre_cmd:
- x = 1
- for cmd in pre_cmd:
- status, output = self.run(cmd)
-
- if status != 0:
- log.warn("An error occurred running '%s'" % cmd)
-
- if callback is not None:
- callback(cmd, "Pre-depend step %d" % x)
-
- x += 1
-
-
- def run_post_depend(self, callback=None):
- post_cmd = self.get_distro_ver_data('post_depend_cmd')
- log.debug(post_cmd)
- if post_cmd:
- x = 1
- for cmd in post_cmd:
- status, output = self.run(cmd)
-
- if status != 0:
- log.warn("An error occurred running '%s'" % cmd)
-
- if callback is not None:
- callback(cmd, "Post-depend step %d" % x)
-
- x += 1
-
-
- def run_open_mdns_port(self, callback=None):
- open_mdns_port_cmd = self.get_distro_ver_data('open_mdns_port')
- log.debug(open_mdns_port_cmd)
- if open_mdns_port_cmd:
- x = 1
- for cmd in open_mdns_port_cmd:
- cmd = self.su_sudo() % cmd
- status, output = self.run(cmd)
-
- if status != 0:
- log.warn("An error occurred running '%s'" % cmd)
- log.warn(output)
-
- if callback is not None:
- callback(cmd, "Open mDNS/Bonjour step %d" % x)
-
- x += 1
-
-
- def pre_build(self):
- cmds = []
- if self.get_distro_ver_data('fix_ppd_symlink', False):
- cmds.append(self.su_sudo() % 'python ./installer/fix_symlink.py')
-
- return cmds
-
-
- def run_pre_build(self, callback=None):
- x = 1
- for cmd in self.pre_build():
- status, output = self.run(cmd)
- if callback is not None:
- callback(cmd, "Pre-build step %d" % x)
-
- x += 1
-
-
- def run_post_build(self, callback=None):
- x = 1
- for cmd in self.post_build():
- status, output = self.run(cmd)
- if callback is not None:
- callback(cmd, "Post-build step %d" % x)
-
- x += 1
-
-
- def post_build(self):
- cmds = []
- # Reload DBUS configuration if distro supports it and PolicyKit
- # support installed
- if self.reload_dbus and self.selected_options['policykit']:
- cmds.append(self.su_sudo() % "sh /etc/init.d/dbus reload")
- log.debug("Will reload DBUS configuration for PolicyKit support")
-
- # Kill any running hpssd.py instance from a previous install
- if self.check_hpssd():
- pid = get_ps_pid('hpssd')
- if pid:
- kill = os.path.join(utils.which("kill"), "kill") + " %d" % pid
- cmds.append(self.su_sudo() % kill)
-
- # Add user to group if needed
- # add_user_to_group=<usermod params> [TYPE_STRING] (leave empty for none) [ex. "-a -G sys" or "-G lp"]
- add_user_to_group = self.get_distro_ver_data('add_user_to_group', '')
- if add_user_to_group:
- usermod = os.path.join(utils.which("usermod"), "usermod") + " %s %s" % (add_user_to_group, prop.username)
- cmds.append(self.su_sudo() % usermod)
-
- return cmds
-
-
- def logoff(self):
- ok = False
- pkill = utils.which('pkill')
- if pkill:
- cmd = "%s -KILL -u %s" % (os.path.join(pkill, "pkill"), prop.username)
- cmd = self.su_sudo() % cmd
- status, output = self.run(cmd)
-
- ok = (status == 0)
-
- return ok
-
-
- def restart(self):
- ok = False
- shutdown = utils.which('shutdown')
- if shutdown:
- cmd = "%s -r now" % (os.path.join(shutdown, "shutdown"))
- cmd = self.su_sudo() % cmd
- status, output = self.run(cmd)
-
- ok = (status == 0)
-
- return ok
-
-
- def run_hp_setup(self):
- status = 0
- hpsetup = utils.which("hp-setup")
-
- if hpsetup:
- cmd = 'hp-setup'
- else:
- cmd = './setup.py'
-
- log.debug(cmd)
- status, output = self.run(cmd)
- return status == 0
-
-
- def remove_hplip(self, callback=None):
- failed = True
- self.stop_pre_2x_hplip(callback)
-
- hplip_remove_cmd = self.get_distro_data('hplip_remove_cmd')
- if hplip_remove_cmd:
- if callback is not None:
- callback(hplip_remove_cmd, "Removing old HPLIP version")
-
- status, output = self.run(hplip_remove_cmd)
-
- if status == 0:
- self.hplip_present = self.check_hplip()
-
- if not self.hplip_present:
- failed = False
-
- return failed
-
-
- def stop_pre_2x_hplip(self, callback=None):
- hplip_init_script = '/etc/init.d/hplip stop'
- if os.path.exists(hplip_init_script):
- cmd = self.su_sudo() % hplip_init_script
-
- if callback is not None:
- callback(cmd, "Stopping old HPLIP version.")
-
- status, output = self.run(cmd)
-
-
-
- def check_password(self, password_entry_callback, callback=None):
- self.clear_su_sudo_password()
- x = 1
- while True:
- self.password = password_entry_callback()
- cmd = self.su_sudo() % "true"
-
- log.debug(cmd)
-
- status, output = self.run(cmd)
-
- log.debug(status)
- log.debug(output)
-
- if status == 0:
- if callback is not None:
- callback("", "Password accepted")
- return True
-
- if callback is not None:
- if "not in the sudoers file" in output:
- callback("", "%s is not in the sudoers file. Check privileges\n" %(os.getenv('USER')) )
- return False
- else:
- callback("", "Password incorrect. %d attempt(s) left." % (3-x ))
-
-
- x += 1
-
- if x > 3:
- return False
-
-
- def clear_su_sudo_password(self):
- if self.su_sudo_str() == 'sudo':
- log.debug("Clearing password...")
- self.run("sudo -K")
-
-
-
- # PLUGIN HELPERS
-
- def set_plugin_version(self):
- self.plugin_version = prop.installed_version
- log.debug("Plug-in version=%s" % self.plugin_version)
- self.plugin_name = 'hplip-%s-plugin.run' % self.plugin_version
- log.debug("Plug-in=%s" % self.plugin_name)
-
-
- def get_plugin_conf_url(self):
- url = "http://hplip.sf.net/plugin.conf"
- home = sys_conf.get('dirs', 'home')
-
- if os.path.exists('/etc/hp/plugin.conf'):
- url = "file:///etc/hp/plugin.conf"
-
- elif os.path.exists(os.path.join(home, 'plugin.conf')):
- url = "file://" + os.path.join(home, 'plugin.conf')
-
- log.debug("Plugin.conf url: %s" % url)
- return url
-
-
- def get_plugin_info(self, plugin_conf_url, callback):
- ok, size, checksum, timestamp, url = False, 0, 0, 0.0, ''
-
- if not self.create_plugin_dir():
- log.error("Could not create plug-in directory.")
- return '', 0, 0, 0, False
-
- local_conf_fp, local_conf = utils.make_temp_file()
-
- #if os.path.exists(local_conf):
- #os.remove(local_conf)
-
- try:
- try:
- #filename, headers = urllib.urlretrieve(plugin_conf_url, local_conf, callback)
- wget = utils.which("wget")
- if wget:
- wget = os.path.join(wget, "wget")
- status, output = self.run("%s --timeout=60 --output-document=%s %s --cache=off" %(wget, local_conf, plugin_conf_url))
- if status:
- log.error("Plugin download failed with error code = %d" %status)
- return '', 0, 0, 0, False
- else:
- log.error("Please install wget package to download the plugin.")
- return '', 0, 0, 0, False
- except IOError, e:
- log.error("I/O Error: %s" % e.strerror)
- return '', 0, 0, 0, False
-
- if not os.path.exists(local_conf):
- log.error("plugin.conf not found.")
- return '', 0, 0, 0, False
-
- plugin_conf_p = ConfigParser.ConfigParser()
-
- try:
- plugin_conf_p.read(local_conf)
- except (ConfigParser.MissingSectionHeaderError, ConfigParser.ParsingError):
- log.error("Error parsing file - 404 error?")
- return '', 0, 0, 0, False
-
- try:
- url = plugin_conf_p.get(self.plugin_version, 'url')
- size = plugin_conf_p.getint(self.plugin_version, 'size')
- checksum = plugin_conf_p.get(self.plugin_version, 'checksum')
- timestamp = plugin_conf_p.getfloat(self.plugin_version, 'timestamp')
- ok = True
- except (KeyError, ConfigParser.NoSectionError):
- log.error("Error reading plugin.conf: Missing section [%s]" % self.plugin_version)
- return '', 0, 0, 0, False
-
- finally:
- os.close(local_conf_fp)
- os.remove(local_conf)
-
- return url, size, checksum, timestamp, ok
-
-
- def create_plugin_dir(self):
- if not os.path.exists(self.plugin_path):
- try:
- log.debug("Creating plugin directory: %s" % self.plugin_path)
- os.umask(0)
- os.makedirs(self.plugin_path, 0755)
- return True
- except (OSError, IOError), e:
- log.error("Unable to create directory: %s" % e.strerror)
- return False
-
- return True
-
-
- def isErrorPage(self, page):
- """
- Example code from David Mertz' Text Processing in Python.
- Released in the Public Domain.
- """
- err_score = 0.0
-
- for pat, prob in err_pats.items():
- if err_score > 0.9: break
- if re.search(pat, page):
- err_score += prob
-
- log.debug("File error page score: %f" % (err_score))
-
- return err_score > 0.50
-
-
- def download_plugin(self, url, size, checksum, timestamp, callback=None):
- log.debug("Downloading %s plug-in file from '%s' to '%s'..." % (self.plugin_version, url, self.plugin_path))
-
- if not self.create_plugin_dir():
- return PLUGIN_INSTALL_ERROR_DIRECTORY_ERROR, self.plugin_path
-
- plugin_file = os.path.join(self.plugin_path, self.plugin_name)
-
-
- #Check whether plugin is accessible in Openprinting.org website otherwise dowload plugin from alternate location.
- wget = utils.which("wget")
- if wget:
- wget = os.path.join(wget, "wget")
- cmd = "%s --cache=off -P %s %s" % (wget,self.plugin_path,url)
- log.debug(cmd)
- status, output = self.run(cmd)
- log.debug("wget returned: %d" % status)
-
- try:
- if (status != 0) and 'file://' not in url:
- url = os.path.join(PLUGIN_FALLBACK_LOCATION, self.plugin_name)
- log.info("Plugin is not accessible. Trying to download it from fallback location: [%s]" % url)
- cmd = "%s --cache=off -P %s %s" % (wget,self.plugin_path,url)
- log.debug(cmd)
- status, output = self.run(cmd)
- #filename, headers = urllib.urlretrieve(url, plugin_file, callback)
- except IOError, e:
- log.error("Plug-in download failed: %s" % e.strerror)
- return PLUGIN_INSTALL_ERROR_PLUGIN_FILE_NOT_FOUND, e.strerror
-
- if self.isErrorPage(file(plugin_file, 'r').read(1024)):
- log.debug(file(plugin_file, 'r').read(1024))
- os.remove(plugin_file)
- return PLUGIN_INSTALL_ERROR_PLUGIN_FILE_NOT_FOUND, -1
-
- calc_checksum = get_checksum(file(plugin_file, 'r').read())
- log.debug("D/L file checksum=%s" % calc_checksum)
-
- # Try to download and check the GPG digital signature
- digsig_url = url + '.asc'
- digsig_file = plugin_file + '.asc'
-
- log.debug("Downloading %s plug-in digital signature file from '%s' to '%s'..." % (self.plugin_version, digsig_url, digsig_file))
-
- try:
- cmd = "%s --cache=off -P %s %s" % (wget,self.plugin_path,digsig_url)
- log.debug(cmd)
- status, output = self.run(cmd)
- #filename, headers = urllib.urlretrieve(digsig_url, digsig_file, callback)
- except IOError, e:
- log.error("Plug-in GPG file [%s] download failed: %s" % (digsig_url,e.strerror))
- return PLUGIN_INSTALL_ERROR_DIGITAL_SIG_NOT_FOUND, e.strerror
-
- if self.isErrorPage(file(digsig_file, 'r').read(1024)):
- log.debug(file(digsig_file, 'r').read())
- os.remove(digsig_file)
- return PLUGIN_INSTALL_ERROR_DIGITAL_SIG_NOT_FOUND, -1
-
- gpg = utils.which('gpg')
- if gpg:
- gpg = os.path.join(gpg, 'gpg')
- cmd = '%s --no-permission-warning --keyserver pgp.mit.edu --recv-keys 0xA59047B9' % gpg
- log.info("Receiving digital keys: %s" % cmd)
- status, output = self.run(cmd)
- log.debug(output)
-
- if status != 0:
- return PLUGIN_INSTALL_ERROR_UNABLE_TO_RECV_KEYS, status
-
- cmd = '%s --no-permission-warning --verify %s %s' % (gpg, digsig_file, plugin_file)
- log.debug("Verifying plugin with digital keys: %s" % cmd)
- status, output = self.run(cmd)
- log.debug(output)
- log.debug("%s status: %d" % (gpg, status))
-
- if status != 0:
- return PLUGIN_INSTALL_ERROR_DIGITAL_SIG_BAD, status
-
-
- return PLUGIN_INSTALL_ERROR_NONE, plugin_file
-
-
- def check_for_plugin(self):
- sys_state.read()
- is_installed = utils.to_bool(sys_state.get('plugin', 'installed', '0'))
- if is_installed:
- log.debug("plugin is installed")
- else:
- log.debug("plugin is not installed")
- return is_installed
-
-
- def run_plugin(self, mode=GUI_MODE, callback=None):
- plugin_file = os.path.join(self.plugin_path, self.plugin_name)
-
- if not os.path.exists(plugin_file):
- return False
-
- if mode == GUI_MODE:
- return os.system("sh %s --nox11 -- -u" % plugin_file) == 0
- else:
- if os.system("sh %s --nox11 -- -i" % plugin_file) == 0:
- return True
- else:
- log.error("Python gobject/dbus may be not installed")
- return False
-
-
- def delete_plugin(self):
- plugin_file = os.path.join(self.plugin_path, self.plugin_name)
- digsig_file = plugin_file + ".asc"
-
- if os.path.exists(plugin_file):
- os.unlink(plugin_file)
- if os.path.exists(digsig_file):
- os.unlink(digsig_file)
+# -*- coding: utf-8 -*- +# +# (c) Copyright 2003-2009 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Don Welch +# + +# Std Lib +import sys +import os +import os.path +import re +import time +import cStringIO +import grp +import pwd +import tarfile +import stat + +try: + import hashlib # new in 2.5 + + def get_checksum(s): + return hashlib.sha1(s).hexdigest() + +except ImportError: + import sha # deprecated in 2.6/3.0 + + def get_checksum(s): + return sha.new(s).hexdigest() + + +import urllib # TODO: Replace with urllib2 (urllib is deprecated in Python 3.0) + + +# Local +from base.g import * +from base.codes import * +from base import utils, pexpect,tui +from dcheck import * + + + +DISTRO_UNKNOWN = 0 +DISTRO_VER_UNKNOWN = '0.0' + +MODE_INSTALLER = 0 # hplip-install/hp-setup +MODE_CHECK = 1 # hp-check +MODE_CREATE_DOCS = 2 # create_docs + +TYPE_STRING = 1 +TYPE_LIST = 2 +TYPE_BOOL = 3 +TYPE_INT = 4 + +DEPENDENCY_RUN_TIME = 1 +DEPENDENCY_COMPILE_TIME = 2 +DEPENDENCY_RUN_AND_COMPILE_TIME = 3 + +# Plug-in download errors +PLUGIN_INSTALL_ERROR_NONE = 0 +PLUGIN_INSTALL_ERROR_PLUGIN_FILE_NOT_FOUND = 1 +PLUGIN_INSTALL_ERROR_DIGITAL_SIG_NOT_FOUND = 2 +PLUGIN_INSTALL_ERROR_DIGITAL_SIG_BAD = 3 +PLUGIN_INSTALL_ERROR_PLUGIN_FILE_CHECKSUM_ERROR = 4 +PLUGIN_INSTALL_ERROR_NO_NETWORK = 5 +PLUGIN_INSTALL_ERROR_DIRECTORY_ERROR = 6 +PLUGIN_INSTALL_ERROR_UNABLE_TO_RECV_KEYS = 7 + + +#Plugin installation status values +PLUGIN_STATUS_PARTIAL_FILES_PRESENT = -1 +PLUGIN_STATUS_FILES_NOT_PRESENT = 0 +PLUGIN_STATUS_FILES_PRESENT = 1 + + +PING_TARGET = "www.google.com" +HTTP_GET_TARGET = "http://www.google.com" +PLUGIN_FALLBACK_LOCATION = 'http://hplipopensource.com/hplip-web/plugin/' + +EXPECT_WORD_LIST = [ + pexpect.EOF, # 0 + pexpect.TIMEOUT, # 1 + "Continue?", # 2 (for zypper) + "passwor[dt]", # en/de/it/ru + "kennwort", # de? + "password for", # en + "mot de passe", # fr + "contraseña", # es + "palavra passe", # pt + "口令", # zh + "wachtwoord", # nl + "heslo", # czech +] + +# Mapping from patterns to probability contribution of pattern +# Example code from David Mertz' Text Processing in Python. +# Released in the Public Domain. +err_pats = {r'(?is)<TITLE>.*?(404|403).*?ERROR.*?</TITLE>': 0.95, + r'(?is)<TITLE>.*?ERROR.*?(404|403).*?</TITLE>': 0.95, + r'(?is)<TITLE>ERROR</TITLE>': 0.30, + r'(?is)<TITLE>.*?ERROR.*?</TITLE>': 0.10, + r'(?is)<META .*?(404|403).*?ERROR.*?>': 0.80, + r'(?is)<META .*?ERROR.*?(404|403).*?>': 0.80, + r'(?is)<TITLE>.*?File Not Found.*?</TITLE>': 0.80, + r'(?is)<TITLE>.*?Not Found.*?</TITLE>': 0.40, + r'(?is)<BODY.*(404|403).*</BODY>': 0.10, + r'(?is)<H1>.*?(404|403).*?</H1>': 0.15, + r'(?is)<BODY.*not found.*</BODY>': 0.10, + r'(?is)<H1>.*?not found.*?</H1>': 0.15, + r'(?is)<BODY.*the requested URL.*</BODY>': 0.10, + r'(?is)<BODY.*the page you requested.*</BODY>': 0.10, + r'(?is)<BODY.*page.{1,50}unavailable.*</BODY>': 0.10, + r'(?is)<BODY.*request.{1,50}unavailable.*</BODY>': 0.10, + r'(?i)does not exist': 0.10, + } + + + +# Note:- If new utility is added, add same utility here to uninstall properly. + +BINS_LIST=['hpijs','hp-align','hp-colorcal','hp-faxsetup','hp-linefeedcal','hp-pkservice','hp-printsettings','hp-sendfax','hp-timedate','hp-check','hp-devicesettings','hp-firmware','hp-makecopies','hp-plugin','hp-probe','hp-setup','hp-toolbox','hp-check-plugin','hp-diagnose_plugin','hp-info','hp-makeuri','hp-pqdiag','hp-query','hp-systray','hp-unload','hp-clean','hp-fab','hp-levels','hp-mkuri','hp-print','hp-scan','hp-testpage','hp-wificonfig', 'hp-upgrade','hplip-info','hp-check-upgrade','hp-config_usb_printer','hp-diagnose_queues'] + +LIBS_LIST=['libhpmud.*','libhpip.*','sane/libsane-hpaio.*','cups/backend/hp','cups/backend/hpfax', 'cups/filter/hpcac', 'cups/filter/pstotiff','cups/filter/hpcups', 'cups/filter/hpcupsfax', 'cups/filter/hplipjs','cups/filter/hpps'] + +FILES_LIST=['/usr/share/ppd/HP/*','/etc/udev/rules.d/56-hpmud_support.rules', '/etc/udev/rules.d/40-hplip.rules', '/etc/udev/rules.d/56-hpmud_support.rules', '/etc/udev/rules.d/55-hpmud.rules', '/etc/udev/rules.d/86-hpmud-hp_*', '/etc/udev/rules.d/86-hpmud_plugin.rules', '/usr/share/cups/drv/hp/*','/usr/local/share/ppd/HP/*','/usr/local/share/cups/drv/hp/*' ,'/usr/share/applications/hplip.desktop', '/etc/xdg/autostart/hplip-systray.desktop', '/etc/hp/hplip.conf', '/usr/share/doc/hplip-*'] + +HPLIP_LIST=['*.py','*.pyc', 'base', 'copier','data','installer','pcard','ui4','ui','fax/*.py','fax/*.pyc','fax/pstotiff.convs','fax/pstotiff.types','fax/pstotiff','prnt/*.py', 'prnt/*.pyc', 'scan/*.py','scan/*.pyc'] + +PLUGIN_LIST=['fax/plugins/','prnt/pluginmode = INTERACTIVE_MODEs/','scan/plugins/'] +PLUGIN_STATE =['/var/lib/hp/hplip.state'] +RMDIR="rm -rf" +RM="rm -f" + +# end + + +EXPECT_LIST = [] +for s in EXPECT_WORD_LIST: + try: + p = re.compile(s, re.I) + except TypeError: + EXPECT_LIST.append(s) + else: + EXPECT_LIST.append(p) + +OK_PROCESS_LIST = ['adept-notifier', + 'adept_notifier', + 'yum-updatesd', + ] + +CONFIGURE_ERRORS = { 1 : "General/unknown error", + 2 : "libusb not found", + 3 : "cups-devel not found", + 4 : "libnetsnmp not found", + 5 : "netsnmp-devel not found", + 6 : "python-devel not found", + 7 : "pthread-devel not found", + 8 : "ppdev-devel not found", + 9 : "libcups not found", + 10 : "libm not found", + 11 : "libusb-devel not found", + 12 : "sane-backends-devel not found", + 13 : "libdbus not found", + 14 : "dbus-devel not found", + 15 : "fax requires dbus support", + 102 : "libjpeg not found", + 103 : "jpeg-devel not found", + 104 : "libdi not found", + } + + +try: + from functools import update_wrapper +except ImportError: # using Python version < 2.5 + def trace(f): + def newf(*args, **kw): + log.debug("TRACE: func=%s(), args=%s, kwargs=%s" % (f.__name__, args, kw)) + return f(*args, **kw) + newf.__name__ = f.__name__ + newf.__dict__.update(f.__dict__) + newf.__doc__ = f.__doc__ + newf.__module__ = f.__module__ + return newf +else: # using Python 2.5+ + def trace(f): + def newf(*args, **kw): + log.debug("TRACE: func=%s(), args=%s, kwargs=%s" % (f.__name__, args, kw)) + return f(*args, **kw) + return update_wrapper(newf, f) + + + +class CoreInstall(object): + def __init__(self, mode=MODE_INSTALLER, ui_mode=INTERACTIVE_MODE, ui_toolkit='qt4'): + os.umask(0022) + self.mode = mode + self.ui_mode = ui_mode + self.password = '' + self.version_description, self.version_public, self.version_internal = '', '', '' + self.bitness = 32 + self.endian = utils.LITTLE_ENDIAN + self.distro, self.distro_name, self.distro_version = DISTRO_UNKNOWN, '', DISTRO_VER_UNKNOWN + self.distro_version_supported = False + self.install_location = '/usr' + self.hplip_present = False + self.have_dependencies = {} + self.native_cups = True + self.ppd_dir = None + self.drv_dir = None + self.distros = {} + self.network_connected = False + self.ui_toolkit = ui_toolkit + self.enable = None + self.disable = None + self.plugin_path = "/tmp" + self.plugin_version = '0.0.0' + self.plugin_name = '' + self.reload_dbus = False + + + self.FIELD_TYPES = { + 'distros' : TYPE_LIST, + 'index' : TYPE_INT, + 'versions' : TYPE_LIST, + 'display_name' : TYPE_STRING, + 'alt_names': TYPE_LIST, + 'display': TYPE_BOOL, + 'notes': TYPE_STRING, + 'package_mgrs': TYPE_LIST, + 'package_mgr_cmd':TYPE_STRING, + 'pre_install_cmd': TYPE_LIST, + 'pre_depend_cmd': TYPE_LIST, + 'post_depend_cmd': TYPE_LIST, + 'hpoj_remove_cmd': TYPE_STRING, + 'hplip_remove_cmd': TYPE_STRING, + 'su_sudo': TYPE_STRING, + 'ppd_install': TYPE_STRING, + 'udev_mode_fix': TYPE_BOOL, + 'ppd_dir': TYPE_STRING, + 'drv_dir' : TYPE_STRING, + 'fix_ppd_symlink': TYPE_BOOL, + 'code_name': TYPE_STRING, + 'supported': TYPE_BOOL, # Supported by installer + 'release_date': TYPE_STRING, + 'packages': TYPE_LIST, + 'commands': TYPE_LIST, + 'same_as_version' : TYPE_STRING, + 'scan_supported' : TYPE_BOOL, + 'fax_supported' : TYPE_BOOL, + 'pcard_supported' : TYPE_BOOL, + 'network_supported' : TYPE_BOOL, + 'parallel_supported' : TYPE_BOOL, + 'usb_supported' : TYPE_BOOL, + 'packaged_version': TYPE_STRING, # Version of HPLIP pre-packaged in distro + 'cups_path_with_bitness' : TYPE_BOOL, + 'ui_toolkit' : TYPE_STRING, # qt3 or qt4 [or gtk] or none + 'policykit' : TYPE_BOOL, + 'native_cups' : TYPE_BOOL, + 'package_available' : TYPE_BOOL, + 'package_arch' : TYPE_LIST, + 'add_user_to_group': TYPE_STRING, + 'open_mdns_port' : TYPE_LIST, # command to use to open mdns multicast port 5353 + 'acl_rules' : TYPE_BOOL, # Use ACL uDEV rules (Ubuntu 9.10+) + 'libdir_path' : TYPE_STRING, + } + + # components + # 'name': ('description', [<option list>]) + self.components = { + 'hplip': ("HP Linux Imaging and Printing System", ['base', 'network', 'gui_qt4', + 'fax', 'scan', 'docs']), + } + + self.selected_component = 'hplip' + + # options + # name: (<required>, "<display_name>", [<dependency list>]), ... + self.options = { + 'base': (True, 'Required HPLIP base components (including hpcups)', []), # HPLIP + 'network' : (False, 'Network/JetDirect I/O', []), + 'gui_qt4' : (False, 'Graphical User Interfaces (Qt4)', []), + 'fax' : (False, 'PC Send Fax support', []), + 'scan': (False, 'Scanning support', []), + 'docs': (False, 'HPLIP documentation (HTML)', []), + 'policykit': (False, 'Administrative policy framework', []), + } + + + # holds whether the user has selected (turned on each option) + # initial values are defaults (for GUI only) + self.selected_options = { + 'base': True, + 'network': True, + 'gui_qt4': True, + 'fax': True, + 'scan': True, + 'docs': True, + 'policykit': False, + 'native_cups': False, + } + + # dependencies + # 'name': (<required for option>, [<option list>], <display_name>, <check_func>, <runtime/compiletime>), ... + # Note: any change to the list of dependencies must be reflected in base/distros.py + self.dependencies = { + # Required base packages + 'libjpeg': (True, ['base'], "libjpeg - JPEG library", self.check_libjpeg, DEPENDENCY_RUN_AND_COMPILE_TIME), + 'libtool': (True, ['base'], "libtool - Library building support services", self.check_libtool, DEPENDENCY_COMPILE_TIME), + 'cups' : (True, ['base'], 'CUPS - Common Unix Printing System', self.check_cups, DEPENDENCY_RUN_TIME), + 'cups-devel': (True, ['base'], 'CUPS devel- Common Unix Printing System development files', self.check_cups_devel, DEPENDENCY_COMPILE_TIME), + 'cups-image': (True, ['base'], "CUPS image - CUPS image development files", self.check_cups_image, DEPENDENCY_COMPILE_TIME), + 'gcc' : (True, ['base'], 'gcc - GNU Project C and C++ Compiler', self.check_gcc, DEPENDENCY_COMPILE_TIME), + 'make' : (True, ['base'], "make - GNU make utility to maintain groups of programs", self.check_make, DEPENDENCY_COMPILE_TIME), + 'python-devel' : (True, ['base'], "Python devel - Python development files", self.check_python_devel, DEPENDENCY_COMPILE_TIME), + 'libpthread' : (True, ['base'], "libpthread - POSIX threads library", self.check_libpthread, DEPENDENCY_RUN_AND_COMPILE_TIME), + 'python2x': (True, ['base'], "Python 2.2 or greater - Python programming language", self.check_python2x, DEPENDENCY_RUN_AND_COMPILE_TIME), + 'python-xml' : (True, ['base'], "Python XML libraries", self.check_python_xml, DEPENDENCY_RUN_TIME), + 'gs': (True, ['base'], "GhostScript - PostScript and PDF language interpreter and previewer", self.check_gs, DEPENDENCY_RUN_TIME), + 'libusb': (True, ['base'], "libusb - USB library", self.check_libusb, DEPENDENCY_RUN_AND_COMPILE_TIME), + + # Optional base packages + 'cups-ddk': (False, ['base'], "CUPS DDK - CUPS driver development kit", self.check_cupsddk, DEPENDENCY_RUN_TIME), # req. for .drv PPD installs + + + # Required scan packages + 'sane': (True, ['scan'], "SANE - Scanning library", self.check_sane, DEPENDENCY_RUN_TIME), + 'sane-devel' : (True, ['scan'], "SANE - Scanning library development files", self.check_sane_devel, DEPENDENCY_COMPILE_TIME), + + # Optional scan packages + 'xsane': (False, ['scan'], "xsane - Graphical scanner frontend for SANE", self.check_xsane, DEPENDENCY_RUN_TIME), + 'scanimage': (False, ['scan'], "scanimage - Shell scanning program", self.check_scanimage, DEPENDENCY_RUN_TIME), + 'pil': (False, ['scan'], "PIL - Python Imaging Library (required for commandline scanning with hp-scan)", self.check_pil, DEPENDENCY_RUN_TIME), + + # Required fax packages + 'python23': (True, ['fax'], "Python 2.3 or greater - Required for fax functionality", self.check_python23, DEPENDENCY_RUN_TIME), + 'dbus': (True, ['fax'], "DBus - Message bus system", self.check_dbus, DEPENDENCY_RUN_AND_COMPILE_TIME), + 'python-dbus': (True, ['fax'], "Python DBus - Python bindings for DBus", self.check_python_dbus, DEPENDENCY_RUN_TIME), + + # Optional fax packages + 'reportlab': (False, ['fax'], "Reportlab - PDF library for Python", self.check_reportlab, DEPENDENCY_RUN_TIME), + + # Required and optional qt4 GUI packages + 'pyqt4': (True, ['gui_qt4'], "PyQt 4- Qt interface for Python (for Qt version 4.x)", self.check_pyqt4, DEPENDENCY_RUN_TIME), # PyQt 4.x ) + 'pyqt4-dbus' : (True, ['gui_qt4'], "PyQt 4 DBus - DBus Support for PyQt4", self.check_pyqt4_dbus, DEPENDENCY_RUN_TIME), + 'policykit': (False, ['gui_qt4'], "PolicyKit - Administrative policy framework", self.check_policykit, DEPENDENCY_RUN_TIME), # optional for non-sudo behavior of plugins (only optional for Qt4 option) + 'python-notify' : (False, ['gui_qt4'], "Python libnotify - Python bindings for the libnotify Desktop notifications", self.check_pynotify, DEPENDENCY_RUN_TIME), # Optional for libnotify style popups from hp-systray + + # Required network I/O packages + 'libnetsnmp-devel': (True, ['network'], "libnetsnmp-devel - SNMP networking library development files", self.check_libnetsnmp, DEPENDENCY_RUN_AND_COMPILE_TIME), + 'libcrypto': (True, ['network'], "libcrypto - OpenSSL cryptographic library", self.check_libcrypto, DEPENDENCY_RUN_AND_COMPILE_TIME), + } + + for opt in self.options: + update_spinner() + for d in self.dependencies: + if opt in self.dependencies[d][1]: + self.options[opt][2].append(d) + + self.load_distros() + + self.distros_index = {} + for d in self.distros: + self.distros_index[self.distros[d]['index']] = d + + + def init(self, callback=None): + if callback is not None: + callback("Init...\n") + + update_spinner() + + # Package manager names + self.package_mgrs = [] + for d in self.distros: + update_spinner() + + for a in self.distros[d].get('package_mgrs', []): + if a and a not in self.package_mgrs: + self.package_mgrs.append(a) + + self.version_description, self.version_public, self.version_internal = self.get_hplip_version() + log.debug("HPLIP Description=%s Public version=%s Internal version = %s" % + (self.version_description, self.version_public, self.version_internal)) + + # have_dependencies + # is each dependency satisfied? + # start with each one 'No' + for d in self.dependencies: + update_spinner() + self.have_dependencies[d] = False + + self.get_distro() + self.distro_changed() + + if callback is not None: + callback("Distro: %s\n" % self.distro) + + self.check_dependencies(callback) + + for d in self.dependencies: + update_spinner() + + log.debug("have %s = %s" % (d, self.have_dependencies[d])) + + if callback is not None: + callback("Result: %s = %s\n" % (d, self.have_dependencies[d])) + + pid, cmdline = self.check_pkg_mgr() + if pid: + log.debug("Running package manager: %s (%d)" % (cmdline, pid) ) + + self.bitness = utils.getBitness() + log.debug("Bitness = %d" % self.bitness) + + update_spinner() + + self.endian = utils.getEndian() + log.debug("Endian = %d" % self.endian) + + update_spinner() + + self.distro_name = self.distros_index[self.distro] + self.distro_version_supported = self.get_distro_ver_data('supported', False) + + log.debug("Distro = %s Distro Name = %s Display Name= %s Version = %s Supported = %s" % + (self.distro, self.distro_name, self.distros[self.distro_name]['display_name'], + self.distro_version, self.distro_version_supported)) + + update_spinner() + + self.hplip_present = self.check_hplip() + log.debug("HPLIP (prev install) = %s" % self.hplip_present) + + status, output = self.run('cups-config --version') + self.cups_ver = output.strip() + log.debug("CUPS version = %s" % self.cups_ver) + + if self.distro_name == "ubuntu": + self.reload_dbus = True + + log.debug("DBUS configuration reload possible? %s" % self.reload_dbus) + + status, self.sys_uname_info = self.run('uname -a') + self.sys_uname_info = self.sys_uname_info.replace('\n', '') + log.debug(self.sys_uname_info) + + # Record the installation time/date and version. + # Also has the effect of making the .hplip.conf file user r/w + # on the 1st run so that running hp-setup as root doesn't lock + # the user out of owning the file + user_conf.set('installation', 'date_time', time.strftime("%x %H:%M:%S", time.localtime())) + user_conf.set('installation', 'version', self.version_public) + + if callback is not None: + callback("Done") + + + def init_for_docs(self, distro_name, version, bitness=32): + self.distro_name = distro_name + self.distro_version = version + + try: + self.distro = self.distros[distro_name]['index'] + except KeyError: + log.error("Invalid distro name: %s" % distro_name) + sys.exit(1) + + self.bitness = bitness + + for d in self.dependencies: + self.have_dependencies[d] = True + + self.enable_ppds = self.get_distro_ver_data('ppd_install', 'ppd') == 'ppd' + self.ppd_dir = self.get_distro_ver_data('ppd_dir') + self.drv_dir = self.get_distro_ver_data('drv_dir') + + self.distro_version_supported = True # for manual installs + + + def check_dependencies(self, callback=None): + update_ld_output() + + for d in self.dependencies: + update_spinner() + + log.debug("Checking for dependency '%s'...\n" % d) + + if callback is not None: + callback("Checking: %s\n" % d) + + self.have_dependencies[d] = self.dependencies[d][3]() + log.debug("have %s = %s" % (d, self.have_dependencies[d])) + + cleanup_spinner() + + + def password_func(self): + if self.password: + return self.password + elif self.ui_mode == INTERACTIVE_MODE: + import getpass + return getpass.getpass("Enter password: ") + else: + return '' + + + def run(self, cmd, callback=None, timeout=300): # ==> status, output + if cmd is None: + return 1, '' + output = cStringIO.StringIO() + ok, ret = False, '' + # Hack! TODO: Fix! + check_timeout = not (cmd.startswith('xterm') or cmd.startswith('gnome-terminal')) + + try: + child = pexpect.spawn(cmd, timeout=1) + except pexpect.ExceptionPexpect: + return 1, '' + + try: + try: + start = time.time() + + while True: + update_spinner() + + i = child.expect_list(EXPECT_LIST) + + cb = child.before + if cb: + # output + start = time.time() + log.log_to_file(cb) + log.debug(cb) + output.write(cb) + + if callback is not None: + if callback(cb): # cancel + break + + elif check_timeout: + # no output + span = int(time.time()-start) + + if span: + if span % 5 == 0: + log.debug("No output seen in %d secs" % span) + + if span > timeout: + log.error("No output seen in over %d sec... (Is the CD-ROM/DVD source repository enabled? It shouldn't be!)" % timeout) + child.close() + child.terminate(force=True) + break + + if i == 0: # EOF + ok, ret = True, output.getvalue() + break + + elif i == 1: # TIMEOUT + continue + + elif i == 2: # zypper "Continue?" + child.sendline("YES") + + else: # password + child.sendline(self.password) + + except (Exception, pexpect.ExceptionPexpect): + log.exception() + + finally: + cleanup_spinner() + + try: + child.close() + except OSError: + pass + + if ok: + return child.exitstatus, ret + else: + return 1, '' + + + def get_distro(self): + log.debug("Determining distro...") + self.distro, self.distro_version = DISTRO_UNKNOWN, '0.0' + + found = False + + lsb_release = utils.which("lsb_release") + + if lsb_release: + log.debug("Using 'lsb_release -is/-rs'") + cmd = os.path.join(lsb_release, "lsb_release") + status, name = self.run(cmd + ' -is') + name = name.lower().strip() + log.debug("Distro name=%s" % name) + + if not status and name: + status, ver = self.run(cmd + ' -rs') + ver = ver.lower().strip() + log.debug("Distro version=%s" % ver) + + if not status and ver: + for d in self.distros: + if name.find(d) > -1: + self.distro = self.distros[d]['index'] + found = True + self.distro_version = ver + break + + if not found: + try: + name = file('/etc/issue', 'r').read().lower().strip() + except IOError: + # Some O/Ss don't have /etc/issue (Mac) + self.distro, self.distro_version = DISTRO_UNKNOWN, '0.0' + else: + for d in self.distros: + if name.find(d) > -1: + self.distro = self.distros[d]['index'] + found = True + else: + for x in self.distros[d].get('alt_names', ''): + if x and name.find(x) > -1: + self.distro = self.distros[d]['index'] + found = True + break + + if found: + break + + if found: + for n in name.split(): + m= n + if '.' in n: + m = '.'.join(n.split('.')[:2]) + + try: + float(m) + except ValueError: + try: + int(m) + except ValueError: + self.distro_version = '0.0' + else: + self.distro_version = m + break + else: + self.distro_version = m + break + + log.debug("/etc/issue: %s %s" % (name, self.distro_version)) + + log.debug("distro=%d, distro_version=%s" % (self.distro, self.distro_version)) + + + def distro_changed(self): + ppd_install = self.get_distro_ver_data('ppd_install', 'ppd') + + if ppd_install not in ('ppd', 'drv'): + log.warning("Invalid ppd_install value: %s" % ppd_install) + + self.enable_ppds = (ppd_install == 'ppd') + + log.debug("Enable PPD install: %s (False=drv)" % self.enable_ppds) + + self.ppd_dir = self.get_distro_ver_data('ppd_dir') + + self.drv_dir = self.get_distro_ver_data('drv_dir') + if not self.enable_ppds and not self.drv_dir: + log.warning("Invalid drv_dir value: %s" % self.drv_dir) + + self.distro_version_supported = self.get_distro_ver_data('supported', False) + self.selected_options['fax'] = self.get_distro_ver_data('fax_supported', True) + self.selected_options['network'] = self.get_distro_ver_data('network_supported', True) + self.selected_options['scan'] = self.get_distro_ver_data('scan_supported', True) + self.selected_options['policykit'] = self.get_distro_ver_data('policykit', False) + self.native_cups = self.get_distro_ver_data('native_cups', False) + + # Adjust required flag based on the distro ver ui_toolkit value + ui_toolkit = self.get_distro_ver_data('ui_toolkit', 'qt4').lower() + + if ui_toolkit == 'qt4': + log.debug("Default UI toolkit: Qt4") + self.ui_toolkit = 'qt4' + self.selected_options['gui_qt4'] = True + + # todo: gtk + else: + self.selected_options['gui_qt4'] = False + + # Override with --qt4 command args + if self.enable is not None: + if 'qt4' in self.enable: + log.debug("User selected UI toolkit: Qt4") + self.ui_toolkit = 'qt4' + self.selected_options['gui_qt4'] = True + + if self.disable is not None: + if 'qt4' in self.disable: + log.debug("User deselected UI toolkit: Qt4") + self.selected_options['gui_qt4'] = False + + + def __fixup_data(self, key, data): + field_type = self.FIELD_TYPES.get(key, TYPE_STRING) + #log.debug("%s (%s) %d" % (key, data, field_type)) + + if field_type == TYPE_BOOL: + return utils.to_bool(data) + + elif field_type == TYPE_STRING: + if type('') == type(data): + return data.strip() + else: + return data + + elif field_type == TYPE_INT: + try: + return int(data) + except ValueError: + return 0 + + elif field_type == TYPE_LIST: + return [x for x in data.split(',') if x] + + + def load_distros(self): + if self.mode == MODE_INSTALLER: + distros_dat_file = os.path.join('installer', 'distros.dat') + + elif self.mode == MODE_CREATE_DOCS: + distros_dat_file = os.path.join('..', '..', 'installer', 'distros.dat') + + else: # MODE_CHECK + distros_dat_file = os.path.join(prop.home_dir, 'installer', 'distros.dat') + + if not os.path.exists(distros_dat_file): + log.debug("DAT file not found at %s. Using local relative path..." % distros_dat_file) + distros_dat_file = os.path.join('installer', 'distros.dat') + + distros_dat = ConfigBase(distros_dat_file) + distros_list = self.__fixup_data('distros', distros_dat.get('distros', 'distros')) + log.debug(distros_list) + + for distro in distros_list: + update_spinner() + d = {} + + if not distros_dat.has_section(distro): + log.debug("Missing distro section in distros.dat: [%s]" % distro) + continue + + for key in distros_dat.keys(distro): + d[key] = self.__fixup_data(key, distros_dat.get(distro, key)) + + self.distros[distro] = d + versions = self.__fixup_data("versions", distros_dat.get(distro, 'versions')) + self.distros[distro]['versions'] = {} + + for ver in versions: + same_as_version, supported = False, True + v = {} + ver_section = "%s:%s" % (distro, ver) + + if not distros_dat.has_section(ver_section): + log.error("Missing version section in distros.dat: [%s:%s]" % (distro, ver)) + continue + + if 'same_as_version' in distros_dat.keys(ver_section): + same_as_version = True + + supported = self.__fixup_data('supported', distros_dat.get(ver_section, 'supported')) + + for key in distros_dat.keys(ver_section): + v[key] = self.__fixup_data(key, distros_dat.get(ver_section, key)) + + self.distros[distro]['versions'][ver] = v + self.distros[distro]['versions'][ver]['dependency_cmds'] = {} + + if same_as_version: # or not supported: + continue + + for dep in self.dependencies: + dd = {} + dep_section = "%s:%s:%s" % (distro, ver, dep) + + if not distros_dat.has_section(dep_section) and not same_as_version: + log.debug("Missing dependency section in distros.dat: [%s:%s:%s]" % (distro, ver, dep)) + continue + + #if same_as_version: + # continue + + for key in distros_dat.keys(dep_section): + dd[key] = self.__fixup_data(key, distros_dat.get(dep_section, key)) + + self.distros[distro]['versions'][ver]['dependency_cmds'][dep] = dd + + versions = self.distros[distro]['versions'] + for ver in versions: + ver_section = "%s:%s" % (distro, ver) + + if 'same_as_version' in distros_dat.keys(ver_section): + v = self.__fixup_data("same_as_version", distros_dat.get(ver_section, 'same_as_version')) + log.debug("Setting %s:%s to %s:%s" % (distro, ver, distro, v)) + + try: + vv = self.distros[distro]['versions'][v].copy() + vv['same_as_version'] = v + self.distros[distro]['versions'][ver] = vv + except KeyError: + log.debug("Missing 'same_as_version=' version in distros.dat for section [%s:%s]." % (distro, v)) + continue + + #import pprint + #pprint.pprint(self.distros) + + def pre_install(self): + pass + + + def pre_depend(self): + pass + + + def check_python2x(self): + py_ver = sys.version_info + py_major_ver, py_minor_ver = py_ver[:2] + log.debug("Python ver=%d.%d" % (py_major_ver, py_minor_ver)) + return py_major_ver >= 2 + + + def check_gcc(self): + return check_tool('gcc --version', 0) and check_tool('g++ --version', 0) + + + def check_make(self): + return check_tool('make --version', 3.0) + + + def check_libusb(self): + if not check_lib('libusb'): + return False + + return len(locate_file_contains("usb.h", '/usr/include', 'usb_init(void)')) + + + def check_libjpeg(self): + return check_lib("libjpeg") and check_file("jpeglib.h") + + + def check_libcrypto(self): + return check_lib("libcrypto") and check_file("crypto.h") + + + def check_libpthread(self): + return check_lib("libpthread") and check_file("pthread.h") + + + def check_libnetsnmp(self): + return check_lib("libnetsnmp") and check_file("net-snmp-config.h") + + + def check_reportlab(self): + try: + log.debug("Trying to import 'reportlab'...") + import reportlab + + ver = reportlab.Version + try: + ver_f = float(ver) + except ValueError: + log.debug("Can't determine version.") + return False + else: + log.debug("Version: %.1f" % ver_f) + if ver_f >= 2.0: + log.debug("Success.") + return True + else: + return False + + except ImportError: + log.debug("Failed.") + return False + + + def check_python23(self): + py_ver = sys.version_info + py_major_ver, py_minor_ver = py_ver[:2] + log.debug("Python ver=%d.%d" % (py_major_ver, py_minor_ver)) + return py_major_ver >= 2 and py_minor_ver >= 3 + + + def check_python_xml(self): + try: + import xml.parsers.expat + except ImportError: + return False + else: + return True + + + def check_sane(self): + return check_lib('libsane') + + + def check_sane_devel(self): + return len(locate_file_contains("sane.h", '/usr/include', 'extern SANE_Status sane_init')) + + + def check_xsane(self): + if os.getenv('DISPLAY'): + return check_tool('xsane --version', 0.9) # will fail if X not running... + else: + return bool(utils.which("xsane")) # ...so just see if it installed somewhere + + + def check_scanimage(self): + return check_tool('scanimage --version', 1.0) + + + def check_gs(self): + return check_tool('gs -v', 7.05) + + + def check_pyqt4(self): + if self.ui_toolkit == 'qt4': + try: + import PyQt4 + except ImportError: + return False + else: + return True + + else: + return False + + + def check_pyqt4_dbus(self): + if self.ui_toolkit == 'qt4': + try: + from dbus.mainloop.qt import DBusQtMainLoop + except ImportError: + return False + else: + return True + else: + return False + + + def check_python_devel(self): + return check_file('Python.h') + + + def check_pynotify(self): + try: + import pynotify + except ImportError: + return False + + return True + + + def check_python_dbus(self): + log.debug("Checking for python-dbus (>= 0.80)...") + try: + import dbus + try: + ver = dbus.version + log.debug("Version: %s" % '.'.join([str(x) for x in dbus.version])) + return ver >= (0,80,0) + + except AttributeError: + try: + ver = dbus.__version__ + log.debug("Version: %s" % dbus.__version__) + log.debug("HPLIP requires dbus version > 0.80.") + return False + + except AttributeError: + log.debug("Unknown version. HPLIP requires dbus version > 0.80.") + return False + + except ImportError: + return False + + + def check_python_ctypes(self): + try: + import ctypes + return True + except ImportError: + return False + + + def check_dbus(self): + log.debug("Checking for dbus running and header files present (dbus-devel)...") + return check_ps(['dbus-daemon']) and \ + len(locate_file_contains("dbus-message.h", '/usr/include', 'dbus_message_new_signal')) + + + def check_cups_devel(self): + return check_file('cups.h') and bool(utils.which('lpr')) + + + def check_cups(self): + status, output = self.run('lpstat -r') + if status > 0: + log.debug("CUPS is not running.") + return False + else: + log.debug("CUPS is running.") + return True + + + def check_cups_image(self): + return check_file("raster.h", "/usr/include/cups") + + + def check_hplip(self): + log.debug("Checking for HPLIP...") + return locate_files('hplip.conf', '/etc/hp') + + + def check_hpssd(self): + log.debug("Checking for hpssd...") + return check_ps(['hpssd']) + + + def check_libtool(self): + log.debug("Checking for libtool...") + return check_tool('libtool --version') + + + def check_pil(self): + log.debug("Checking for PIL...") + try: + import Image + return True + except ImportError: + return False + + + def check_cupsddk(self): + log.debug("Checking for cups-ddk...") + # TODO: Compute these paths some way or another... + #return check_tool("/usr/lib/cups/driver/drv list") and os.path.exists("/usr/share/cupsddk/include/media.defs") + return (check_file('drv', "/usr/lib/cups/driver") or check_file('drv', "/usr/lib64/cups/driver")) and \ + check_file('media.defs', "/usr/share/cupsddk/include") + + + def check_policykit(self): + log.debug("Checking for PolicyKit...") + return (check_file('PolicyKit.conf', "/etc/PolicyKit") and check_file('org.gnome.PolicyKit.AuthorizationManager.service', "/usr/share/dbus-1/services")) or (check_file('50-localauthority.conf', "/etc/polkit-1/localauthority.conf.d") and check_file('org.freedesktop.PolicyKit1.service', "/usr/share/dbus-1/system-services")) + + def check_pkg_mgr(self): + """ + Check if any pkg mgr processes are running + """ + log.debug("Searching for '%s' in running processes..." % self.package_mgrs) + + processes = get_process_list() + + for pid, cmdline in processes: + for p in self.package_mgrs: + if p in cmdline: + for k in OK_PROCESS_LIST: + #print k, cmdline + if k in cmdline: + break + + else: + log.debug("Found: %s (%d)" % (cmdline, pid)) + return (pid, cmdline) + + log.debug("Not found") + return (0, '') + + + def get_hplip_version(self): + self.version_description, self.version_public, self.version_internal = '', '', '' + + if self.mode == MODE_INSTALLER: + ac_init_pat = re.compile(r"""AC_INIT\(\[(.*?)\], *\[(.*?)\], *\[(.*?)\], *\[(.*?)\] *\)""", re.IGNORECASE) + + try: + config_in = open('./configure.in', 'r') + except IOError: + self.version_description, self.version_public, self.version_internal = \ + '', sys_conf.get('configure', 'internal-tag', '0.0.0'), prop.installed_version + else: + for c in config_in: + if c.startswith("AC_INIT"): + match_obj = ac_init_pat.search(c) + self.version_description = match_obj.group(1) + self.version_public = match_obj.group(2) + self.version_internal = match_obj.group(3) + name = match_obj.group(4) + break + + config_in.close() + + if name != 'hplip': + log.error("Invalid archive!") + + + else: # MODE_CHECK + try: + self.version_description, self.version_public, self.version_internal = \ + '', sys_conf.get('configure', 'internal-tag', '0.0.0'), prop.installed_version + except KeyError: + self.version_description, self.version_public, self.version_internal = '', '', '' + + return self.version_description, self.version_public, self.version_internal + + + def configure(self): + configure_cmd = './configure' + configuration = {} + dbus_avail = self.have_dependencies['dbus'] and self.have_dependencies['python-dbus'] + configuration['network-build'] = self.selected_options['network'] + configuration['fax-build'] = self.selected_options['fax'] and dbus_avail + configuration['dbus-build'] = dbus_avail + configuration['qt4'] = self.selected_options['gui_qt4'] + configuration['scan-build'] = self.selected_options['scan'] + configuration['doc-build'] = self.selected_options['docs'] + configuration['policykit'] = self.selected_options['policykit'] + + # Setup printer driver configure flags based on distro data... + if self.native_cups: # hpcups + configuration['hpcups-install'] = True + configuration['hpijs-install'] = False + configuration['foomatic-ppd-install'] = False + configuration['foomatic-drv-install'] = False + + if self.enable_ppds: + configuration['cups-ppd-install'] = True + configuration['cups-drv-install'] = False + else: + configuration['cups-ppd-install'] = False + configuration['cups-drv-install'] = True + + else: # HPIJS/foomatic + configuration['hpcups-install'] = False + configuration['hpijs-install'] = True + configuration['cups-ppd-install'] = False + configuration['cups-drv-install'] = False + + if self.enable_ppds: + configuration['foomatic-ppd-install'] = True + configuration['foomatic-drv-install'] = False + else: + configuration['foomatic-ppd-install'] = False + configuration['foomatic-drv-install'] = True + + + # ... and then override and adjust for consistency with passed in parameters + if self.enable is not None: + for c in self.enable: + if c == 'hpcups-install': + configuration['hpijs-install'] = False + configuration['foomatic-ppd-install'] = False + configuration['foomatic-drv-install'] = False + elif c == 'hpijs-install': + configuration['hpcups-install'] = False + configuration['cups-ppd-install'] = False + configuration['cups-drv-install'] = False + elif c == 'foomatic-ppd-install': + configuration['foomatic-drv-install'] = False + elif c == 'foomatic-drv-install': + configuration['foomatic-ppd-install'] = False + elif c == 'cups-ppd-install': + configuration['cups-drv-install'] = False + elif c == 'cups-drv-install': + configuration['cups-ppd-install'] = False + + if self.disable is not None: + for c in self.disable: + if c == 'hpcups-install': + configuration['hpijs-install'] = True + configuration['cups-ppd-install'] = False + configuration['cups-drv-install'] = False + elif c == 'hpijs-install': + configuration['hpcups-install'] = True + configuration['foomatic-ppd-install'] = False + configuration['foomatic-drv-install'] = False + elif c == 'foomatic-ppd-install': + configuration['foomatic-drv-install'] = True + elif c == 'foomatic-drv-install': + configuration['foomatic-ppd-install'] = True + elif c == 'cups-ppd-install': + configuration['cups-drv-install'] = True + elif c == 'cups-drv-install': + configuration['cups-ppd-install'] = True + + if self.ppd_dir is not None: + configure_cmd += ' --with-hpppddir=%s' % self.ppd_dir + + libdir_path = self.get_distro_ver_data('libdir_path',False) + if libdir_path and self.bitness == 64: + configure_cmd += ' --libdir=%s' % (libdir_path) + elif self.bitness == 64: + configure_cmd += ' --libdir=/usr/lib64' + + configure_cmd += ' --prefix=%s' % self.install_location + + if self.get_distro_ver_data('cups_path_with_bitness', False) and self.bitness == 64: + configure_cmd += ' --with-cupsbackenddir=/usr/lib64/cups/backend --with-cupsfilterdir=/usr/lib64/cups/filter' + + if self.get_distro_ver_data('acl_rules', False): + configure_cmd += ' --enable-udev-acl-rules' + + if self.enable is not None: + for c in self.enable: + configuration[c] = True + + if self.disable is not None: + for c in self.disable: + configuration[c] = False + + for c in configuration: + if configuration[c]: + configure_cmd += ' --enable-%s' % c + else: + configure_cmd += ' --disable-%s' % c + + return configure_cmd + + def configure_html(self): + configure_cmd = './configure' + configure_cmd += ' --prefix=/usr' + configure_cmd += ' --with-hpppddir=%s' % self.ppd_dir + + if self.bitness == 64: + configure_cmd += ' --libdir=/usr/lib64' + + self.ui_toolkit = self.get_distro_ver_data('ui_toolkit') + if self.ui_toolkit is not None and self.ui_toolkit == 'qt3': + configure_cmd += ' --enable-qt3 --disable-qt4' + else: + configure_cmd += ' --enable-qt4' + + self.native_cups = self.get_distro_ver_data('native_cups') + if self.native_cups is not None and self.native_cups == 1: + configure_cmd += ' --enable-hpcups-install --enable-cups-drv-install --enable-cups-ppd-install --disable-hpijs-install --disable-foomatic-drv-install --disable-foomatic-ppd-install --disable-foomatic-rip-hplip-install' + else: + configure_cmd += ' --disable-hpcups-install --disable-cups-drv-install --disable-cups-ppd-install --enable-hpijs-install --enable-foomatic-drv-install --enable-foomatic-ppd-install --enable-foomatic-rip-hplip-install' + + self.fax_supported = self.get_distro_ver_data('fax_supported') + if self.fax_supported is None: + configure_cmd += ' --disable-fax-build --disable-dbus-build' + else: + configure_cmd += ' --enable-fax-build --enable-dbus-build' + + self.network_supported = self.get_distro_ver_data('network_supported') + if self.network_supported is None: + configure_cmd += ' --disable-network-build' + else: + configure_cmd += ' --enable-network-build' + + self.scan_supported = self.get_distro_ver_data('scan_supported') + if self.scan_supported is None: + configure_cmd += ' --disable-scan-build' + else: + configure_cmd += ' --enable-scan-build' + + self.policykit = self.get_distro_ver_data('policykit') + if self.policykit is not None and self.policykit == 1: + configure_cmd += ' --enable-policykit' + else: + configure_cmd += ' --disable-policykit' + + return configure_cmd + + def configure_qt4(self): + configure_cmd = './configure' + configure_cmd += ' --prefix=/usr' + configure_cmd += ' --with-hpppddir=%s' % self.ppd_dir + + if self.bitness == 64: + configure_cmd += ' --libdir=/usr/lib64' + + self.ui_toolkit = self.get_distro_ver_data('ui_toolkit') + if self.ui_toolkit is not None and self.ui_toolkit == 'qt3': + configure_cmd += ' --enable-qt3 --disable-qt4' + else: + configure_cmd += ' --enable-qt4' + + self.native_cups = self.get_distro_ver_data('native_cups') + self.ppd_install = self.get_distro_ver_data('ppd_install') + if self.native_cups is not None and self.native_cups == 1: + configure_cmd += ' --enable-hpcups-install' + if self.ppd_install == 'drv': + configure_cmd += ' --enable-cups-drv-install --disable-cups-ppd-install' + else: + configure_cmd += ' --enable-cups-ppd-install --disable-cups-drv-install' + configure_cmd += ' --disable-hpijs-install --disable-foomatic-drv-install --disable-foomatic-ppd-install --disable-foomatic-rip-hplip-install' + else: + configure_cmd += ' --enable-hpijs-install' + if self.ppd_install == 'drv': + configure_cmd += ' --enable-foomatic-drv-install --disable-foomatic-ppd-install' + else: + configure_cmd += ' --enable-foomatic-ppd-install --disable-foomatic-drv-install' + configure_cmd += ' --enable-foomatic-rip-hplip-install --disable-hpcups-install --disable-cups-drv-install --disable-cups-ppd-install' + + self.fax_supported = self.get_distro_ver_data('fax_supported') + if self.fax_supported is None: + configure_cmd += ' --disable-fax-build --disable-dbus-build' + else: + configure_cmd += ' --enable-fax-build --enable-dbus-build' + + self.network_supported = self.get_distro_ver_data('network_supported') + if self.network_supported is None: + configure_cmd += ' --disable-network-build' + else: + configure_cmd += ' --enable-network-build' + + self.scan_supported = self.get_distro_ver_data('scan_supported') + if self.scan_supported is None: + configure_cmd += ' --disable-scan-build' + else: + configure_cmd += ' --enable-scan-build' + + self.policykit = self.get_distro_ver_data('policykit') + if self.policykit is not None and self.policykit == 1: + configure_cmd += ' --enable-policykit' + else: + configure_cmd += ' --disable-policykit' + + return configure_cmd + + + def restart_cups(self): + if os.path.exists('/etc/init.d/cups'): + cmd = self.su_sudo() % '/etc/init.d/cups restart' + + elif os.path.exists('/etc/init.d/cupsys'): + cmd = self.su_sudo() % '/etc/init.d/cupsys restart' + + else: + cmd = self.su_sudo() % 'killall -HUP cupsd' + + self.run(cmd) + + + def stop_hplip(self): + return self.su_sudo() % "/etc/init.d/hplip stop" + + + def su_sudo(self): + if os.geteuid() == 0: + return '%s' + else: + try: + cmd = self.distros[self.distro_name]['su_sudo'] + except KeyError: + cmd = 'su' + + if cmd == 'su': + return 'su -c "%s"' + else: + return 'sudo %s' + + def su_sudo_str(self): + return self.get_distro_data('su_sudo', 'su') + + + def build_cmds(self): + return [self.configure(), + 'make clean', + 'make', + self.su_sudo() % 'make install'] + + + def get_distro_ver_data(self, key, default=None): + try: + return self.distros[self.distro_name]['versions'][self.distro_version].get(key, None) or \ + self.distros[self.distro_name].get(key, None) or default + except KeyError: + return default + + return value + + + def get_distro_data(self, key, default=None): + try: + return self.distros[self.distro_name].get(key, None) or default + except KeyError: + return default + + + def get_ver_data(self, key, default=None): + try: + return self.distros[self.distro_name]['versions'][self.distro_version].get(key, None) or default + except KeyError: + return default + + return value + + + def get_dependency_data(self, dependency): + dependency_cmds = self.get_ver_data("dependency_cmds", {}) + dependency_data = dependency_cmds.get(dependency, {}) + packages = dependency_data.get('packages', []) + commands = dependency_data.get('commands', []) + return packages, commands + + + def get_dependency_commands(self): + dd = self.dependencies.keys() + dd.sort() + commands_to_run = [] + packages_to_install = [] + overall_commands_to_run = [] + for d in dd: + include = False + for opt in self.dependencies[d][1]: + if self.selected_options[opt]: + include = True + if include: + pkgs, cmds = self.get_dependency_data(d) + + if pkgs: + for p in pkgs: + if not p in packages_to_install: + packages_to_install.append(p) + + if cmds: + commands_to_run.extend(cmds) + + package_mgr_cmd = self.get_distro_data('package_mgr_cmd') + + overall_commands_to_run.extend(commands_to_run) + + if package_mgr_cmd: + packages_to_install = ' '.join(packages_to_install) + overall_commands_to_run.append(utils.cat(package_mgr_cmd)) + + if not overall_commands_to_run: + log.error("No cmds/pkgs") + + return overall_commands_to_run + + + def distro_known(self): + return self.distro != DISTRO_UNKNOWN and self.distro_version != DISTRO_VER_UNKNOWN + + + def distro_supported(self): + if self.mode == MODE_INSTALLER: + return self.distro != DISTRO_UNKNOWN and self.distro_version != DISTRO_VER_UNKNOWN and self.get_ver_data('supported', False) + else: + return True # For docs (manual install) + + + def sort_vers(self, x, y): + try: + return cmp(float(x), float(y)) + except ValueError: + return cmp(x, y) + + + def running_as_root(self): + return os.geteuid() == 0 + + + def show_release_notes_in_browser(self): + url = "file://%s" % os.path.join(os.getcwd(), 'doc', 'release_notes.html') + log.debug(url) + status, output = self.run("xhost +") + utils.openURL(url) + + + def count_num_required_missing_dependencies(self): + num_req_missing = 0 + for d, desc, opt in self.missing_required_dependencies(): + num_req_missing += 1 + return num_req_missing + + + def count_num_optional_missing_dependencies(self): + num_opt_missing = 0 + for d, desc, req, opt in self.missing_optional_dependencies(): + num_opt_missing += 1 + return num_opt_missing + + + def missing_required_dependencies(self): # missing req. deps in req. options + for opt in self.components[self.selected_component][1]: + if self.options[opt][0]: # required options + for d in self.options[opt][2]: # dependencies for option + if self.dependencies[d][0]: # required option + if not self.have_dependencies[d]: # missing + log.debug("Missing required dependency: %s" % d) + yield d, self.dependencies[d][2], opt + # depend, desc, option + + def missing_optional_dependencies(self): + # missing deps in opt. options + for opt in self.components[self.selected_component][1]: + if not self.options[opt][0]: # not required option + if self.selected_options[opt]: # only for options that are ON + for d in self.options[opt][2]: # dependencies + if not self.have_dependencies[d]: # missing dependency + log.debug("Missing optional dependency: %s" % d) + yield d, self.dependencies[d][2], self.dependencies[d][0], opt + # depend, desc, required_for_opt, opt + + # opt. deps in req. options + for opt in self.components[self.selected_component][1]: + if self.options[opt][0]: # required options + for d in self.options[opt][2]: # dependencies for option + if d == 'cups-ddk': + status, output = self.run('cups-config --version') + import string + if status == 0 and (string.count(output, '.') == 1 or string.count(output, '.') == 2): + if string.count(output, '.') == 1: + major, minor = string.split(output, '.', 2) + if string.count(output, '.') == 2: + major, minor, release = string.split(output, '.', 3) + if len(minor) > 1 and minor[1] >= '0' and minor[1] <= '9': + minor = ((ord(minor[0]) - ord('0')) * 10) + (ord(minor[1]) - ord('0')) + else: + minor = ord(minor[0]) - ord('0') + if major > '1' or (major == '1' and minor >= 4): + continue + if not self.dependencies[d][0]: # optional dep + if not self.have_dependencies[d]: # missing + log.debug("Missing optional dependency: %s" % d) + yield d, self.dependencies[d][2], self.dependencies[d][0], opt + # depend, desc, option + + def select_options(self, answer_callback): + num_opt_missing = 0 + # not-required options + for opt in self.components[self.selected_component][1]: + if not self.options[opt][0]: # not required + default = 'y' + + if not self.selected_options[opt]: + default = 'n' + + self.selected_options[opt] = answer_callback(opt, self.options[opt][1], default) + + if self.selected_options[opt]: # only for options that are ON + for d in self.options[opt][2]: # dependencies + if not self.have_dependencies[d]: # missing dependency + log.debug("Missing optional dependency: %s" % d) + num_opt_missing += 1 + + return num_opt_missing + + + def check_network_connection(self): + self.network_connected = False + + wget = utils.which("wget") + if wget: + wget = os.path.join(wget, "wget") + cmd = "%s --timeout=60 --output-document=- %s" % (wget, HTTP_GET_TARGET) + log.debug(cmd) + status, output = self.run(cmd) + log.debug("wget returned: %d" % status) + self.network_connected = (status == 0) + + else: + curl = utils.which("curl") + if curl: + curl = os.path.join(curl, "curl") + cmd = "%s --output - --connect-timeout 5 --max-time 10 %s" % (curl, HTTP_GET_TARGET) + log.debug(cmd) + status, output = self.run(cmd) + log.debug("curl returned: %d" % status) + self.network_connected = (status == 0) + + else: + ping = utils.which("ping") + + if ping: + ping = os.path.join(ping, "ping") + cmd = "%s -c1 -W1 -w10 %s" % (ping, PING_TARGET) + log.debug(cmd) + status, output = self.run(cmd) + log.debug("ping returned: %d" % status) + self.network_connected = (status == 0) + + return self.network_connected + + + def run_pre_install(self, callback=None): + pre_cmd = self.get_distro_ver_data('pre_install_cmd') + log.debug(pre_cmd) + if pre_cmd: + x = 1 + for cmd in pre_cmd: + status, output = self.run(cmd) + + if status != 0: + log.warn("An error occurred running '%s'" % cmd) + + if callback is not None: + callback(cmd, "Pre-install step %d" % x) + + x += 1 + + return True + + else: + return False + + + def run_pre_depend(self, callback=None): + pre_cmd = self.get_distro_ver_data('pre_depend_cmd') + log.debug(pre_cmd) + if pre_cmd: + x = 1 + for cmd in pre_cmd: + status, output = self.run(cmd) + + if status != 0: + log.warn("An error occurred running '%s'" % cmd) + + if callback is not None: + callback(cmd, "Pre-depend step %d" % x) + + x += 1 + + + def run_post_depend(self, callback=None): + post_cmd = self.get_distro_ver_data('post_depend_cmd') + log.debug(post_cmd) + if post_cmd: + x = 1 + for cmd in post_cmd: + status, output = self.run(cmd) + + if status != 0: + log.warn("An error occurred running '%s'" % cmd) + + if callback is not None: + callback(cmd, "Post-depend step %d" % x) + + x += 1 + + + def run_open_mdns_port(self, callback=None): + open_mdns_port_cmd = self.get_distro_ver_data('open_mdns_port') + log.debug(open_mdns_port_cmd) + if open_mdns_port_cmd: + x = 1 + for cmd in open_mdns_port_cmd: + cmd = self.su_sudo() % cmd + status, output = self.run(cmd) + + if status != 0: + log.warn("An error occurred running '%s'" % cmd) + log.warn(output) + + if callback is not None: + callback(cmd, "Open mDNS/Bonjour step %d" % x) + + x += 1 + + + def pre_build(self): + cmds = [] + if self.get_distro_ver_data('fix_ppd_symlink', False): + cmds.append(self.su_sudo() % 'python ./installer/fix_symlink.py') + + return cmds + + + def run_pre_build(self, callback=None): + x = 1 + for cmd in self.pre_build(): + status, output = self.run(cmd) + if callback is not None: + callback(cmd, "Pre-build step %d" % x) + + x += 1 + + + def run_post_build(self, callback=None): + x = 1 + for cmd in self.post_build(): + status, output = self.run(cmd) + if callback is not None: + callback(cmd, "Post-build step %d" % x) + + x += 1 + + + def post_build(self): + cmds = [] + # Reload DBUS configuration if distro supports it and PolicyKit + # support installed + if self.reload_dbus and self.selected_options['policykit']: + cmds.append(self.su_sudo() % "sh /etc/init.d/dbus reload") + log.debug("Will reload DBUS configuration for PolicyKit support") + + # Kill any running hpssd.py instance from a previous install + if self.check_hpssd(): + pid = get_ps_pid('hpssd') + if pid: + kill = os.path.join(utils.which("kill"), "kill") + " %d" % pid + cmds.append(self.su_sudo() % kill) + + # Add user to group if needed + # add_user_to_group=<usermod params> [TYPE_STRING] (leave empty for none) [ex. "-a -G sys" or "-G lp"] + add_user_to_group = self.get_distro_ver_data('add_user_to_group', '') + if add_user_to_group: + usermod = os.path.join(utils.which("usermod"), "usermod") + " %s %s" % (add_user_to_group, prop.username) + cmds.append(self.su_sudo() % usermod) + + return cmds + + + def logoff(self): + ok = False + pkill = utils.which('pkill') + if pkill: + cmd = "%s -KILL -u %s" % (os.path.join(pkill, "pkill"), prop.username) + cmd = self.su_sudo() % cmd + status, output = self.run(cmd) + + ok = (status == 0) + + return ok + + + def restart(self): + ok = False + shutdown = utils.which('shutdown') + if shutdown: + cmd = "%s -r now" % (os.path.join(shutdown, "shutdown")) + cmd = self.su_sudo() % cmd + status, output = self.run(cmd) + + ok = (status == 0) + + return ok + + + def run_hp_setup(self): + status = 0 + hpsetup = utils.which("hp-setup") + + if hpsetup: + cmd = 'hp-setup' + else: + cmd = './setup.py' + + log.debug(cmd) + status, output = self.run(cmd) + return status == 0 + + + def remove_hplip(self, callback=None): + failed = True + self.stop_pre_2x_hplip(callback) + + hplip_remove_cmd = self.get_distro_data('hplip_remove_cmd') + if hplip_remove_cmd: + if callback is not None: + callback(hplip_remove_cmd, "Removing old HPLIP version") + + status, output = self.run(hplip_remove_cmd) + + if status == 0: + self.hplip_present = self.check_hplip() + + if not self.hplip_present: + failed = False + + return failed + + + def stop_pre_2x_hplip(self, callback=None): + hplip_init_script = '/etc/init.d/hplip stop' + if os.path.exists(hplip_init_script): + cmd = self.su_sudo() % hplip_init_script + + if callback is not None: + callback(cmd, "Stopping old HPLIP version.") + + status, output = self.run(cmd) + + + + def check_password(self, password_entry_callback, callback=None): + self.clear_su_sudo_password() + x = 1 + while True: + self.password = password_entry_callback() + cmd = self.su_sudo() % "true" + + log.debug(cmd) + + status, output = self.run(cmd) + + log.debug(status) + log.debug(output) + + if status == 0: + if callback is not None: + callback("", "Password accepted") + return True + + if callback is not None: + if "not in the sudoers file" in output: + callback("", "%s is not in the sudoers file. Check privileges\n" %(os.getenv('USER')) ) + return False + else: + callback("", "Password incorrect. %d attempt(s) left." % (3-x )) + + + x += 1 + + if x > 3: + return False + + + def clear_su_sudo_password(self): + if self.su_sudo_str() == 'sudo': + log.debug("Clearing password...") + self.run("sudo -K") + + + + # PLUGIN HELPERS + + def set_plugin_version(self): + self.plugin_version = prop.installed_version + log.debug("Plug-in version=%s" % self.plugin_version) + self.plugin_name = 'hplip-%s-plugin.run' % self.plugin_version + log.debug("Plug-in=%s" % self.plugin_name) + + + def get_plugin_conf_url(self): + url = "http://hplip.sf.net/plugin.conf" + home = sys_conf.get('dirs', 'home') + + if os.path.exists('/etc/hp/plugin.conf'): + url = "file:///etc/hp/plugin.conf" + + elif os.path.exists(os.path.join(home, 'plugin.conf')): + url = "file://" + os.path.join(home, 'plugin.conf') + + log.debug("Plugin.conf url: %s" % url) + return url + + + def get_plugin_info(self, plugin_conf_url, callback): + ok, size, checksum, timestamp, url = False, 0, 0, 0.0, '' + + if not self.create_plugin_dir(): + log.error("Could not create plug-in directory.") + return '', 0, 0, 0, False + + local_conf_fp, local_conf = utils.make_temp_file() + + #if os.path.exists(local_conf): + #os.remove(local_conf) + + try: + try: + #filename, headers = urllib.urlretrieve(plugin_conf_url, local_conf, callback) + wget = utils.which("wget") + if wget: + wget = os.path.join(wget, "wget") + status, output = self.run("%s --timeout=60 --output-document=%s %s --cache=off" %(wget, local_conf, plugin_conf_url)) + if status: + log.error("Plugin download failed with error code = %d" %status) + return '', 0, 0, 0, False + else: + log.error("Please install wget package to download the plugin.") + return '', 0, 0, 0, False + except IOError, e: + log.error("I/O Error: %s" % e.strerror) + return '', 0, 0, 0, False + + if not os.path.exists(local_conf): + log.error("plugin.conf not found.") + return '', 0, 0, 0, False + + plugin_conf_p = ConfigParser.ConfigParser() + + try: + plugin_conf_p.read(local_conf) + except (ConfigParser.MissingSectionHeaderError, ConfigParser.ParsingError): + log.error("Error parsing file - 404 error?") + return '', 0, 0, 0, False + + try: + url = plugin_conf_p.get(self.plugin_version, 'url') + size = plugin_conf_p.getint(self.plugin_version, 'size') + checksum = plugin_conf_p.get(self.plugin_version, 'checksum') + timestamp = plugin_conf_p.getfloat(self.plugin_version, 'timestamp') + ok = True + except (KeyError, ConfigParser.NoSectionError): + log.error("Error reading plugin.conf: Missing section [%s]" % self.plugin_version) + return '', 0, 0, 0, False + + finally: + os.close(local_conf_fp) + os.remove(local_conf) + + return url, size, checksum, timestamp, ok + + + def create_plugin_dir(self): + if not os.path.exists(self.plugin_path): + try: + log.debug("Creating plugin directory: %s" % self.plugin_path) + os.umask(0) + os.makedirs(self.plugin_path, 0755) + return True + except (OSError, IOError), e: + log.error("Unable to create directory: %s" % e.strerror) + return False + + return True + + + def isErrorPage(self, page): + """ + Example code from David Mertz' Text Processing in Python. + Released in the Public Domain. + """ + err_score = 0.0 + + for pat, prob in err_pats.items(): + if err_score > 0.9: break + if re.search(pat, page): + err_score += prob + + log.debug("File error page score: %f" % (err_score)) + + return err_score > 0.50 + + + def download_plugin(self, url, size, checksum, timestamp, callback=None): + log.debug("Downloading %s plug-in file from '%s' to '%s'..." % (self.plugin_version, url, self.plugin_path)) + + if not self.create_plugin_dir(): + return PLUGIN_INSTALL_ERROR_DIRECTORY_ERROR, self.plugin_path + + plugin_file = os.path.join(self.plugin_path, self.plugin_name) + + + #Check whether plugin is accessible in Openprinting.org website otherwise dowload plugin from alternate location. + wget = utils.which("wget") + if wget: + wget = os.path.join(wget, "wget") + cmd = "%s --cache=off -P %s %s" % (wget,self.plugin_path,url) + log.debug(cmd) + status, output = self.run(cmd) + log.debug("wget returned: %d" % status) + + try: + if (status != 0) and 'file://' not in url: + url = os.path.join(PLUGIN_FALLBACK_LOCATION, self.plugin_name) + log.info("Plugin is not accessible. Trying to download it from fallback location: [%s]" % url) + cmd = "%s --cache=off -P %s %s" % (wget,self.plugin_path,url) + log.debug(cmd) + status, output = self.run(cmd) + if 'file://' in url: + filename, headers = urllib.urlretrieve(url, plugin_file, callback) + except IOError, e: + log.error("Plug-in download failed: %s" % e.strerror) + return PLUGIN_INSTALL_ERROR_PLUGIN_FILE_NOT_FOUND, e.strerror + + if self.isErrorPage(file(plugin_file, 'r').read(1024)): + log.debug(file(plugin_file, 'r').read(1024)) + os.remove(plugin_file) + return PLUGIN_INSTALL_ERROR_PLUGIN_FILE_NOT_FOUND, -1 + + calc_checksum = get_checksum(file(plugin_file, 'r').read()) + log.debug("D/L file checksum=%s" % calc_checksum) + + # Try to download and check the GPG digital signature + digsig_url = url + '.asc' + digsig_file = plugin_file + '.asc' + + log.debug("Downloading %s plug-in digital signature file from '%s' to '%s'..." % (self.plugin_version, digsig_url, digsig_file)) + + try: + if 'file://' in url: + filename, headers = urllib.urlretrieve(digsig_url, digsig_file, callback) + else: + cmd = "%s --cache=off -P %s %s" % (wget,self.plugin_path,digsig_url) + log.debug(cmd) + status, output = self.run(cmd) + except IOError, e: + log.error("Plug-in GPG file [%s] download failed: %s" % (digsig_url,e.strerror)) + return PLUGIN_INSTALL_ERROR_DIGITAL_SIG_NOT_FOUND, e.strerror + + if self.isErrorPage(file(digsig_file, 'r').read(1024)): + log.debug(file(digsig_file, 'r').read()) + os.remove(digsig_file) + return PLUGIN_INSTALL_ERROR_DIGITAL_SIG_NOT_FOUND, -1 + + gpg = utils.which('gpg') + if gpg: + gpg = os.path.join(gpg, 'gpg') + cmd = '%s --no-permission-warning --keyserver pgp.mit.edu --recv-keys 0xA59047B9' % gpg + log.info("Receiving digital keys: %s" % cmd) + status, output = self.run(cmd) + log.debug(output) + + if status != 0: + return PLUGIN_INSTALL_ERROR_UNABLE_TO_RECV_KEYS, status + + cmd = '%s --no-permission-warning --verify %s %s' % (gpg, digsig_file, plugin_file) + log.debug("Verifying plugin with digital keys: %s" % cmd) + status, output = self.run(cmd) + log.debug(output) + log.debug("%s status: %d" % (gpg, status)) + + if status != 0: + return PLUGIN_INSTALL_ERROR_DIGITAL_SIG_BAD, status + + + return PLUGIN_INSTALL_ERROR_NONE, plugin_file + +# +# return value: +# '-1' --> PLUGIN_VERSION_MISMATCH -->version mismatch +# '0' --> PLUGIN_NOT_INSTALLED --> not installed +# '1' --> PLUGIN_INSTALLED + + def check_for_plugin(self): + sys_state.read() + plugin_state = sys_state.get('plugin', 'installed', PLUGIN_NOT_INSTALLED) + if plugin_state != PLUGIN_NOT_INSTALLED and self.check_plugin_version() is False: + log.debug("Plug-in version mismatch. Need to install plugin again") + plugin_state = PLUGIN_VERSION_MISMATCH + elif plugin_state == PLUGIN_INSTALLED: + log.debug("Plugin is installed") + else: + log.debug("Plugin is not installed") + + # cross checking so files present or not. + if plugin_state != PLUGIN_NOT_INSTALLED: + Scan_sts =self.check_scanner_plugin_files() + Fax_sts = self.check_fax_plugin_files() + Prnt_sts = self.check_printer_plugin_files() + if Scan_sts!= PLUGIN_STATUS_FILES_PRESENT or Fax_sts!= PLUGIN_STATUS_FILES_PRESENT or Prnt_sts != PLUGIN_STATUS_FILES_PRESENT: + log.debug("Plug-in files might be corrupted. Re-install plug-in") + plugin_state = PLUGIN_VERSION_MISMATCH + + return plugin_state + + def check_plugin_version(self): + sys_state.read() + plugin_installed_version = sys_state.get('plugin','version', '0.0.0') + hplip_version = sys_conf.get('hplip', 'version', '0.0.0') + if plugin_installed_version == hplip_version: + return True + else: + return False + + + + def check_printer_plugin_files(self): + ret_val = None + home = sys_conf.get('dirs', 'home') + printer_so_dir= home+"/prnt/plugins/" + ret_val = self.check_so_exists(printer_so_dir, 'lj.so', "Printer",ret_val) + return ret_val + + + def check_scanner_plugin_files(self): + ret_val = None + home = sys_conf.get('dirs', 'home') + scan_so_files_list =['bb_marvell.so' , 'bb_soapht.so' , 'bb_soap.so'] + + cnt=0 + scanner_so_dir= home+'/scan/plugins/' + while cnt < len(scan_so_files_list): + ret_val = self.check_so_exists(scanner_so_dir, scan_so_files_list[cnt], "Scanner",ret_val) + cnt += 1 + return ret_val + + + + def check_fax_plugin_files(self): + ret_val = None + home = sys_conf.get('dirs', 'home') + fax_so_dir= home+"/fax/plugins/" + ret_val = self.check_so_exists(fax_so_dir,'fax_marvell.so' ,"Fax",ret_val) + return ret_val + + + def check_so_exists(self, sym_link_dir, so_file, functionType, Pre_ret_val): + ret_val = Pre_ret_val + sym_link_file = sym_link_dir + so_file + if not os.path.exists(sym_link_file): + log.debug("Either %s file is not present or symbolic link is missing: %s" %(functionType, sym_link_file)) + user_conf.set(functionType+'_plugins', so_file,'Not_Found') + if ret_val == None: + ret_val= PLUGIN_STATUS_FILES_NOT_PRESENT + elif ret_val == PLUGIN_STATUS_FILES_PRESENT: + ret_val = PLUGIN_STATUS_PARTIAL_FILES_PRESENT + else: + # capturing real file path + if os.path.islink(sym_link_file): + real_file = os.path.realpath(sym_link_file) + else: + real_file = sym_link_file + + if not os.path.exists(real_file): + log.debug("%s Plugin file is missing: %s" % (functionType, real_file)) + user_conf.set(functionType+'_plugins', so_file,'Not_Found') + if ret_val == None: + ret_val= PLUGIN_STATUS_FILES_NOT_PRESENT + elif ret_val == PLUGIN_STATUS_FILES_PRESENT: + ret_val = PLUGIN_STATUS_PARTIAL_FILES_PRESENT + elif (os.stat(sym_link_file).st_mode & 72) != 72: + user_conf.set(functionType+'_plugins', so_file,'Permissin_Error') + log.debug("%s Plugin file doesn't have user/group execute permission: %s" % (functionType,sym_link_file)) + if ret_val == None: + ret_val= PLUGIN_STATUS_FILES_NOT_PRESENT + elif ret_val == PLUGIN_STATUS_FILES_PRESENT: + ret_val = PLUGIN_STATUS_PARTIAL_FILES_PRESENT + else: + user_conf.set(functionType+'_plugins', so_file,'Present') + if ret_val == None: + ret_val= PLUGIN_STATUS_FILES_PRESENT + elif ret_val == PLUGIN_STATUS_FILES_NOT_PRESENT: + ret_val = PLUGIN_STATUS_PARTIAL_FILES_PRESENT + + log.debug("%s Plug-in file %s status: %d" % (functionType, sym_link_file, ret_val)) + return ret_val + + + + def run_plugin(self, mode=GUI_MODE, callback=None): + plugin_file = os.path.join(self.plugin_path, self.plugin_name) + + if not os.path.exists(plugin_file): + return False + + if mode == GUI_MODE: + return os.system("sh %s --nox11 -- -u" % plugin_file) == 0 + else: + if os.system("sh %s --nox11 -- -i" % plugin_file) == 0: + return True + else: + log.error("Python gobject/dbus may be not installed") + return False + + + def delete_plugin(self): + plugin_file = os.path.join(self.plugin_path, self.plugin_name) + digsig_file = plugin_file + ".asc" + + if os.path.exists(plugin_file): + os.unlink(plugin_file) + if os.path.exists(digsig_file): + os.unlink(digsig_file) + + + def is_auto_installer_support(self): + if not self.distro_name: + self.get_distro() + self.distro_name = self.distros_index[self.distro] + + if self.distro_name and self.distro_name in ("ubuntu","debian","suse","fedora"): + log.debug("Auto installation is supported for Distro =%s version =%s "%(self.distro_name, self.distro_version)) + return True + else: + log.debug("Auto installation is not supported for Distro =%s version =%s "%(self.distro_name, self.distro_version)) + return False + + + def uninstall(self,mode = INTERACTIVE_MODE, callback=None): + checkSudo = False + if os.getuid() != 0: + checkSudo = True +# log.error("To run 'hp-uninstall' utility, you must have root privileges.") +# return False + + home_dir= sys_conf.get("dirs","home","") + version= sys_conf.get("hplip","version","0.0.0") + if home_dir is "": + log.error("HPLIP is not installed.") + return False + + if mode != NON_INTERACTIVE_MODE: + ok,choice = tui.enter_choice("\nAre you sure to uninstall HPLIP-%s (y=yes, n=no*)?:" %version,['y','n'],'n') + if not ok or choice == 'n': + return False + + hplip_remove_cmd = self.get_distro_data('hplip_remove_cmd') + log.debug("hplip_remove_cmd =%s "%hplip_remove_cmd) + #read conf file to enter into installed dir + log.info("Starting uninstallation...") + + plugin_state = sys_state.get('plugin', 'installed', PLUGIN_NOT_INSTALLED) + + # check systray is running? + status,output = utils.Is_Process_Running('hp-systray') + if status is True: + if mode != NON_INTERACTIVE_MODE: + ok,choice = tui.enter_choice("\nSome HPLIP applications are running. Press 'y' to close and proceed or Press 'n' to quit uninstall (y=yes*, n=no):",['y','n'],'y') + if not ok or choice =='n': + log.info("Quiting HPLIP unininstallation. Close application(s) manually and run again.") + return False + + try: + from dbus import SystemBus, lowlevel + except ImportError: + log.error("Unable to load DBus") + pass + else: + try: + args = ['', '', EVENT_SYSTEMTRAY_EXIT, prop.username, 0, '', ''] + msg = lowlevel.SignalMessage('/', 'com.hplip.StatusService', 'Event') + msg.append(signature='ssisiss', *args) + log.debug("Sending close message to hp-systray ...") + SystemBus().send_message(msg) + time.sleep(0.5) + except: + log.error("Failed to send DBus message to hp-systray/hp-toolbox.") + pass + + + toolbox_status,output = utils.Is_Process_Running('hp-toolbox') + systray_status,output = utils.Is_Process_Running('hp-systray') + if toolbox_status is True or systray_status is True: + log.error("Failed to close HP-Toolbox/HP-Systray. Close manually and run hp-uninstall again.") + return False + + if hplip_remove_cmd: + self.remove_hplip(callback) + + #removing .hplip directory + cmd='find /home -name .hplip' + if checkSudo: + cmd= self.su_sudo() %cmd + + status, output=self.run(cmd) + if output is not None: + for p in output.splitlines(): + if p.find("find:") != -1: + continue + + cmd= RMDIR + " " + p + if checkSudo: + cmd= self.su_sudo() %cmd + log.debug("Removing .hplip folder cmd = %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove directory=%s "%p) + + #remove the binaries and libraries + pat=re.compile(r"""(.*)share\/hplip""") + base =pat.match(home_dir) + usrbin_dir=None + if base is not None: + usrbin_dir= base.group(1) + "bin/" + usrlib_dir= base.group(1) + "lib/" + cnt = 0 + while cnt <len (BINS_LIST ): + cmd = RM + " " + usrbin_dir + BINS_LIST[cnt] + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing binaries cmd = %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove '%s' binary." %(usrbin_dir + BINS_LIST[cnt])) + cnt += 1 + + cnt =0 + while cnt <len (LIBS_LIST ): + cmd = RM + " " + usrlib_dir + LIBS_LIST[cnt] + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing library cmd = %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove '%s' library." %(usrlib_dir + LIBS_LIST[cnt])) + cnt += 1 + + + remove_plugins = False + if mode != NON_INTERACTIVE_MODE and plugin_state != PLUGIN_NOT_INSTALLED: + ok,choice = tui.enter_choice("\nDo you want to remove HP proprietary plug-ins (y=yes*, n=no)?:",['y','n'],'y') + if ok and choice =='y': + remove_plugins = True + else: + remove_plugins = True + + # removing HPLIP installed directories/files + cnt =0 + while cnt < len(HPLIP_LIST): + cmd=RMDIR + " " + home_dir+"/"+HPLIP_LIST[cnt] + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing hplip directory/file cmd= %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove hplip directory/file=%s "% (home_dir+"/"+HPLIP_LIST[cnt])) + cnt +=1 + + # removing configuration files + cnt= 0 + while cnt < len(FILES_LIST): + cmd = RMDIR + " " + FILES_LIST[cnt] + if checkSudo: + cmd= self.su_sudo() %cmd + log.debug("Removing conf files cmd= %s" %(cmd)) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove '%s' file" %FILES_LIST[cnt]) + cnt += 1 + # removing Plug-in files + if remove_plugins == True: + cnt =0 + while cnt < len(PLUGIN_LIST): + cmd=RMDIR + " " + home_dir+"/"+PLUGIN_LIST[cnt] + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing hplip Plug-in files cmd= %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove plug-in directory/file=%s "% (home_dir+"/"+PLUGIN_LIST[cnt])) + cnt += 1 + + cnt =0 + while cnt < len(PLUGIN_STATE): + cmd=RMDIR + " "+PLUGIN_STATE[cnt] + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing hplip Plug-in file cmd= %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove plug-in directory/file=%s "% (PLUGIN_STATE[cnt])) + cnt += 1 + + cmd =RMDIR+ " "+home_dir + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing hplip directory/file cmd= %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove hplip directory=%s "% (home_dir)) + + # removing HPLIP uninstall link + if usrbin_dir is not None: + cmd=RMDIR + " " + usrbin_dir+"hp-uninstall" + if checkSudo: + cmd= self.su_sudo() %cmd + + log.debug("Removing hplip binary cmd= %s " %cmd) + status, output=self.run(cmd) + if 0 != status: + log.debug("Failed to remove '%s' file" %(usrbin_dir+"hp-uninstall")) + log.info("HPLIP uninstallation is completed") + return True + diff --git a/installer/distros.dat b/installer/distros.dat index dfb567a0f..a5cc3bc2c 100644 --- a/installer/distros.dat +++ b/installer/distros.dat @@ -633,7 +633,7 @@ package_mgrs=yum,rpm,up2date package_mgr_cmd=rpm install $packages_to_install pre_depend_cmd= post_depend_cmd= -hplip_remove_cmd= +hplip_remove_cmd=su -c 'rpm -ev hplipfull' su_sudo=su ppd_install=ppd udev_mode_fix=1 @@ -2412,7 +2412,7 @@ package_mgrs=yum,rpm,up2date package_mgr_cmd=rpm install $packages_to_install pre_depend_cmd= post_depend_cmd= -hplip_remove_cmd= +hplip_remove_cmd=su -c 'rpm -ev hplipfull' su_sudo=su ppd_install=ppd udev_mode_fix=1 @@ -3511,7 +3511,7 @@ packages= # **************************************** [ubuntu] index=12 -versions=8.04,10.04,10.10,11.04,11.10 +versions=8.04,10.04,10.10,11.04,11.10,12.04 display_name=Ubuntu alt_names=kubuntu,edubuntu,xubuntu display=1 @@ -4490,10 +4490,125 @@ add_user_to_group=-a -Glp,lpadmin libdir_path=/usr/lib same_as_version=11.04 +# ******************** +[ubuntu:12.04] +code_name=Precise +supported=1 +scan_supported=1 +fax_supported=1 +pcard_supported=1 +network_supported=1 +parallel_supported=1 +usb_supported=1 +packaged_version=3.12.2 +release_date=28/04/2012 +notes=Enable the universe/multiverse repositories. Also be sure you are using the Ubuntu "Main" Repositories. See: https://help.ubuntu.com/community/Repositories/Ubuntu for more information. Disable the CD-ROM/DVD source if you do not have the Ubuntu installation media inserted in the drive. During the install process you will be added to the lp and lpadmin group, please quit the installer before the setup stage, log out, log back in, and run hp-setup to complete the install. +ppd_install=drv +udev_mode_fix=1 +ppd_dir=/usr/share/ppd/HP +fix_ppd_symlink=0 +drv_dir=/usr/share/cups/drv/HP +ui_toolkit=qt4 +native_cups=1 +acl_rules=1 +add_user_to_group=-a -Glp,lpadmin +libdir_path=/usr/lib + +[ubuntu:12.04:cups] +packages=libcups2 + +[ubuntu:12.04:cups-devel] +packages=libcups2-dev,cups-bsd,cups-client + +[ubuntu:12.04:gcc] +packages=build-essential + +[ubuntu:12.04:gs] +packages=ghostscript + +[ubuntu:12.04:libcrypto] +packages=openssl + +[ubuntu:12.04:libjpeg] +packages=libjpeg62-dev,libcupsimage2-dev + +[ubuntu:12.04:libnetsnmp-devel] +packages=libsnmp-dev + +[ubuntu:12.04:libpthread] +packages=build-essential + +[ubuntu:12.04:libtool] +packages=libtool + +[ubuntu:12.04:libusb] +packages=libusb-dev + +[ubuntu:12.04:make] +packages=build-essential + +[ubuntu:12.04:pil] +packages=python-imaging + +[ubuntu:12.04:ppdev] +packages= +commands=sudo modprobe ppdev,sudo cp -f /etc/modules /etc/modules.hplip,echo ppdev | sudo tee -a /etc/modules + +[ubuntu:12.04:pyqt] +packages=python-qt4 + +[ubuntu:12.04:python-devel] +packages=python-dev + +[ubuntu:12.04:pyqt4] +packages=python-qt4 + +[ubuntu:12.04:pyqt4-dbus] +packages=python-qt4-dbus + +#[ubuntu:12.04:python23] +#packages=python + +[ubuntu:12.04:python2x] +packages=python + +[ubuntu:12.04:reportlab] +packages=python-reportlab + +[ubuntu:12.04:sane] +packages=libsane + +[ubuntu:12.04:sane-devel] +packages=libsane-dev + +[ubuntu:12.04:scanimage] +packages=sane-utils + +[ubuntu:12.04:xsane] +packages=xsane + +[ubuntu:12.04:python-dbus] +packages=python-dbus,python-gobject + +[ubuntu:12.04:dbus] +packages=libdbus-1-dev + +[ubuntu:12.04:cups-image] +packages=libcupsimage2-dev + +[ubuntu:12.04:cups-ddk] +packages=cups + +[ubuntu:12.04:policykit] +packages=policykit-1,policykit-1-gnome + +[ubuntu:12.04:python-notify] +packages=python-notify + # **************************************** [debian] index=2 -versions=5.0,5.0.1,5.0.2,5.0.3,5.0.4,5.0.5,5.0.6,5.0.7,5.0.8,6.0,6.0.1,6.0.2,6.0.3 +versions=5.0,5.0.1,5.0.2,5.0.3,5.0.4,5.0.5,5.0.6,5.0.7,5.0.8,6.0,6.0.1,6.0.2,6.0.3,6.0.4 display_name=Debian alt_names= display=1 @@ -5641,6 +5756,9 @@ same_as_version=6.0 [debian:6.0.3] same_as_version=6.0 +[debian:6.0.4] +same_as_version=6.0 + # **************************************** [xandros] index=13 @@ -6284,7 +6402,7 @@ packages=libcupsys2-dev # **************************************** [mandriva] index=4 -versions=2006.0,2007.0,2007.1,2008.0,2008.1,2009,2009.0,2010.0 +versions=2010.0,2011.0 display_name=Mandriva Linux alt_names=Mandrakelinux,Mandrake Linux display=1 @@ -7443,6 +7561,118 @@ packages=libcups2 [mandriva:2010.0:policykit] packages=policykit,policykit-gnome +# ******************** +[mandriva:2011.0] +code_name= +supported=0 +scan_supported=1 +fax_supported=1 +pcard_supported=1 +network_supported=1 +parallel_supported=1 +usb_supported=1 +packaged_version=3.9.12 +release_date=2009-11-03 +notes=Before proceeding, please add the "contrib", "main", and "updates" installation sources to your URPMI configuration./n Open your browser and go to http://easyurpmi.zarb.org/ and follow the instructions provided and then proceed with the HPLIP install. Also you may wish to turn off the cdrom1-12 media sources to speed up the process. +ppd_install=drv +udev_mode_fix=1 +ppd_dir=/usr/share/ppd/HP +fix_ppd_symlink=0 +drv_dir=/usr/share/cups/drv/HP +ui_toolkit=qt4 +policykit=1 + +[mandriva:2011.0:cups] +packages=cups,cups-common + +[mandriva:2011.0:cups-devel] +packages=libcups2-devel + +[mandriva:2011.0:gcc] +packages=gcc-c++ + +[mandriva:2011.0:gs] +packages=ghostscript + +[mandriva:2011.0:libcrypto] +packages=libopenssl0.9.8-devel + +[mandriva:2011.0:libjpeg] +packages=libjpeg-devel + +[mandriva:2011.0:libnetsnmp-devel] +packages=libnet-snmp-devel + +[mandriva:2011.0:libpthread] +packages=glibc-i18ndata,glibc_lsb + +[mandriva:2011.0:libtool] +packages=libtool,libgphoto-devel + +[mandriva:2011.0:libusb] +packages=libusb1.0-devel + +[mandriva:2011.0:make] +packages=make + +[mandriva:2011.0:pil] +packages=python-imaging + +[mandriva:2011.0:ppdev] +packages= +commands=su -c "modprobe ppdev" + +[mandriva:2011.0:pyqt] +packages=python-qt4 + +[mandriva:2011.0:python-devel] +packages=libpython2.6-devel + +[mandriva:2011.0:pyqt4] +packages=python-qt4 + +[mandriva:2011.0:pyqt4-dbus] +packages=qt4-qtdbus + +[mandriva:2011.0:python23] +packages=python + +[mandriva:2011.0:python2x] +packages=python + +[mandriva:2011.0:reportlab] +packages=python-reportlab + +[mandriva:2011.0:sane] +packages=saned + +[mandriva:2011.0:sane-devel] +packages=libsane1-devel,sane-backends + +[mandriva:2011.0:scanimage] +packages=libsane1 + +[mandriva:2011.0:xsane] +packages=xsane,sane-frontends + +[mandriva:2011.0:cups-ddk] +packages=cups + +[mandriva:2011.0:python-dbus] +packages=python-dbus,python-gobject + +[mandriva:2011.0:dbus] +packages=libdbus-1-devel,python-gobject + +[mandriva:2011.0:python-ctypes] +packages=python + +[mandriva:2011.0:cups-image] +packages=libcups2 + +[mandriva:2011.0:policykit] +packages=policykit,policykit-gnome + # **************************************** [linuxmint] index=22 @@ -8009,7 +8239,97 @@ ui_toolkit=qt4 native_cups=1 acl_rules=1 add_user_to_group=-a -Glp -same_as_version=8 + +[linuxmint:12:cups] +packages=libcups2 + +[linuxmint:12:cups-devel] +packages=libcups2-dev,cups-bsd,cups-client + +[linuxmint:12:gcc] +packages=build-essential + +[linuxmint:12:gs] +packages=ghostscript + +[linuxmint:12:libcrypto] +packages=openssl + +[linuxmint:12:libjpeg] +packages=libjpeg62-dev + +[linuxmint:12:libnetsnmp-devel] +packages=libsnmp-dev + +[linuxmint:12:libpthread] +packages=build-essential + +[linuxmint:12:libtool] +packages=libtool + +[linuxmint:12:libusb] +packages=libusb-dev + +[linuxmint:12:make] +packages=build-essential + +[linuxmint:12:pil] +packages=python-imaging + +[linuxmint:12:ppdev] +packages= +commands=sudo modprobe ppdev,sudo cp -f /etc/modules /etc/modules.hplip,echo ppdev | sudo tee -a /etc/modules + +[linuxmint:12:pyqt] +packages=python-qt4 + +[linuxmint:12:python-devel] +packages=python-dev + +[linuxmint:12:pyqt4] +packages=python-qt4 + +[linuxmint:12:pyqt4-dbus] +packages=python-qt4-dbus + +#[linuxmint:12:python23] +#packages=python + +[linuxmint:12:python2x] +packages=python + +[linuxmint:12:reportlab] +packages=python-reportlab + +[linuxmint:12:sane] +packages=libsane + +[linuxmint:12:sane-devel] +packages=libsane-dev + +[linuxmint:12:scanimage] +packages=sane-utils + +[linuxmint:12:xsane] +packages=xsane + +[linuxmint:12:python-dbus] +packages=python-dbus,python-gobject + +[linuxmint:12:dbus] +packages=libdbus-1-dev + +[linuxmint:12:cups-image] +packages=libcupsimage2-dev + +[linuxmint:12:cups-ddk] +packages=cups + +[linuxmint:12:policykit] +packages=policykit-1,policykit-1-gnome + +[linuxmint:12:python-notify] +packages=python-notify # **************************************** @@ -8051,7 +8371,7 @@ ppd_dir=/usr/share/ppd/HP fix_ppd_symlink=0 drv_dir=/usr/share/cups/drv/HP ui_toolkit=none -package_available=1 +package_available=0 package_arch=i386 [linpus:9.5:cups] @@ -8161,7 +8481,7 @@ ppd_dir=/usr/share/ppd/HP fix_ppd_symlink=0 drv_dir=/usr/share/cups/drv/HP ui_toolkit=none -package_available=1 +package_available=0 package_arch=i386 [linpus:9.4:cups] diff --git a/installer/text_install.py b/installer/text_install.py index 11e4aca75..67d7ae8c9 100755 --- a/installer/text_install.py +++ b/installer/text_install.py @@ -1,7 +1,7 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- # -# (c) Copyright 2003-2009 Hewlett-Packard Development Company, L.P. +# (c) Copyright 2003-2014 Hewlett-Packard Development Company, L.P. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,7 +17,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# Author: Don Welch +# Author: Don Welch, Amarnath Chitumalla # # Std Lib @@ -32,6 +32,7 @@ from base import utils, tui from core_install import * def start_systray(): + tui.title("RE-STARTING HP_SYSTRAY") path = utils.which('hp-systray') if path: path = os.path.join(path, 'hp-systray') @@ -90,6 +91,13 @@ def start(language, auto=True, test_depends=False, log.info("") log.note("Defaults for each question are maked with a '*'. Press <enter> to accept the default.") + core.init() + if not core.distro_name in ("ubuntu","debian","suse","fedora"): + log.error("Auto installation is not supported for '%s' distro so all dependencies may not be installed. \nPlease install manually as mentioned in 'http://hplipopensource.com/hplip-web/install/manual/index.html' web-site"% core.distro_name) + ok, choice = tui.enter_choice("\nPress 'y' If you still want to continue auto installation. Press 'n' to quit auto instalation(y=yes, n=no*): ",['y','n'],'n') + if not ok or choice =='n': + log.info("Installation exit") + sys.exit() if not auto: tui.title("INSTALLATION MODE") @@ -116,7 +124,8 @@ def start(language, auto=True, test_depends=False, return log.info("\nInitializing. Please wait...") - core.init() + prev_hplip_version= sys_conf.get("hplip","version","0.0.0") + if test_unknown: core.distro_name = 'unknown' @@ -125,21 +134,8 @@ def start(language, auto=True, test_depends=False, # - # HPLIP vs. HPIJS INSTALLATION + # HPLIP INSTALLATION # - - #if not auto: - #tui.title("INSTALL TYPE") - #log.info("For most users, it is recommended to install HPLIP with full support (scanning, faxing, toolbox, etc).") - #log.info("For servers or minimal installations, you can also install print support only (HPIJS only).") - - #ok, choice = tui.enter_choice("\nInstall full hplip support (recommended) or print-only support (f=full hplip support*, p=printing only support, q=quit) ?", - #['f', 'p'], 'f') - #if not ok: sys.exit(0) - #if choice == 'p': - #core.selected_component = 'hpijs' - - #log.debug(core.selected_component) core.selected_component = 'hplip' # @@ -150,31 +146,9 @@ def start(language, auto=True, test_depends=False, if core.selected_component == 'hplip': log.info("This installer will install HPLIP version %s on your computer." % core.version_public) - #core.hpijs_build = False - #else: - #log.info("This installer will install HPIJS version %s on your computer." % core.version_public) - #core.hpijs_build = True log.info("Please close any running package management systems now (YaST, Adept, Synaptic, Up2date, etc).") -## # -## # RELEASE NOTES -## # -## -## if not auto: -## if os.getenv('DISPLAY'): -## tui.title("VIEW RELEASE NOTES") -## log.info("Release notes from this version are available as a web (HTML) document.") -## log.info("The release notes file will be shown in a separate web browser window.") -## -## ok, ans = tui.enter_yes_no("\nWould you like to view the release notes for this version of HPLIP", 'n') -## -## if ok and ans: -## log.info("Displaying release notes in a browser window...") -## core.show_release_notes_in_browser() -## -## if not ok: -## sys.exit(0) # For testing, mark all dependencies missing if test_depends: @@ -327,26 +301,17 @@ def start(language, auto=True, test_depends=False, sys.exit(1) + # # SELECT OPTIONS TO INSTALL # - - if not auto: tui.title("SELECT HPLIP OPTIONS") log.info("You can select which HPLIP options to enable. Some options require extra dependencies.") log.info("") num_opt_missing = core.select_options(option_question_callback) - #else: # auto - #ok, enable_par = tui.enter_yes_no("Would you like to enable support for parallel (LPT:) connected printers?", 'n') - #if not ok: sys.exit(0) - - #core.selected_options['parallel'] = enable_par - - #if enable_par: - #log.info("Parallel support enabled.") else: enable_par = False core.selected_options['parallel'] = False @@ -371,7 +336,7 @@ def start(language, auto=True, test_depends=False, log.error("3 incorrect attempts. (or) Insufficient permissions(i.e. try with sudo user).\nExiting.") sys.exit(1) - # + # INSTALLATION NOTES # @@ -440,9 +405,6 @@ def start(language, auto=True, test_depends=False, log.error("Installation cannot continue without this dependency. Please manually install this dependency and re-run this installer.") sys.exit(0) - #log.info("-"*10) - #log.info("") - # # OPTIONAL dependencies # @@ -493,11 +455,8 @@ def start(language, auto=True, test_depends=False, core.selected_options[opt] = False - #log.info("-"*10) - #log.info("") - - log.debug("Dependencies to install: %s" % depends_to_install) + log.debug("Dependencies to install: %s hplip_present:%s" % (depends_to_install, core.hplip_present)) if core.distro_version_supported and \ (depends_to_install or core.hplip_present) and \ @@ -536,14 +495,17 @@ def start(language, auto=True, test_depends=False, # # CHECK FOR ACTIVE NETWORK CONNECTION # - if not assume_network: tui.title("CHECKING FOR NETWORK CONNECTION") if not core.check_network_connection(): - log.error("\nThe network appears to be unreachable. Installation cannot complete without access to") - log.error("distribution repositories. Please check the network and try again.") - sys.exit(1) + log.error("The network appears to be unreachable. Installation may not resolve all dependencies without access to distribution repositories.") + ok, choice = tui.enter_choice("Do you want to continue installation without network?. Press 'y' for YES. Press 'n' for NO (y=yes*, n=no) : ",['y', 'n'], 'y') + if not ok or choice == 'n': + log.info("Please connect network and try again") + sys.exit(1) + else: + log.debug("Continuing installation without network") else: log.info("Network connection present.") @@ -662,71 +624,29 @@ def start(language, auto=True, test_depends=False, sys.exit(1) - ## - ## HPOJ REMOVAL - ## - - #if core.hpoj_present and core.selected_component == 'hplip' and core.distro_version_supported: - #log.error("HPOJ is installed and/or running. HPLIP is not compatible with HPOJ.") - #failed = True - #hpoj_remove_cmd = core.get_distro_data('hpoj_remove_cmd') - - #if hpoj_remove_cmd: - #if auto: - #answer = True - #else: - #ok, answer = tui.enter_yes_no("\nWould you like to have this installer attempt to uninstall HPOJ") - - #if not ok: sys.exit(0) - - #if answer: - #failed = core.remove_hpoj(progress_callback) - - #if failed: - #log.error("HPOJ removal failed. Please manually stop/remove/uninstall HPOJ and then re-run this installer.") - #sys.exit(1) - #else: - #log.error("Please stop/remove/uninstall HPOJ and then re-run this installer.") - #sys.exit(1) - - #else: - #log.error("Please stop/remove/uninstall HPOJ and then re-run this installer.") - #sys.exit(1) # # HPLIP REMOVE # - if core.hplip_present and core.selected_component == 'hplip' and core.distro_version_supported: - failed = True - log.warn("A previous install of HPLIP is installed and/or running.") - - hplip_remove_cmd = core.get_distro_data('hplip_remove_cmd') - if hplip_remove_cmd: - if auto: - answer = True - else: - ok, answer = tui.enter_yes_no("\nWould you like to have this installer attempt to uninstall the previously installed HPLIP") - if not ok: sys.exit(0) - - if answer: - failed = core.remove_hplip(progress_callback) - - else: - log.error("The previously installed version of HPLIP may conflict with the new one being installed.") - log.error("It is recommended that you quit this installer, and manually remove HPLIP before continuing.") + path = utils.which('hp-uninstall') + ok, choice = tui.enter_choice("HPLIP-%s exists, this may conflict with the new one being installed.\nDo you want to ('i'= Remove and Install, 'o'= Overwrite*, 'q'= Quit)? :"%(prev_hplip_version),['i','o','q'],'o') + if not ok or choice=='q': + log.error("User Exit") sys.exit(0) + elif choice == 'i': +# log.info("Uninstalling existing HPLIP-%s"%prev_hplip_version) + sts =core.uninstall(NON_INTERACTIVE_MODE) - if failed: - log.warn("HPLIP removal failed. The previous install may have been installed using a tarball or this installer.") - log.warn("Continuing to run installer - this installation should overwrite the previous one.") - + if sts is False: + log.warn("Failed to uninstall existing HPLIP-%s. This installation will overwrite on existing HPLIP" %prev_hplip_version) + else: + log.debug("HPLIP-%s is uninstalled successfully." %prev_hplip_version) # # POST-DEPEND # - tui.title("RUNNING POST-PACKAGE COMMANDS") core.run_post_depend(progress_callback) log.info("OK") @@ -735,7 +655,6 @@ def start(language, auto=True, test_depends=False, # # DEPENDENCIES RE-CHECK # - tui.title("RE-CHECKING DEPENDENCIES") core.check_dependencies() @@ -818,7 +737,8 @@ def start(language, auto=True, test_depends=False, # # OPEN MDNS MULTICAST PORT # - + user_conf = UserConfig() + if core.selected_options['network']: open_mdns_port = core.get_distro_ver_data('open_mdns_port') if open_mdns_port: @@ -845,11 +765,8 @@ def start(language, auto=True, test_depends=False, if current_version >= 0x030902: # 3.9.2 try: - # dBus - #import dbus from dbus import SessionBus, lowlevel except ImportError: - #log.error("Unable to load DBus") pass else: try: @@ -863,10 +780,17 @@ def start(language, auto=True, test_depends=False, except: pass - tui.title("RE-STARTING HP_SYSTRAY") - start_systray() + tui.title("HPLIP UPDATE NOTIFICATION") + ok, choice = tui.enter_choice("Do you want to check for HPLIP updates?. (y=yes*, n=no) : ",['y', 'n'], 'y') + if not ok or choice != 'y': + user_conf.set('upgrade', 'notify_upgrade', 'false') + else: + user_conf.set('upgrade', 'notify_upgrade', 'true') + + user_conf.set('upgrade','last_upgraded_time',str(int(time.time()))) + user_conf.set('upgrade','pending_upgrade_time','0') + - # Restart or re-plugin if necessary (always True in 2.7.9+) if core.selected_component == 'hplip': tui.title("RESTART OR RE-PLUG IS REQUIRED") cmd = "hp-setup" @@ -879,23 +803,29 @@ def start(language, auto=True, test_depends=False, ok, choice = tui.enter_choice("Restart or re-plug in your printer (r=restart, p=re-plug in*, i=ignore/continue, q=quit) : ", ['r', 'p', 'i'], 'p') - if not ok: sys.exit(0) + if not ok: + start_systray() + sys.exit(0) if choice == 'r': log.note("") log.note("IMPORTANT! Make sure to save all work in all open applications before restarting!") ok, ans = tui.enter_yes_no(log.bold("Restart now"), 'n') - if not ok: sys.exit(0) + if not ok: + start_systray() + sys.exit(0) if ans: ok = core.restart() if not ok: log.error("Restart failed. Please restart using the system menu.") + start_systray() sys.exit(0) elif choice == 'p': # 'p' if not tui.continue_prompt("Please unplug and re-plugin your printer now. "): + start_systray() sys.exit(0) @@ -909,13 +839,16 @@ def start(language, auto=True, test_depends=False, install_printer = True else: ok, install_printer = tui.enter_yes_no("Would you like to setup a printer now") - if not ok: sys.exit(0) + if not ok: + start_systray() + sys.exit(0) if install_printer: log.info("Please make sure your printer is connected and powered on at this time.") if not core.run_hp_setup(): log.error("hp-setup failed. Please run hp-setup manually.") + start_systray() except KeyboardInterrupt: log.info("") log.error("Aborted.") diff --git a/io/hpmud/hpmud.c b/io/hpmud/hpmud.c index 8be7b7878..d24ebd226 100644 --- a/io/hpmud/hpmud.c +++ b/io/hpmud/hpmud.c @@ -22,6 +22,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Author: Naga Samrat Chowdary Narla, + Contributor: Sarbeswar Meher \*****************************************************************************/ #include "hpmud.h" @@ -211,7 +212,6 @@ enum HPMUD_RESULT __attribute__ ((visibility ("hidden"))) service_to_channel(mud else if (strncasecmp(sn, "hp-ledm-scan", 12) == 0) { *index = HPMUD_LEDM_SCAN_CHANNEL; - BUG("io/hpmud/hpmud.c: service_to_channel(): sn=%s\n", sn); } /* All the following services require MLC/1284.4. */ else if (pd->io_mode == HPMUD_RAW_MODE || pd->io_mode == HPMUD_UNI_MODE) @@ -272,9 +272,9 @@ static int new_device(const char *uri, enum HPMUD_IO_MODE mode, int *result) if (uri[0] == 0) return 0; - + pthread_mutex_lock(&msp->mutex); - + if (msp->device[i].index) { BUG("invalid device_open state\n"); /* device is already open for this client, one device per session */ diff --git a/io/hpmud/hpmud.h b/io/hpmud/hpmud.h index f28e2f81c..3970d28bb 100644 --- a/io/hpmud/hpmud.h +++ b/io/hpmud/hpmud.h @@ -2,7 +2,7 @@ hpmud.h - public definitions for multi-point transport driver - (c) 2004-2008 Copyright Hewlett-Packard Development Company, LP + (c) 2004-2015 Copyright Hewlett-Packard Development Company, LP Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -21,7 +21,7 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - Author: Naga Samrat Chowdary Narla, Yashwant Sahu + Author: Naga Samrat Chowdary Narla, Yashwant Sahu, Sarbeswar Meher \*****************************************************************************/ #ifndef _HPMUD_H @@ -84,9 +84,9 @@ enum HPMUD_SCANTYPE enum HPMUD_SCANSRC { HPMUD_SCANSRC_NA = 0, - HPMUD_SCANSRC_ADF= 1, - HPMUD_SCANSRC_FLATBED = 2, - HPMUD_SCANSRC_BOTH = 3 + HPMUD_SCANSRC_FLATBED = 0x1, + HPMUD_SCANSRC_ADF= 0x2, + HPMUD_SCANSRC_CAMERA = 0x4, }; enum HPMUD_STATUSTYPE @@ -138,7 +138,7 @@ typedef int HPMUD_CHANNEL; #define HPMUD_CHANNEL_MAX HPMUD_MAX_CHANNEL_ID #define HPMUD_LINE_SIZE 256 /* Length of a line. */ -#define HPMUD_BUFFER_SIZE 8192 /* General Read/Write buffer. */ +#define HPMUD_BUFFER_SIZE 16384 /* General Read/Write buffer. */ struct hpmud_dstat { @@ -153,12 +153,12 @@ struct hpmud_model_attributes { enum HPMUD_IO_MODE prt_mode; /* print only (io_mode) */ enum HPMUD_IO_MODE mfp_mode; /* pml | scan | fax (io_mode) */ - enum HPMUD_SCANTYPE scantype; /* 0=none */ + enum HPMUD_SCANTYPE scantype; /* scan protocol i.e. SCL, PML, SOAP, MARVELL, LEDM */ enum HPMUD_STATUSTYPE statustype; enum HPMUD_SUPPORT_TYPE support; enum HPMUD_PLUGIN_TYPE plugin; enum HPMUD_SUPPORT_TYPE reserved[5]; - enum HPMUD_SCANSRC scansrc; + enum HPMUD_SCANSRC scansrc; /*Flatbed, ADF, Camera or combination of these*/ }; #ifdef __cplusplus diff --git a/io/hpmud/hpmudi.h b/io/hpmud/hpmudi.h index 5daa404be..269cb0680 100644 --- a/io/hpmud/hpmudi.h +++ b/io/hpmud/hpmudi.h @@ -100,12 +100,12 @@ enum HPMUD_CHANNEL_ID HPMUD_CONFIG_DOWNLOAD_CHANNEL = 0xf, HPMUD_MEMORY_CARD_CHANNEL = 0x11, HPMUD_EWS_CHANNEL = 0x12, /* Embeded Web Server interface ff/1/1, any unused socket id */ - HPMUD_EWS_LEDM_CHANNEL = 0x17, /* Embeded Web Server interface ff/cc/0, any unused socket id */ HPMUD_SOAPSCAN_CHANNEL = 0x13, /* Soap Scan interface ff/2/1, any unused socket id */ HPMUD_SOAPFAX_CHANNEL = 0x14, /* Soap Fax interface ff/3/1, any unused socket id */ HPMUD_MARVELL_SCAN_CHANNEL = 0x15, /* Marvell scan interface ff/ff/ff, any unused socket id */ HPMUD_MARVELL_FAX_CHANNEL = 0x16, /* Marvell fax interface ff/ff/ff, any unused socket id */ - HPMUD_LEDM_SCAN_CHANNEL = 0x18, /* LEDM scan interface ff/4/1, any unused socket id */ + HPMUD_EWS_LEDM_CHANNEL = 0x17, /* Embeded Web Server interface ff/4/1, any unused socket id */ + HPMUD_LEDM_SCAN_CHANNEL = 0x18, /* LEDM scan interface ff/cc/0, any unused socket id */ HPMUD_WIFI_CHANNEL = 0x2b, /* WIFI config */ HPMUD_DEVMGMT_CHANNEL = 0x2c, /* decimal 44 */ HPMUD_MAX_CHANNEL_ID diff --git a/io/hpmud/jd.c b/io/hpmud/jd.c index ab4a7cb7d..1b7a38244 100644 --- a/io/hpmud/jd.c +++ b/io/hpmud/jd.c @@ -22,7 +22,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Client/Server generic message format (see messaging-protocol.doc): - Author: Naga Samrat Chowdary Narla + Author: Naga Samrat Chowdary Narla, Sarbeswar Meher \*****************************************************************************/ #ifdef HAVE_LIBNETSNMP diff --git a/io/hpmud/model.c b/io/hpmud/model.c index ebde06a9c..3678af56b 100644 --- a/io/hpmud/model.c +++ b/io/hpmud/model.c @@ -479,11 +479,11 @@ static int parse_key_value_pair(char *buf, int len, struct hpmud_model_attribute } else if(strcasecmp(key, "scan-type") == 0) { - ma->scantype = strtol(value, &tail2, 10); + ma->scantype = strtol(value, &tail2, 10); /*SCL, PML, SOAP, MARVELL, LEDM*/ } else if(strcasecmp(key, "scan-src") == 0) { - ma->scansrc = strtol(value, &tail2, 10); + ma->scansrc = strtol(value, &tail2, 10); /*Flatbed, ADF, Camera or combination of these*/ } else if(strcasecmp(key, "status-type") == 0) { diff --git a/io/hpmud/musb.c b/io/hpmud/musb.c index 90927f611..1649297ff 100644 --- a/io/hpmud/musb.c +++ b/io/hpmud/musb.c @@ -22,7 +22,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Client/Server generic message format (see messaging-protocol.doc): - Author: Naga Samrat Chowdary Narla + Author: Naga Samrat Chowdary Narla, Sarbeswar Meher \*****************************************************************************/ #include "hpmud.h" @@ -91,21 +91,22 @@ static char *fd_name[MAX_FD] = "ff/4/1", "ff/1/0", "ff/cc/0", + "ff/2/10", }; static int fd_class[MAX_FD] = { - 0,0x7,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, + 0,0x7,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, }; static int fd_subclass[MAX_FD] = { - 0,0x1,0x1,0x1,0x2,0x3,0xff,0xd4,0x4,0x1,0xcc, + 0,0x1,0x1,0x1,0x2,0x3,0xff,0xd4,0x4,0x1,0xcc,0x2, }; static int fd_protocol[MAX_FD] = { - 0,0x2,0x3,0x1,0x1,0x1,0xff,0,0x1,0,0, + 0,0x2,0x3,0x1,0x1,0x1,0xff,0,0x1,0,0,0x10, }; static const unsigned char venice_power_on[] = {0x1b, '%','P','u','i','f','p','.','p','o','w','e','r',' ','1',';', @@ -1490,19 +1491,19 @@ enum HPMUD_RESULT __attribute__ ((visibility ("hidden"))) musb_comp_channel_open fd = FD_ff_4_1; break; case HPMUD_SOAPSCAN_CHANNEL: - fd = FD_ff_2_1; + fd = FD_ff_2_1; break; case HPMUD_SOAPFAX_CHANNEL: - fd = FD_ff_3_1; + fd = FD_ff_3_1; break; case HPMUD_MARVELL_SCAN_CHANNEL: - fd = FD_ff_ff_ff; + fd = FD_ff_ff_ff; break; case HPMUD_MARVELL_FAX_CHANNEL: //using vendor specific C/S/P codes for fax too - fd = FD_ff_1_0; + fd = FD_ff_1_0; break; case HPMUD_LEDM_SCAN_CHANNEL: //using vendor specific C/S/P codes for fax too - fd = FD_ff_cc_0; + fd = FD_ff_cc_0; break; default: stat = HPMUD_R_INVALID_SN; diff --git a/io/hpmud/musb.h b/io/hpmud/musb.h index 89ab54222..df4a8a6d0 100644 --- a/io/hpmud/musb.h +++ b/io/hpmud/musb.h @@ -47,6 +47,7 @@ enum FD_ID FD_ff_4_1, /* orblite scan / rest scan interface */ FD_ff_1_0, /* Marvell fax support*/ FD_ff_cc_0, + FD_ff_2_10, MAX_FD }; diff --git a/makecopies.py b/makecopies.py index de9eeae69..abb3b7104 100755 --- a/makecopies.py +++ b/makecopies.py @@ -283,10 +283,10 @@ else: # NON_INTERACTIVE_MODE log.error(e.msg) sys.exit(1) - scan_style = dev.mq.get('scan-style', SCAN_STYLE_FLATBED) - log.debug(scan_style) + scan_src = dev.mq.get('scan-src', SCAN_SRC_FLATBED) + log.debug(scan_src) - if scan_style == SCAN_STYLE_SCROLLFED: + if scan_src == SCAN_SRC_SCROLLFED: fit_to_page = pml.COPIER_FIT_TO_PAGE_DISABLED log.debug("num_copies = %d" % num_copies) @@ -296,13 +296,13 @@ else: # NON_INTERACTIVE_MODE log.debug("fit_to_page = %d" % fit_to_page) log.debug("max_reduction = %d" % max_reduction) log.debug("max_enlargement = %d" % max_enlargement) - log.debug("scan_style = %d" % scan_style) + log.debug("scan_src = %d" % scan_src) update_queue = Queue.Queue() event_queue = Queue.Queue() dev.copy(num_copies, contrast, reduction, - quality, fit_to_page, scan_style, + quality, fit_to_page, scan_src, update_queue, event_queue) @@ -279,7 +279,7 @@ else: # INTERACTIVE_MODE tui.header("PLUG-IN INSTALLATION FOR HPLIP %s" % version) - if core.check_for_plugin() and plugin_path is None: + if core.check_for_plugin() == PLUGIN_INSTALLED and plugin_path is None: log.info("The driver plugin for HPLIP %s appears to already be installed." % version) cont, ans = tui.enter_yes_no("Do you wish to download and re-install the plug-in?") diff --git a/ppd/hpcups/apollo-2100.ppd.gz b/ppd/hpcups/apollo-2100.ppd.gz Binary files differindex 09ac29b9b..40487840c 100644 --- a/ppd/hpcups/apollo-2100.ppd.gz +++ b/ppd/hpcups/apollo-2100.ppd.gz diff --git a/ppd/hpcups/apollo-2150.ppd.gz b/ppd/hpcups/apollo-2150.ppd.gz Binary files differindex 509a3af79..95ca3ca95 100644 --- a/ppd/hpcups/apollo-2150.ppd.gz +++ b/ppd/hpcups/apollo-2150.ppd.gz diff --git a/ppd/hpcups/apollo-2200.ppd.gz b/ppd/hpcups/apollo-2200.ppd.gz Binary files differindex f8fa5b6e6..d59cad05f 100644 --- a/ppd/hpcups/apollo-2200.ppd.gz +++ b/ppd/hpcups/apollo-2200.ppd.gz diff --git a/ppd/hpcups/apollo-2500.ppd.gz b/ppd/hpcups/apollo-2500.ppd.gz Binary files differindex 013729b5c..f9de79001 100644 --- a/ppd/hpcups/apollo-2500.ppd.gz +++ b/ppd/hpcups/apollo-2500.ppd.gz diff --git a/ppd/hpcups/apollo-2600.ppd.gz b/ppd/hpcups/apollo-2600.ppd.gz Binary files differindex 2294190ec..8c32d21ab 100644 --- a/ppd/hpcups/apollo-2600.ppd.gz +++ b/ppd/hpcups/apollo-2600.ppd.gz diff --git a/ppd/hpcups/apollo-2650.ppd.gz b/ppd/hpcups/apollo-2650.ppd.gz Binary files differindex 3ae919cd9..13133f9c5 100644 --- a/ppd/hpcups/apollo-2650.ppd.gz +++ b/ppd/hpcups/apollo-2650.ppd.gz diff --git a/ppd/hpcups/apollo-p2000-u.ppd.gz b/ppd/hpcups/apollo-p2000-u.ppd.gz Binary files differindex 816d00026..58f234a1e 100644 --- a/ppd/hpcups/apollo-p2000-u.ppd.gz +++ b/ppd/hpcups/apollo-p2000-u.ppd.gz diff --git a/ppd/hpcups/apollo-p2250.ppd.gz b/ppd/hpcups/apollo-p2250.ppd.gz Binary files differindex 2234388be..7f419333d 100644 --- a/ppd/hpcups/apollo-p2250.ppd.gz +++ b/ppd/hpcups/apollo-p2250.ppd.gz diff --git a/ppd/hpcups/hp-2000c.ppd.gz b/ppd/hpcups/hp-2000c.ppd.gz Binary files differindex a0747e6f0..7eb973db5 100644 --- a/ppd/hpcups/hp-2000c.ppd.gz +++ b/ppd/hpcups/hp-2000c.ppd.gz diff --git a/ppd/hpcups/hp-2500c.ppd.gz b/ppd/hpcups/hp-2500c.ppd.gz Binary files differindex fb3013446..a392d2038 100644 --- a/ppd/hpcups/hp-2500c.ppd.gz +++ b/ppd/hpcups/hp-2500c.ppd.gz diff --git a/ppd/hpcups/hp-910.ppd.gz b/ppd/hpcups/hp-910.ppd.gz Binary files differindex 6eaf6fe84..7e9e31746 100644 --- a/ppd/hpcups/hp-910.ppd.gz +++ b/ppd/hpcups/hp-910.ppd.gz diff --git a/ppd/hpcups/hp-915.ppd.gz b/ppd/hpcups/hp-915.ppd.gz Binary files differindex cba5b5dc3..77ca41f17 100644 --- a/ppd/hpcups/hp-915.ppd.gz +++ b/ppd/hpcups/hp-915.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_1000.ppd.gz b/ppd/hpcups/hp-business_inkjet_1000.ppd.gz Binary files differindex 54c2ef4fc..4a29e0f6e 100644 --- a/ppd/hpcups/hp-business_inkjet_1000.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_1000.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_1100.ppd.gz b/ppd/hpcups/hp-business_inkjet_1100.ppd.gz Binary files differindex fb2eef542..e19beb59e 100644 --- a/ppd/hpcups/hp-business_inkjet_1100.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_1100.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_1200.ppd.gz b/ppd/hpcups/hp-business_inkjet_1200.ppd.gz Binary files differindex fd4400691..68df4d0cd 100644 --- a/ppd/hpcups/hp-business_inkjet_1200.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_1200.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2200.ppd.gz b/ppd/hpcups/hp-business_inkjet_2200.ppd.gz Binary files differindex aca5a09ca..4fb2eb856 100644 --- a/ppd/hpcups/hp-business_inkjet_2200.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2200.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2230.ppd.gz b/ppd/hpcups/hp-business_inkjet_2230.ppd.gz Binary files differindex 25fe60a1d..e17ecffd5 100644 --- a/ppd/hpcups/hp-business_inkjet_2230.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2230.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2250-pcl3.ppd.gz b/ppd/hpcups/hp-business_inkjet_2250-pcl3.ppd.gz Binary files differindex 06f2e041f..41e7ced7f 100644 --- a/ppd/hpcups/hp-business_inkjet_2250-pcl3.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2250-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2280-pcl3.ppd.gz b/ppd/hpcups/hp-business_inkjet_2280-pcl3.ppd.gz Binary files differindex c4322c5be..3d3c02a5d 100644 --- a/ppd/hpcups/hp-business_inkjet_2280-pcl3.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2280-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2300-pcl3.ppd.gz b/ppd/hpcups/hp-business_inkjet_2300-pcl3.ppd.gz Binary files differindex 7bb46e686..b2e55e8be 100644 --- a/ppd/hpcups/hp-business_inkjet_2300-pcl3.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2300-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2600-pcl3.ppd.gz b/ppd/hpcups/hp-business_inkjet_2600-pcl3.ppd.gz Binary files differindex e3bcfb686..332863741 100644 --- a/ppd/hpcups/hp-business_inkjet_2600-pcl3.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2600-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_2800-pcl3.ppd.gz b/ppd/hpcups/hp-business_inkjet_2800-pcl3.ppd.gz Binary files differindex 66737e3f3..fb2c303e7 100644 --- a/ppd/hpcups/hp-business_inkjet_2800-pcl3.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_2800-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-business_inkjet_3000-pcl3.ppd.gz b/ppd/hpcups/hp-business_inkjet_3000-pcl3.ppd.gz Binary files differindex 91bf0c2e5..eb6025c4a 100644 --- a/ppd/hpcups/hp-business_inkjet_3000-pcl3.ppd.gz +++ b/ppd/hpcups/hp-business_inkjet_3000-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_inkjet_cp1700.ppd.gz b/ppd/hpcups/hp-color_inkjet_cp1700.ppd.gz Binary files differindex 0725be8ba..a69a2f3f4 100644 --- a/ppd/hpcups/hp-color_inkjet_cp1700.ppd.gz +++ b/ppd/hpcups/hp-color_inkjet_cp1700.ppd.gz diff --git a/ppd/hpcups/hp-color_inkjet_printer_cp1700.ppd.gz b/ppd/hpcups/hp-color_inkjet_printer_cp1700.ppd.gz Binary files differindex 87f71a529..8ad219f18 100644 --- a/ppd/hpcups/hp-color_inkjet_printer_cp1700.ppd.gz +++ b/ppd/hpcups/hp-color_inkjet_printer_cp1700.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_1600.ppd.gz b/ppd/hpcups/hp-color_laserjet_1600.ppd.gz Binary files differindex 34f88194b..6316c5915 100644 --- a/ppd/hpcups/hp-color_laserjet_1600.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_1600.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_2500-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_2500-pcl3.ppd.gz Binary files differindex 97744e72e..4f4a9d0be 100644 --- a/ppd/hpcups/hp-color_laserjet_2500-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_2500-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_2500_series.ppd.gz b/ppd/hpcups/hp-color_laserjet_2500_series.ppd.gz Binary files differindex c12720860..feca08d6d 100644 --- a/ppd/hpcups/hp-color_laserjet_2500_series.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_2500_series.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_2600n.ppd.gz b/ppd/hpcups/hp-color_laserjet_2600n.ppd.gz Binary files differindex 0c1781c66..5a30471e3 100644 --- a/ppd/hpcups/hp-color_laserjet_2600n.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_2600n.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3000-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_3000-pcl3.ppd.gz Binary files differindex cc9e6408d..db9c8a49c 100644 --- a/ppd/hpcups/hp-color_laserjet_3000-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3000-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3500.ppd.gz b/ppd/hpcups/hp-color_laserjet_3500.ppd.gz Binary files differindex f061f476f..1a0ea65c5 100644 --- a/ppd/hpcups/hp-color_laserjet_3500.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3500.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3500n.ppd.gz b/ppd/hpcups/hp-color_laserjet_3500n.ppd.gz Binary files differindex a28da1c25..1e83cef48 100644 --- a/ppd/hpcups/hp-color_laserjet_3500n.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3500n.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3550.ppd.gz b/ppd/hpcups/hp-color_laserjet_3550.ppd.gz Binary files differindex a228b1a6e..cc86f53ba 100644 --- a/ppd/hpcups/hp-color_laserjet_3550.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3550.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3550n.ppd.gz b/ppd/hpcups/hp-color_laserjet_3550n.ppd.gz Binary files differindex c79a3bdbf..6db450701 100644 --- a/ppd/hpcups/hp-color_laserjet_3550n.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3550n.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3600.ppd.gz b/ppd/hpcups/hp-color_laserjet_3600.ppd.gz Binary files differindex a51ff1a95..1d2c9bf50 100644 --- a/ppd/hpcups/hp-color_laserjet_3600.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3600.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3700-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_3700-pcl3.ppd.gz Binary files differindex 5dc6aad87..8570e46d9 100644 --- a/ppd/hpcups/hp-color_laserjet_3700-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3700-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3700n.ppd.gz b/ppd/hpcups/hp-color_laserjet_3700n.ppd.gz Binary files differindex c9ad02cae..a5ab72392 100644 --- a/ppd/hpcups/hp-color_laserjet_3700n.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3700n.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_3800-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_3800-pcl3.ppd.gz Binary files differindex 44a33e45a..74178b0e9 100644 --- a/ppd/hpcups/hp-color_laserjet_3800-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_3800-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4500-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4500-pcl3.ppd.gz Binary files differindex ad878b0f9..3f2e9adcd 100644 --- a/ppd/hpcups/hp-color_laserjet_4500-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4500-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4550-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4550-pcl3.ppd.gz Binary files differindex 654eea1d2..e99e9a7e3 100644 --- a/ppd/hpcups/hp-color_laserjet_4550-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4550-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4600-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4600-pcl3.ppd.gz Binary files differindex 5a31bce6b..f1ee56c20 100644 --- a/ppd/hpcups/hp-color_laserjet_4600-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4600-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4600_series.ppd.gz b/ppd/hpcups/hp-color_laserjet_4600_series.ppd.gz Binary files differindex d5c3b34b5..0723cc05f 100644 --- a/ppd/hpcups/hp-color_laserjet_4600_series.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4600_series.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4610-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4610-pcl3.ppd.gz Binary files differindex e9960ef9d..8a86449dd 100644 --- a/ppd/hpcups/hp-color_laserjet_4610-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4610-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4650-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4650-pcl3.ppd.gz Binary files differindex 2217933bb..5d670198a 100644 --- a/ppd/hpcups/hp-color_laserjet_4650-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4650-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4700-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4700-pcl3.ppd.gz Binary files differindex e760f0584..9b1d6f66e 100644 --- a/ppd/hpcups/hp-color_laserjet_4700-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4700-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_4730mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_4730mfp-pcl3.ppd.gz Binary files differindex 3cf3b7d65..d5f34262e 100644 --- a/ppd/hpcups/hp-color_laserjet_4730mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_4730mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_5.ppd.gz b/ppd/hpcups/hp-color_laserjet_5.ppd.gz Binary files differindex c313937ce..567b70e06 100644 --- a/ppd/hpcups/hp-color_laserjet_5.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_5.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_5500-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_5500-pcl3.ppd.gz Binary files differindex cce101358..c039d4627 100644 --- a/ppd/hpcups/hp-color_laserjet_5500-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_5500-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_5550-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_5550-pcl3.ppd.gz Binary files differindex fc086d55b..9f12d3fbb 100644 --- a/ppd/hpcups/hp-color_laserjet_5550-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_5550-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_5m-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_5m-pcl3.ppd.gz Binary files differindex 16a06ea17..97ada4a82 100644 --- a/ppd/hpcups/hp-color_laserjet_5m-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_5m-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_8500-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_8500-pcl3.ppd.gz Binary files differindex c981e7bc6..a6fe1ca99 100644 --- a/ppd/hpcups/hp-color_laserjet_8500-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_8500-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_8550-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_8550-pcl3.ppd.gz Binary files differindex c34f2e4d3..d8e479d9a 100644 --- a/ppd/hpcups/hp-color_laserjet_8550-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_8550-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_9500-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_9500-pcl3.ppd.gz Binary files differindex 064aa977f..cbff43db3 100644 --- a/ppd/hpcups/hp-color_laserjet_9500-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_9500-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_9500_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_9500_mfp-pcl3.ppd.gz Binary files differindex 6b6008fdc..173fbcd4f 100644 --- a/ppd/hpcups/hp-color_laserjet_9500_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_9500_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm1312_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm1312_mfp-pcl3.ppd.gz Binary files differindex 0b22f6046..d8711d8a0 100644 --- a/ppd/hpcups/hp-color_laserjet_cm1312_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm1312_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm1312nfi_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm1312nfi_mfp-pcl3.ppd.gz Binary files differindex 4b71d1af6..b1eb2b0c2 100644 --- a/ppd/hpcups/hp-color_laserjet_cm1312nfi_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm1312nfi_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm2320_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm2320_mfp-pcl3.ppd.gz Binary files differindex 590eb0fdf..c28fe8609 100644 --- a/ppd/hpcups/hp-color_laserjet_cm2320_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm2320_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm2320fxi_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm2320fxi_mfp-pcl3.ppd.gz Binary files differindex ed68693a9..f3cf0fc34 100644 --- a/ppd/hpcups/hp-color_laserjet_cm2320fxi_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm2320fxi_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm2320n_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm2320n_mfp-pcl3.ppd.gz Binary files differindex 6b186c7c6..aee5b990c 100644 --- a/ppd/hpcups/hp-color_laserjet_cm2320n_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm2320n_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm2320nf_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm2320nf_mfp-pcl3.ppd.gz Binary files differindex 6a06e2c7b..aa96dfce7 100644 --- a/ppd/hpcups/hp-color_laserjet_cm2320nf_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm2320nf_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm3530_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm3530_mfp-pcl3.ppd.gz Binary files differindex 35aee6111..5e62d1b14 100644 --- a/ppd/hpcups/hp-color_laserjet_cm3530_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm3530_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm4540_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm4540_mfp-pcl3.ppd.gz Binary files differindex 5449f534c..b65f643f1 100644 --- a/ppd/hpcups/hp-color_laserjet_cm4540_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm4540_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm4730_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm4730_mfp-pcl3.ppd.gz Binary files differindex 9b6ba549b..33200787d 100644 --- a/ppd/hpcups/hp-color_laserjet_cm4730_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm4730_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm6030_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm6030_mfp-pcl3.ppd.gz Binary files differindex 30300b53d..16dfeb9b0 100644 --- a/ppd/hpcups/hp-color_laserjet_cm6030_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm6030_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm6040_mfp.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm6040_mfp.ppd.gz Binary files differindex 79b333715..aeabf42b4 100644 --- a/ppd/hpcups/hp-color_laserjet_cm6040_mfp.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm6040_mfp.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cm6049_mfp.ppd.gz b/ppd/hpcups/hp-color_laserjet_cm6049_mfp.ppd.gz Binary files differindex 810991820..d16ed6a83 100644 --- a/ppd/hpcups/hp-color_laserjet_cm6049_mfp.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cm6049_mfp.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp1215.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp1215.ppd.gz Binary files differindex 5ef3e1232..3141114e5 100644 --- a/ppd/hpcups/hp-color_laserjet_cp1215.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp1215.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp1217.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp1217.ppd.gz Binary files differindex 627ab4d02..bfe4982b3 100644 --- a/ppd/hpcups/hp-color_laserjet_cp1217.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp1217.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp1514n-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp1514n-pcl3.ppd.gz Binary files differindex 13c7083ea..092a7997c 100644 --- a/ppd/hpcups/hp-color_laserjet_cp1514n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp1514n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp1515n-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp1515n-pcl3.ppd.gz Binary files differindex 43cd6595d..ce4be84e0 100644 --- a/ppd/hpcups/hp-color_laserjet_cp1515n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp1515n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp1518ni-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp1518ni-pcl3.ppd.gz Binary files differindex aa764267d..02e459557 100644 --- a/ppd/hpcups/hp-color_laserjet_cp1518ni-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp1518ni-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp2025-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp2025-pcl3.ppd.gz Binary files differindex b8e403bac..215306e6e 100644 --- a/ppd/hpcups/hp-color_laserjet_cp2025-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp2025-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp2025dn-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp2025dn-pcl3.ppd.gz Binary files differindex 8fd38c69d..930426056 100644 --- a/ppd/hpcups/hp-color_laserjet_cp2025dn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp2025dn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp2025n-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp2025n-pcl3.ppd.gz Binary files differindex ea6c41f5e..dbfd4974f 100644 --- a/ppd/hpcups/hp-color_laserjet_cp2025n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp2025n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp2025x-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp2025x-pcl3.ppd.gz Binary files differindex d89680c4e..ff121c07e 100644 --- a/ppd/hpcups/hp-color_laserjet_cp2025x-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp2025x-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp3505-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp3505-pcl3.ppd.gz Binary files differindex c0753030e..494988730 100644 --- a/ppd/hpcups/hp-color_laserjet_cp3505-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp3505-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp3525-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp3525-pcl3.ppd.gz Binary files differindex 521793afd..9321e8f49 100644 --- a/ppd/hpcups/hp-color_laserjet_cp3525-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp3525-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp4005-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp4005-pcl3.ppd.gz Binary files differindex 030d6a150..aa3f9a86b 100644 --- a/ppd/hpcups/hp-color_laserjet_cp4005-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp4005-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp4020_series-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp4020_series-pcl3.ppd.gz Binary files differindex 9cad8867f..c83a309de 100644 --- a/ppd/hpcups/hp-color_laserjet_cp4020_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp4020_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp4520_series-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp4520_series-pcl3.ppd.gz Binary files differindex 7753dc287..7c09db11b 100644 --- a/ppd/hpcups/hp-color_laserjet_cp4520_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp4520_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp5225-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp5225-pcl3.ppd.gz Binary files differindex eec6fa1f7..f321ad815 100644 --- a/ppd/hpcups/hp-color_laserjet_cp5225-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp5225-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp5225dn-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp5225dn-pcl3.ppd.gz Binary files differindex a9cf2612f..fb0f1716a 100644 --- a/ppd/hpcups/hp-color_laserjet_cp5225dn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp5225dn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp5225n-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp5225n-pcl3.ppd.gz Binary files differindex ab02f24b3..ce5abe097 100644 --- a/ppd/hpcups/hp-color_laserjet_cp5225n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp5225n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp5520_series-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp5520_series-pcl3.ppd.gz Binary files differindex 35df46aeb..7f1194a2a 100644 --- a/ppd/hpcups/hp-color_laserjet_cp5520_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp5520_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-color_laserjet_cp6015-pcl3.ppd.gz b/ppd/hpcups/hp-color_laserjet_cp6015-pcl3.ppd.gz Binary files differindex d23b26d72..2d43687b2 100644 --- a/ppd/hpcups/hp-color_laserjet_cp6015-pcl3.ppd.gz +++ b/ppd/hpcups/hp-color_laserjet_cp6015-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-cp1160.ppd.gz b/ppd/hpcups/hp-cp1160.ppd.gz Binary files differindex 281325e67..7e22b14e1 100644 --- a/ppd/hpcups/hp-cp1160.ppd.gz +++ b/ppd/hpcups/hp-cp1160.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1000_j110_series.ppd.gz b/ppd/hpcups/hp-deskjet_1000_j110_series.ppd.gz Binary files differindex 1df9beef3..78251a5e3 100644 --- a/ppd/hpcups/hp-deskjet_1000_j110_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1000_j110_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1050_j410_series.ppd.gz b/ppd/hpcups/hp-deskjet_1050_j410_series.ppd.gz Binary files differindex 18c9f9dc2..d0b28fbf1 100644 --- a/ppd/hpcups/hp-deskjet_1050_j410_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1050_j410_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1100.ppd.gz b/ppd/hpcups/hp-deskjet_1100.ppd.gz Binary files differindex d8463bff2..4653d729e 100644 --- a/ppd/hpcups/hp-deskjet_1100.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1100.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1120.ppd.gz b/ppd/hpcups/hp-deskjet_1120.ppd.gz Binary files differindex dc009c4c6..0c4805974 100644 --- a/ppd/hpcups/hp-deskjet_1120.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1120.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1125.ppd.gz b/ppd/hpcups/hp-deskjet_1125.ppd.gz Binary files differindex c26eb411a..56222d446 100644 --- a/ppd/hpcups/hp-deskjet_1125.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1125.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1200c.ppd.gz b/ppd/hpcups/hp-deskjet_1200c.ppd.gz Binary files differindex e8009e6dc..edf7d9d73 100644 --- a/ppd/hpcups/hp-deskjet_1200c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1200c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1220c.ppd.gz b/ppd/hpcups/hp-deskjet_1220c.ppd.gz Binary files differindex de9405201..ab6bcde47 100644 --- a/ppd/hpcups/hp-deskjet_1220c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1220c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1280.ppd.gz b/ppd/hpcups/hp-deskjet_1280.ppd.gz Binary files differindex 9f228a8cb..9bd4bb675 100644 --- a/ppd/hpcups/hp-deskjet_1280.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1280.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1600c.ppd.gz b/ppd/hpcups/hp-deskjet_1600c.ppd.gz Binary files differindex f376dc855..6babb3288 100644 --- a/ppd/hpcups/hp-deskjet_1600c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1600c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1600cm.ppd.gz b/ppd/hpcups/hp-deskjet_1600cm.ppd.gz Binary files differindex c4f0045d1..92e0dac0e 100644 --- a/ppd/hpcups/hp-deskjet_1600cm.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1600cm.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_1600cn.ppd.gz b/ppd/hpcups/hp-deskjet_1600cn.ppd.gz Binary files differindex 5a7813013..e8a1709c1 100644 --- a/ppd/hpcups/hp-deskjet_1600cn.ppd.gz +++ b/ppd/hpcups/hp-deskjet_1600cn.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_2000_j210_series.ppd.gz b/ppd/hpcups/hp-deskjet_2000_j210_series.ppd.gz Binary files differindex 730d2bb49..e40b72100 100644 --- a/ppd/hpcups/hp-deskjet_2000_j210_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_2000_j210_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_2050_j510_series.ppd.gz b/ppd/hpcups/hp-deskjet_2050_j510_series.ppd.gz Binary files differindex 6ce2b618f..45c38f79b 100644 --- a/ppd/hpcups/hp-deskjet_2050_j510_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_2050_j510_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3000_j310_series.ppd.gz b/ppd/hpcups/hp-deskjet_3000_j310_series.ppd.gz Binary files differindex 37545cc9e..5099271a9 100644 --- a/ppd/hpcups/hp-deskjet_3000_j310_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3000_j310_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3050_j610_series.ppd.gz b/ppd/hpcups/hp-deskjet_3050_j610_series.ppd.gz Binary files differindex 30505c588..4ec079947 100644 --- a/ppd/hpcups/hp-deskjet_3050_j610_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3050_j610_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3050a_j611_series.ppd.gz b/ppd/hpcups/hp-deskjet_3050a_j611_series.ppd.gz Binary files differindex 04fc04bbc..6db9306a0 100644 --- a/ppd/hpcups/hp-deskjet_3050a_j611_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3050a_j611_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3070_b611_series.ppd.gz b/ppd/hpcups/hp-deskjet_3070_b611_series.ppd.gz Binary files differindex bbde2123e..0e9d16034 100644 --- a/ppd/hpcups/hp-deskjet_3070_b611_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3070_b611_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3320.ppd.gz b/ppd/hpcups/hp-deskjet_3320.ppd.gz Binary files differindex c3143ceb5..866d158a6 100644 --- a/ppd/hpcups/hp-deskjet_3320.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3320.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3325.ppd.gz b/ppd/hpcups/hp-deskjet_3325.ppd.gz Binary files differindex c1725e536..a8fa60f29 100644 --- a/ppd/hpcups/hp-deskjet_3325.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3325.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3420.ppd.gz b/ppd/hpcups/hp-deskjet_3420.ppd.gz Binary files differindex f9bbb5753..0cd987eb4 100644 --- a/ppd/hpcups/hp-deskjet_3420.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3420.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3425.ppd.gz b/ppd/hpcups/hp-deskjet_3425.ppd.gz Binary files differindex 79ee0d01e..62c772e66 100644 --- a/ppd/hpcups/hp-deskjet_3425.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3425.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3450.ppd.gz b/ppd/hpcups/hp-deskjet_3450.ppd.gz Binary files differindex 40ea5953f..99de67a23 100644 --- a/ppd/hpcups/hp-deskjet_3450.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3450.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3500.ppd.gz b/ppd/hpcups/hp-deskjet_3500.ppd.gz Binary files differindex d9515ae33..002897025 100644 --- a/ppd/hpcups/hp-deskjet_3500.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3500.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3550.ppd.gz b/ppd/hpcups/hp-deskjet_3550.ppd.gz Binary files differindex 7d5d257e2..149ea89fd 100644 --- a/ppd/hpcups/hp-deskjet_3550.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3550.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3600.ppd.gz b/ppd/hpcups/hp-deskjet_3600.ppd.gz Binary files differindex 729d63d31..68409c960 100644 --- a/ppd/hpcups/hp-deskjet_3600.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3600.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3650.ppd.gz b/ppd/hpcups/hp-deskjet_3650.ppd.gz Binary files differindex 6d9c378f3..9acc079f4 100644 --- a/ppd/hpcups/hp-deskjet_3650.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3650.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3740.ppd.gz b/ppd/hpcups/hp-deskjet_3740.ppd.gz Binary files differindex 4fe8c8441..5e86215e8 100644 --- a/ppd/hpcups/hp-deskjet_3740.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3740.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3810.ppd.gz b/ppd/hpcups/hp-deskjet_3810.ppd.gz Binary files differindex f027d49b3..0f61e0846 100644 --- a/ppd/hpcups/hp-deskjet_3810.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3810.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3816.ppd.gz b/ppd/hpcups/hp-deskjet_3816.ppd.gz Binary files differindex c71093c18..36acecc06 100644 --- a/ppd/hpcups/hp-deskjet_3816.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3816.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3819.ppd.gz b/ppd/hpcups/hp-deskjet_3819.ppd.gz Binary files differindex 5e3b7ce6e..fec0eede8 100644 --- a/ppd/hpcups/hp-deskjet_3819.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3819.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3820.ppd.gz b/ppd/hpcups/hp-deskjet_3820.ppd.gz Binary files differindex 9857f6788..54dd8a85d 100644 --- a/ppd/hpcups/hp-deskjet_3820.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3820.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3822.ppd.gz b/ppd/hpcups/hp-deskjet_3822.ppd.gz Binary files differindex fd5486040..1e8163d93 100644 --- a/ppd/hpcups/hp-deskjet_3822.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3822.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3840.ppd.gz b/ppd/hpcups/hp-deskjet_3840.ppd.gz Binary files differindex e693b2d16..ac5ae2a16 100644 --- a/ppd/hpcups/hp-deskjet_3840.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3840.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3870.ppd.gz b/ppd/hpcups/hp-deskjet_3870.ppd.gz Binary files differindex c491232fb..6a7af81cf 100644 --- a/ppd/hpcups/hp-deskjet_3870.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3870.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3900.ppd.gz b/ppd/hpcups/hp-deskjet_3900.ppd.gz Binary files differindex ecfb02534..4461ac2c1 100644 --- a/ppd/hpcups/hp-deskjet_3900.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3900.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3910.ppd.gz b/ppd/hpcups/hp-deskjet_3910.ppd.gz Binary files differindex d5790cf97..3d6748536 100644 --- a/ppd/hpcups/hp-deskjet_3910.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3910.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3920.ppd.gz b/ppd/hpcups/hp-deskjet_3920.ppd.gz Binary files differindex ac3bdb651..f525d1f3c 100644 --- a/ppd/hpcups/hp-deskjet_3920.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3920.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_3940.ppd.gz b/ppd/hpcups/hp-deskjet_3940.ppd.gz Binary files differindex 81a9cca9f..3a36a1b63 100644 --- a/ppd/hpcups/hp-deskjet_3940.ppd.gz +++ b/ppd/hpcups/hp-deskjet_3940.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_400.ppd.gz b/ppd/hpcups/hp-deskjet_400.ppd.gz Binary files differindex 38d4be67d..dde9cb895 100644 --- a/ppd/hpcups/hp-deskjet_400.ppd.gz +++ b/ppd/hpcups/hp-deskjet_400.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_400l.ppd.gz b/ppd/hpcups/hp-deskjet_400l.ppd.gz Binary files differindex 3ca3777d3..0757ef21d 100644 --- a/ppd/hpcups/hp-deskjet_400l.ppd.gz +++ b/ppd/hpcups/hp-deskjet_400l.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_460.ppd.gz b/ppd/hpcups/hp-deskjet_460.ppd.gz Binary files differindex 7d9536dea..0827b3108 100644 --- a/ppd/hpcups/hp-deskjet_460.ppd.gz +++ b/ppd/hpcups/hp-deskjet_460.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_500.ppd.gz b/ppd/hpcups/hp-deskjet_500.ppd.gz Binary files differindex 227f97dd6..e5f729e01 100644 --- a/ppd/hpcups/hp-deskjet_500.ppd.gz +++ b/ppd/hpcups/hp-deskjet_500.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_500c.ppd.gz b/ppd/hpcups/hp-deskjet_500c.ppd.gz Binary files differindex d74cf73a3..1b674fbb6 100644 --- a/ppd/hpcups/hp-deskjet_500c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_500c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_505j.ppd.gz b/ppd/hpcups/hp-deskjet_505j.ppd.gz Binary files differindex 9ee694a2f..c81d3fb69 100644 --- a/ppd/hpcups/hp-deskjet_505j.ppd.gz +++ b/ppd/hpcups/hp-deskjet_505j.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_510.ppd.gz b/ppd/hpcups/hp-deskjet_510.ppd.gz Binary files differindex 1424ee54c..0be93456c 100644 --- a/ppd/hpcups/hp-deskjet_510.ppd.gz +++ b/ppd/hpcups/hp-deskjet_510.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5100.ppd.gz b/ppd/hpcups/hp-deskjet_5100.ppd.gz Binary files differindex 39e0fbf81..f3194bb56 100644 --- a/ppd/hpcups/hp-deskjet_5100.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5100.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_520.ppd.gz b/ppd/hpcups/hp-deskjet_520.ppd.gz Binary files differindex f53d6e96d..cd31096fa 100644 --- a/ppd/hpcups/hp-deskjet_520.ppd.gz +++ b/ppd/hpcups/hp-deskjet_520.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_540.ppd.gz b/ppd/hpcups/hp-deskjet_540.ppd.gz Binary files differindex 9926510e8..c003ed259 100644 --- a/ppd/hpcups/hp-deskjet_540.ppd.gz +++ b/ppd/hpcups/hp-deskjet_540.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5400_series.ppd.gz b/ppd/hpcups/hp-deskjet_5400_series.ppd.gz Binary files differindex 2f948095e..3cb2b19b5 100644 --- a/ppd/hpcups/hp-deskjet_5400_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5400_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_550c.ppd.gz b/ppd/hpcups/hp-deskjet_550c.ppd.gz Binary files differindex e815d1185..9a7cd7889 100644 --- a/ppd/hpcups/hp-deskjet_550c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_550c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5550.ppd.gz b/ppd/hpcups/hp-deskjet_5550.ppd.gz Binary files differindex e8295a4aa..ab60af7bb 100644 --- a/ppd/hpcups/hp-deskjet_5550.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5550.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5551.ppd.gz b/ppd/hpcups/hp-deskjet_5551.ppd.gz Binary files differindex 3f6350a96..1db2ae287 100644 --- a/ppd/hpcups/hp-deskjet_5551.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5551.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5552.ppd.gz b/ppd/hpcups/hp-deskjet_5552.ppd.gz Binary files differindex 84da5cea6..7dfe88659 100644 --- a/ppd/hpcups/hp-deskjet_5552.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5552.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5600.ppd.gz b/ppd/hpcups/hp-deskjet_5600.ppd.gz Binary files differindex 11858fbf7..7853031aa 100644 --- a/ppd/hpcups/hp-deskjet_5600.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5600.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5650.ppd.gz b/ppd/hpcups/hp-deskjet_5650.ppd.gz Binary files differindex 856fcbfdc..491e184dd 100644 --- a/ppd/hpcups/hp-deskjet_5650.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5650.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5652.ppd.gz b/ppd/hpcups/hp-deskjet_5652.ppd.gz Binary files differindex ced343ac5..dbeba6b13 100644 --- a/ppd/hpcups/hp-deskjet_5652.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5652.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5700.ppd.gz b/ppd/hpcups/hp-deskjet_5700.ppd.gz Binary files differindex 2580efe51..bf58a36b9 100644 --- a/ppd/hpcups/hp-deskjet_5700.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5700.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5800.ppd.gz b/ppd/hpcups/hp-deskjet_5800.ppd.gz Binary files differindex de1ed1bc2..157e2462a 100644 --- a/ppd/hpcups/hp-deskjet_5800.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5800.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5850.ppd.gz b/ppd/hpcups/hp-deskjet_5850.ppd.gz Binary files differindex db90534fe..39826479c 100644 --- a/ppd/hpcups/hp-deskjet_5850.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5850.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_5900_series.ppd.gz b/ppd/hpcups/hp-deskjet_5900_series.ppd.gz Binary files differindex f273bf53b..8a508b8f1 100644 --- a/ppd/hpcups/hp-deskjet_5900_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_5900_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_600.ppd.gz b/ppd/hpcups/hp-deskjet_600.ppd.gz Binary files differindex df28dd270..7910914b7 100644 --- a/ppd/hpcups/hp-deskjet_600.ppd.gz +++ b/ppd/hpcups/hp-deskjet_600.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_610c.ppd.gz b/ppd/hpcups/hp-deskjet_610c.ppd.gz Binary files differindex eabb2a6c9..f3e011805 100644 --- a/ppd/hpcups/hp-deskjet_610c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_610c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_610cl.ppd.gz b/ppd/hpcups/hp-deskjet_610cl.ppd.gz Binary files differindex 7a2761c20..ab9f4a35a 100644 --- a/ppd/hpcups/hp-deskjet_610cl.ppd.gz +++ b/ppd/hpcups/hp-deskjet_610cl.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6120.ppd.gz b/ppd/hpcups/hp-deskjet_6120.ppd.gz Binary files differindex 72e2b2f71..8fc2f1860 100644 --- a/ppd/hpcups/hp-deskjet_6120.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6120.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6122.ppd.gz b/ppd/hpcups/hp-deskjet_6122.ppd.gz Binary files differindex 9bd12abc7..5726e5640 100644 --- a/ppd/hpcups/hp-deskjet_6122.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6122.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6127.ppd.gz b/ppd/hpcups/hp-deskjet_6127.ppd.gz Binary files differindex aab365de9..a56d46b72 100644 --- a/ppd/hpcups/hp-deskjet_6127.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6127.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_612c.ppd.gz b/ppd/hpcups/hp-deskjet_612c.ppd.gz Binary files differindex 14ba1d59f..0711df079 100644 --- a/ppd/hpcups/hp-deskjet_612c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_612c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_630c.ppd.gz b/ppd/hpcups/hp-deskjet_630c.ppd.gz Binary files differindex 3b4453f9c..aee182854 100644 --- a/ppd/hpcups/hp-deskjet_630c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_630c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_632c.ppd.gz b/ppd/hpcups/hp-deskjet_632c.ppd.gz Binary files differindex 0d5134f45..5ab5d0157 100644 --- a/ppd/hpcups/hp-deskjet_632c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_632c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_640c.ppd.gz b/ppd/hpcups/hp-deskjet_640c.ppd.gz Binary files differindex d63df080b..93b3f23d5 100644 --- a/ppd/hpcups/hp-deskjet_640c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_640c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_648c.ppd.gz b/ppd/hpcups/hp-deskjet_648c.ppd.gz Binary files differindex bf3fec54f..508ddc619 100644 --- a/ppd/hpcups/hp-deskjet_648c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_648c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6500.ppd.gz b/ppd/hpcups/hp-deskjet_6500.ppd.gz Binary files differindex 62a6bb8dd..14458daf4 100644 --- a/ppd/hpcups/hp-deskjet_6500.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6500.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_656c.ppd.gz b/ppd/hpcups/hp-deskjet_656c.ppd.gz Binary files differindex d0bf438be..3e1d37abc 100644 --- a/ppd/hpcups/hp-deskjet_656c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_656c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_660.ppd.gz b/ppd/hpcups/hp-deskjet_660.ppd.gz Binary files differindex c68e66a4e..b20cb96a8 100644 --- a/ppd/hpcups/hp-deskjet_660.ppd.gz +++ b/ppd/hpcups/hp-deskjet_660.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6600.ppd.gz b/ppd/hpcups/hp-deskjet_6600.ppd.gz Binary files differindex 41ae5a091..f42f72101 100644 --- a/ppd/hpcups/hp-deskjet_6600.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6600.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_670.ppd.gz b/ppd/hpcups/hp-deskjet_670.ppd.gz Binary files differindex 50a3ee4e6..fe2bb1076 100644 --- a/ppd/hpcups/hp-deskjet_670.ppd.gz +++ b/ppd/hpcups/hp-deskjet_670.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_670c.ppd.gz b/ppd/hpcups/hp-deskjet_670c.ppd.gz Binary files differindex f788ec315..27ef13f69 100644 --- a/ppd/hpcups/hp-deskjet_670c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_670c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_670tv.ppd.gz b/ppd/hpcups/hp-deskjet_670tv.ppd.gz Binary files differindex 713ea08af..e6d351c37 100644 --- a/ppd/hpcups/hp-deskjet_670tv.ppd.gz +++ b/ppd/hpcups/hp-deskjet_670tv.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_672c.ppd.gz b/ppd/hpcups/hp-deskjet_672c.ppd.gz Binary files differindex 5eaa7bb0e..ca3746d0d 100644 --- a/ppd/hpcups/hp-deskjet_672c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_672c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_680.ppd.gz b/ppd/hpcups/hp-deskjet_680.ppd.gz Binary files differindex 61e5289ea..ae514c96e 100644 --- a/ppd/hpcups/hp-deskjet_680.ppd.gz +++ b/ppd/hpcups/hp-deskjet_680.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6800.ppd.gz b/ppd/hpcups/hp-deskjet_6800.ppd.gz Binary files differindex 434e824ed..b3382a966 100644 --- a/ppd/hpcups/hp-deskjet_6800.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6800.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_682.ppd.gz b/ppd/hpcups/hp-deskjet_682.ppd.gz Binary files differindex d3a475a0d..487f377dd 100644 --- a/ppd/hpcups/hp-deskjet_682.ppd.gz +++ b/ppd/hpcups/hp-deskjet_682.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_690.ppd.gz b/ppd/hpcups/hp-deskjet_690.ppd.gz Binary files differindex 56f378d90..64082fc34 100644 --- a/ppd/hpcups/hp-deskjet_690.ppd.gz +++ b/ppd/hpcups/hp-deskjet_690.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_690c.ppd.gz b/ppd/hpcups/hp-deskjet_690c.ppd.gz Binary files differindex 4b63b5ff3..c121df9e1 100644 --- a/ppd/hpcups/hp-deskjet_690c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_690c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_692.ppd.gz b/ppd/hpcups/hp-deskjet_692.ppd.gz Binary files differindex 0b67971e3..9a6cbf92c 100644 --- a/ppd/hpcups/hp-deskjet_692.ppd.gz +++ b/ppd/hpcups/hp-deskjet_692.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_693.ppd.gz b/ppd/hpcups/hp-deskjet_693.ppd.gz Binary files differindex 9b8ce56c0..b5a08091c 100644 --- a/ppd/hpcups/hp-deskjet_693.ppd.gz +++ b/ppd/hpcups/hp-deskjet_693.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_694.ppd.gz b/ppd/hpcups/hp-deskjet_694.ppd.gz Binary files differindex 1dab151e4..4c2fb5bd6 100644 --- a/ppd/hpcups/hp-deskjet_694.ppd.gz +++ b/ppd/hpcups/hp-deskjet_694.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6940_series.ppd.gz b/ppd/hpcups/hp-deskjet_6940_series.ppd.gz Binary files differindex ad88e7388..e31024ca0 100644 --- a/ppd/hpcups/hp-deskjet_6940_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6940_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_695.ppd.gz b/ppd/hpcups/hp-deskjet_695.ppd.gz Binary files differindex 664d81057..7e0570ee2 100644 --- a/ppd/hpcups/hp-deskjet_695.ppd.gz +++ b/ppd/hpcups/hp-deskjet_695.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_697.ppd.gz b/ppd/hpcups/hp-deskjet_697.ppd.gz Binary files differindex 733f3f251..a733036cb 100644 --- a/ppd/hpcups/hp-deskjet_697.ppd.gz +++ b/ppd/hpcups/hp-deskjet_697.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_6980_series.ppd.gz b/ppd/hpcups/hp-deskjet_6980_series.ppd.gz Binary files differindex c6232687f..f8f5ed382 100644 --- a/ppd/hpcups/hp-deskjet_6980_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_6980_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_810c.ppd.gz b/ppd/hpcups/hp-deskjet_810c.ppd.gz Binary files differindex a2cd61815..b99261ef0 100644 --- a/ppd/hpcups/hp-deskjet_810c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_810c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_812c.ppd.gz b/ppd/hpcups/hp-deskjet_812c.ppd.gz Binary files differindex 8ef3f8b31..cb5d71f77 100644 --- a/ppd/hpcups/hp-deskjet_812c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_812c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_815c.ppd.gz b/ppd/hpcups/hp-deskjet_815c.ppd.gz Binary files differindex 20f9eedbb..e2bb25660 100644 --- a/ppd/hpcups/hp-deskjet_815c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_815c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_816c.ppd.gz b/ppd/hpcups/hp-deskjet_816c.ppd.gz Binary files differindex 6fb808adc..4195ecb9d 100644 --- a/ppd/hpcups/hp-deskjet_816c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_816c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_825c.ppd.gz b/ppd/hpcups/hp-deskjet_825c.ppd.gz Binary files differindex 7ecc7143a..5d10781c0 100644 --- a/ppd/hpcups/hp-deskjet_825c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_825c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_830c.ppd.gz b/ppd/hpcups/hp-deskjet_830c.ppd.gz Binary files differindex deadfe227..c8299ce11 100644 --- a/ppd/hpcups/hp-deskjet_830c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_830c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_832c.ppd.gz b/ppd/hpcups/hp-deskjet_832c.ppd.gz Binary files differindex dd1e8d7dc..0ed880bc7 100644 --- a/ppd/hpcups/hp-deskjet_832c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_832c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_840c.ppd.gz b/ppd/hpcups/hp-deskjet_840c.ppd.gz Binary files differindex 67030206a..f1eceac32 100644 --- a/ppd/hpcups/hp-deskjet_840c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_840c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_841c.ppd.gz b/ppd/hpcups/hp-deskjet_841c.ppd.gz Binary files differindex 013da506a..3fea26707 100644 --- a/ppd/hpcups/hp-deskjet_841c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_841c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_842c.ppd.gz b/ppd/hpcups/hp-deskjet_842c.ppd.gz Binary files differindex 25429db48..8e76abbb1 100644 --- a/ppd/hpcups/hp-deskjet_842c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_842c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_843c.ppd.gz b/ppd/hpcups/hp-deskjet_843c.ppd.gz Binary files differindex a2bcfae01..62ea3bbea 100644 --- a/ppd/hpcups/hp-deskjet_843c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_843c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_845c.ppd.gz b/ppd/hpcups/hp-deskjet_845c.ppd.gz Binary files differindex 1216faf42..034df271b 100644 --- a/ppd/hpcups/hp-deskjet_845c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_845c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_850c.ppd.gz b/ppd/hpcups/hp-deskjet_850c.ppd.gz Binary files differindex dd37ccbc0..2711a26d2 100644 --- a/ppd/hpcups/hp-deskjet_850c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_850c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_855c.ppd.gz b/ppd/hpcups/hp-deskjet_855c.ppd.gz Binary files differindex 33af37ceb..c84141af4 100644 --- a/ppd/hpcups/hp-deskjet_855c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_855c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_870c.ppd.gz b/ppd/hpcups/hp-deskjet_870c.ppd.gz Binary files differindex 7e282b26a..3defb38e1 100644 --- a/ppd/hpcups/hp-deskjet_870c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_870c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_880c.ppd.gz b/ppd/hpcups/hp-deskjet_880c.ppd.gz Binary files differindex 1ea7ffc3d..31a5de743 100644 --- a/ppd/hpcups/hp-deskjet_880c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_880c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_882c.ppd.gz b/ppd/hpcups/hp-deskjet_882c.ppd.gz Binary files differindex 93b639240..e993cd38c 100644 --- a/ppd/hpcups/hp-deskjet_882c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_882c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_890c.ppd.gz b/ppd/hpcups/hp-deskjet_890c.ppd.gz Binary files differindex c08e26120..9294bf16c 100644 --- a/ppd/hpcups/hp-deskjet_890c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_890c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_895c.ppd.gz b/ppd/hpcups/hp-deskjet_895c.ppd.gz Binary files differindex 81662df40..8d9ea435b 100644 --- a/ppd/hpcups/hp-deskjet_895c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_895c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_916c.ppd.gz b/ppd/hpcups/hp-deskjet_916c.ppd.gz Binary files differindex 0f34c2f1d..a02f41a1d 100644 --- a/ppd/hpcups/hp-deskjet_916c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_916c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_920c.ppd.gz b/ppd/hpcups/hp-deskjet_920c.ppd.gz Binary files differindex 529abf3d1..286f00522 100644 --- a/ppd/hpcups/hp-deskjet_920c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_920c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_9300.ppd.gz b/ppd/hpcups/hp-deskjet_9300.ppd.gz Binary files differindex 6c931de0f..70ada7bdf 100644 --- a/ppd/hpcups/hp-deskjet_9300.ppd.gz +++ b/ppd/hpcups/hp-deskjet_9300.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_930c.ppd.gz b/ppd/hpcups/hp-deskjet_930c.ppd.gz Binary files differindex 726722e33..a2c102f64 100644 --- a/ppd/hpcups/hp-deskjet_930c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_930c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_932c.ppd.gz b/ppd/hpcups/hp-deskjet_932c.ppd.gz Binary files differindex 19f95e087..28952b7e6 100644 --- a/ppd/hpcups/hp-deskjet_932c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_932c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_933c.ppd.gz b/ppd/hpcups/hp-deskjet_933c.ppd.gz Binary files differindex 9534edbcb..81a52af08 100644 --- a/ppd/hpcups/hp-deskjet_933c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_933c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_934c.ppd.gz b/ppd/hpcups/hp-deskjet_934c.ppd.gz Binary files differindex f8b0f0360..2ba62ae9a 100644 --- a/ppd/hpcups/hp-deskjet_934c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_934c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_935c.ppd.gz b/ppd/hpcups/hp-deskjet_935c.ppd.gz Binary files differindex 5eaf08b90..47f0ba61c 100644 --- a/ppd/hpcups/hp-deskjet_935c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_935c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_940c.ppd.gz b/ppd/hpcups/hp-deskjet_940c.ppd.gz Binary files differindex 5c96d8a95..30826dd6a 100644 --- a/ppd/hpcups/hp-deskjet_940c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_940c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_948c.ppd.gz b/ppd/hpcups/hp-deskjet_948c.ppd.gz Binary files differindex f80dc8e2b..59eb32775 100644 --- a/ppd/hpcups/hp-deskjet_948c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_948c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_950c.ppd.gz b/ppd/hpcups/hp-deskjet_950c.ppd.gz Binary files differindex ad4b397ef..792e4e3ae 100644 --- a/ppd/hpcups/hp-deskjet_950c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_950c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_952c.ppd.gz b/ppd/hpcups/hp-deskjet_952c.ppd.gz Binary files differindex 8eccd90d7..4919feb72 100644 --- a/ppd/hpcups/hp-deskjet_952c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_952c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_955c.ppd.gz b/ppd/hpcups/hp-deskjet_955c.ppd.gz Binary files differindex 0365ac657..d832272ee 100644 --- a/ppd/hpcups/hp-deskjet_955c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_955c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_957c.ppd.gz b/ppd/hpcups/hp-deskjet_957c.ppd.gz Binary files differindex 3c22aaadd..378294d49 100644 --- a/ppd/hpcups/hp-deskjet_957c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_957c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_959c.ppd.gz b/ppd/hpcups/hp-deskjet_959c.ppd.gz Binary files differindex 02b13c68f..53b1f9a6c 100644 --- a/ppd/hpcups/hp-deskjet_959c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_959c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_9600.ppd.gz b/ppd/hpcups/hp-deskjet_9600.ppd.gz Binary files differindex ad5062f62..e798e3776 100644 --- a/ppd/hpcups/hp-deskjet_9600.ppd.gz +++ b/ppd/hpcups/hp-deskjet_9600.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_960c.ppd.gz b/ppd/hpcups/hp-deskjet_960c.ppd.gz Binary files differindex 3268f196b..80967a5cc 100644 --- a/ppd/hpcups/hp-deskjet_960c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_960c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_970c.ppd.gz b/ppd/hpcups/hp-deskjet_970c.ppd.gz Binary files differindex 3701fe630..32f146f42 100644 --- a/ppd/hpcups/hp-deskjet_970c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_970c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_975c.ppd.gz b/ppd/hpcups/hp-deskjet_975c.ppd.gz Binary files differindex f07704aed..ebf9f35fb 100644 --- a/ppd/hpcups/hp-deskjet_975c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_975c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_9800.ppd.gz b/ppd/hpcups/hp-deskjet_9800.ppd.gz Binary files differindex c37c4344a..1a1fd83f5 100644 --- a/ppd/hpcups/hp-deskjet_9800.ppd.gz +++ b/ppd/hpcups/hp-deskjet_9800.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_980c.ppd.gz b/ppd/hpcups/hp-deskjet_980c.ppd.gz Binary files differindex cc849c2fd..8b53c3b34 100644 --- a/ppd/hpcups/hp-deskjet_980c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_980c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_990c.ppd.gz b/ppd/hpcups/hp-deskjet_990c.ppd.gz Binary files differindex 027d464e9..3eaa82174 100644 --- a/ppd/hpcups/hp-deskjet_990c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_990c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_995c.ppd.gz b/ppd/hpcups/hp-deskjet_995c.ppd.gz Binary files differindex e4ad8edd6..117331304 100644 --- a/ppd/hpcups/hp-deskjet_995c.ppd.gz +++ b/ppd/hpcups/hp-deskjet_995c.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d1300_series.ppd.gz b/ppd/hpcups/hp-deskjet_d1300_series.ppd.gz Binary files differindex 43dc52caa..41a547234 100644 --- a/ppd/hpcups/hp-deskjet_d1300_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d1300_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d1400_series.ppd.gz b/ppd/hpcups/hp-deskjet_d1400_series.ppd.gz Binary files differindex 19276c67e..8139d8d3f 100644 --- a/ppd/hpcups/hp-deskjet_d1400_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d1400_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d1500_series.ppd.gz b/ppd/hpcups/hp-deskjet_d1500_series.ppd.gz Binary files differindex fa48c33c9..496c26c58 100644 --- a/ppd/hpcups/hp-deskjet_d1500_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d1500_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d1600_series.ppd.gz b/ppd/hpcups/hp-deskjet_d1600_series.ppd.gz Binary files differindex 64506a248..57e108d8b 100644 --- a/ppd/hpcups/hp-deskjet_d1600_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d1600_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d2300_series.ppd.gz b/ppd/hpcups/hp-deskjet_d2300_series.ppd.gz Binary files differindex fd0591810..60c197e5b 100644 --- a/ppd/hpcups/hp-deskjet_d2300_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d2300_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d2400_series.ppd.gz b/ppd/hpcups/hp-deskjet_d2400_series.ppd.gz Binary files differindex 43b9437c0..993251743 100644 --- a/ppd/hpcups/hp-deskjet_d2400_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d2400_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d2500_series.ppd.gz b/ppd/hpcups/hp-deskjet_d2500_series.ppd.gz Binary files differindex 7317d4f9e..c9ec661bb 100644 --- a/ppd/hpcups/hp-deskjet_d2500_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d2500_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d2600_series.ppd.gz b/ppd/hpcups/hp-deskjet_d2600_series.ppd.gz Binary files differindex ef7d3f979..e29b7dd15 100644 --- a/ppd/hpcups/hp-deskjet_d2600_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d2600_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d4100_series.ppd.gz b/ppd/hpcups/hp-deskjet_d4100_series.ppd.gz Binary files differindex 151fe578c..5c4402272 100644 --- a/ppd/hpcups/hp-deskjet_d4100_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d4100_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d4200_series.ppd.gz b/ppd/hpcups/hp-deskjet_d4200_series.ppd.gz Binary files differindex ed704462c..7911f5eda 100644 --- a/ppd/hpcups/hp-deskjet_d4200_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d4200_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d4300_series.ppd.gz b/ppd/hpcups/hp-deskjet_d4300_series.ppd.gz Binary files differindex b174e4f7c..521d9c255 100644 --- a/ppd/hpcups/hp-deskjet_d4300_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d4300_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d5500_series.ppd.gz b/ppd/hpcups/hp-deskjet_d5500_series.ppd.gz Binary files differindex bebf37a42..49eddb46a 100644 --- a/ppd/hpcups/hp-deskjet_d5500_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d5500_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_d730.ppd.gz b/ppd/hpcups/hp-deskjet_d730.ppd.gz Binary files differindex 8a97ef053..42db58886 100644 --- a/ppd/hpcups/hp-deskjet_d730.ppd.gz +++ b/ppd/hpcups/hp-deskjet_d730.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f2100_series.ppd.gz b/ppd/hpcups/hp-deskjet_f2100_series.ppd.gz Binary files differindex a949e9cdd..88379d5d6 100644 --- a/ppd/hpcups/hp-deskjet_f2100_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f2100_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f2200_series.ppd.gz b/ppd/hpcups/hp-deskjet_f2200_series.ppd.gz Binary files differindex 974fdc0c4..117bc4f4c 100644 --- a/ppd/hpcups/hp-deskjet_f2200_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f2200_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f2400_series.ppd.gz b/ppd/hpcups/hp-deskjet_f2400_series.ppd.gz Binary files differindex 935388ed2..d25346b0e 100644 --- a/ppd/hpcups/hp-deskjet_f2400_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f2400_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f300_series.ppd.gz b/ppd/hpcups/hp-deskjet_f300_series.ppd.gz Binary files differindex d83c91779..7618641c1 100644 --- a/ppd/hpcups/hp-deskjet_f300_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f300_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f4100_series.ppd.gz b/ppd/hpcups/hp-deskjet_f4100_series.ppd.gz Binary files differindex ec963b586..ac0023b36 100644 --- a/ppd/hpcups/hp-deskjet_f4100_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f4100_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f4200_series.ppd.gz b/ppd/hpcups/hp-deskjet_f4200_series.ppd.gz Binary files differindex 40146a353..dc9282c39 100644 --- a/ppd/hpcups/hp-deskjet_f4200_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f4200_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f4210_series.ppd.gz b/ppd/hpcups/hp-deskjet_f4210_series.ppd.gz Binary files differindex 7d982728b..b6b6b5909 100644 --- a/ppd/hpcups/hp-deskjet_f4210_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f4210_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f4213_series.ppd.gz b/ppd/hpcups/hp-deskjet_f4213_series.ppd.gz Binary files differindex fe7a050e3..9d7bdb7ac 100644 --- a/ppd/hpcups/hp-deskjet_f4213_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f4213_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f4400_series.ppd.gz b/ppd/hpcups/hp-deskjet_f4400_series.ppd.gz Binary files differindex 3e4aedd5a..c53d4dc9b 100644 --- a/ppd/hpcups/hp-deskjet_f4400_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f4400_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f4500_series.ppd.gz b/ppd/hpcups/hp-deskjet_f4500_series.ppd.gz Binary files differindex b1398efae..990340686 100644 --- a/ppd/hpcups/hp-deskjet_f4500_series.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f4500_series.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_f735.ppd.gz b/ppd/hpcups/hp-deskjet_f735.ppd.gz Binary files differindex 23de79a45..c5bfa0be2 100644 --- a/ppd/hpcups/hp-deskjet_f735.ppd.gz +++ b/ppd/hpcups/hp-deskjet_f735.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_ink_adv_2010_k010.ppd.gz b/ppd/hpcups/hp-deskjet_ink_adv_2010_k010.ppd.gz Binary files differindex 46458c17a..3bbd53393 100644 --- a/ppd/hpcups/hp-deskjet_ink_adv_2010_k010.ppd.gz +++ b/ppd/hpcups/hp-deskjet_ink_adv_2010_k010.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_ink_adv_2060_k110.ppd.gz b/ppd/hpcups/hp-deskjet_ink_adv_2060_k110.ppd.gz Binary files differindex 97b6357ed..6910b88c8 100644 --- a/ppd/hpcups/hp-deskjet_ink_adv_2060_k110.ppd.gz +++ b/ppd/hpcups/hp-deskjet_ink_adv_2060_k110.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_ink_advant_k109a-z.ppd.gz b/ppd/hpcups/hp-deskjet_ink_advant_k109a-z.ppd.gz Binary files differindex d5fbdca00..e9b3953e8 100644 --- a/ppd/hpcups/hp-deskjet_ink_advant_k109a-z.ppd.gz +++ b/ppd/hpcups/hp-deskjet_ink_advant_k109a-z.ppd.gz diff --git a/ppd/hpcups/hp-deskjet_ink_advant_k209a-z.ppd.gz b/ppd/hpcups/hp-deskjet_ink_advant_k209a-z.ppd.gz Binary files differindex 639fbda8b..b71583723 100644 --- a/ppd/hpcups/hp-deskjet_ink_advant_k209a-z.ppd.gz +++ b/ppd/hpcups/hp-deskjet_ink_advant_k209a-z.ppd.gz diff --git a/ppd/hpcups/hp-dj350.ppd.gz b/ppd/hpcups/hp-dj350.ppd.gz Binary files differindex 62d5471f4..3dc2e5a1d 100644 --- a/ppd/hpcups/hp-dj350.ppd.gz +++ b/ppd/hpcups/hp-dj350.ppd.gz diff --git a/ppd/hpcups/hp-dj450.ppd.gz b/ppd/hpcups/hp-dj450.ppd.gz Binary files differindex adfa77032..9b161b0c4 100644 --- a/ppd/hpcups/hp-dj450.ppd.gz +++ b/ppd/hpcups/hp-dj450.ppd.gz diff --git a/ppd/hpcups/hp-envy_100_d410_series.ppd.gz b/ppd/hpcups/hp-envy_100_d410_series.ppd.gz Binary files differindex 5891523f8..16487966e 100644 --- a/ppd/hpcups/hp-envy_100_d410_series.ppd.gz +++ b/ppd/hpcups/hp-envy_100_d410_series.ppd.gz diff --git a/ppd/hpcups/hp-envy_110_series.ppd.gz b/ppd/hpcups/hp-envy_110_series.ppd.gz Binary files differindex a81de4f01..1185bdb7b 100644 --- a/ppd/hpcups/hp-envy_110_series.ppd.gz +++ b/ppd/hpcups/hp-envy_110_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1000.ppd.gz b/ppd/hpcups/hp-laserjet_1000.ppd.gz Binary files differindex 11ecaef6f..f2b78f558 100644 --- a/ppd/hpcups/hp-laserjet_1000.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1000.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1005_series.ppd.gz b/ppd/hpcups/hp-laserjet_1005_series.ppd.gz Binary files differindex 93141b8bc..962657aeb 100644 --- a/ppd/hpcups/hp-laserjet_1005_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1005_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1010.ppd.gz b/ppd/hpcups/hp-laserjet_1010.ppd.gz Binary files differindex d12ba58ac..96565f435 100644 --- a/ppd/hpcups/hp-laserjet_1010.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1010.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1012.ppd.gz b/ppd/hpcups/hp-laserjet_1012.ppd.gz Binary files differindex abd90e172..6b6797b84 100644 --- a/ppd/hpcups/hp-laserjet_1012.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1012.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1015.ppd.gz b/ppd/hpcups/hp-laserjet_1015.ppd.gz Binary files differindex aafaefc95..16d2104ab 100644 --- a/ppd/hpcups/hp-laserjet_1015.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1015.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1018.ppd.gz b/ppd/hpcups/hp-laserjet_1018.ppd.gz Binary files differindex f952b3e4b..406daf153 100644 --- a/ppd/hpcups/hp-laserjet_1018.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1018.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1020.ppd.gz b/ppd/hpcups/hp-laserjet_1020.ppd.gz Binary files differindex 48fcdf335..082bb7240 100644 --- a/ppd/hpcups/hp-laserjet_1020.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1020.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1022-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1022-pcl3.ppd.gz Binary files differindex a5e4bd6da..0ae51f9a4 100644 --- a/ppd/hpcups/hp-laserjet_1022-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1022-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1022-zjs.ppd.gz b/ppd/hpcups/hp-laserjet_1022-zjs.ppd.gz Binary files differindex 277f11ee0..d4dc3a9cc 100644 --- a/ppd/hpcups/hp-laserjet_1022-zjs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1022-zjs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1022n-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1022n-pcl3.ppd.gz Binary files differindex 8602d84f0..6c908bde5 100644 --- a/ppd/hpcups/hp-laserjet_1022n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1022n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1022n-zjs.ppd.gz b/ppd/hpcups/hp-laserjet_1022n-zjs.ppd.gz Binary files differindex f1bb66d2f..1df8afe4c 100644 --- a/ppd/hpcups/hp-laserjet_1022n-zjs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1022n-zjs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1022nw-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1022nw-pcl3.ppd.gz Binary files differindex fcb8e5b0b..b10524b4a 100644 --- a/ppd/hpcups/hp-laserjet_1022nw-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1022nw-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1022nw-zjs.ppd.gz b/ppd/hpcups/hp-laserjet_1022nw-zjs.ppd.gz Binary files differindex 0ed3e246b..1ed7a0bd0 100644 --- a/ppd/hpcups/hp-laserjet_1022nw-zjs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1022nw-zjs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1100.ppd.gz b/ppd/hpcups/hp-laserjet_1100.ppd.gz Binary files differindex 1eea2d303..235e67f1a 100644 --- a/ppd/hpcups/hp-laserjet_1100.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1100.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1100a.ppd.gz b/ppd/hpcups/hp-laserjet_1100a.ppd.gz Binary files differindex 3bbdcf0de..c348893de 100644 --- a/ppd/hpcups/hp-laserjet_1100a.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1100a.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1100xi.ppd.gz b/ppd/hpcups/hp-laserjet_1100xi.ppd.gz Binary files differindex 39ccffe32..ccc4a59a5 100644 --- a/ppd/hpcups/hp-laserjet_1100xi.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1100xi.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1150.ppd.gz b/ppd/hpcups/hp-laserjet_1150.ppd.gz Binary files differindex aba88d468..1d85235dc 100644 --- a/ppd/hpcups/hp-laserjet_1150.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1150.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1160.ppd.gz b/ppd/hpcups/hp-laserjet_1160.ppd.gz Binary files differindex 53e1dfdbc..719f3b51a 100644 --- a/ppd/hpcups/hp-laserjet_1160.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1160.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1160_series.ppd.gz b/ppd/hpcups/hp-laserjet_1160_series.ppd.gz Binary files differindex 93d986670..0ed55b1e2 100644 --- a/ppd/hpcups/hp-laserjet_1160_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1160_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1200-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1200-pcl3.ppd.gz Binary files differindex cfbdc1e76..2f60c1226 100644 --- a/ppd/hpcups/hp-laserjet_1200-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1200-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1200n.ppd.gz b/ppd/hpcups/hp-laserjet_1200n.ppd.gz Binary files differindex 73c753b8c..bdd04a916 100644 --- a/ppd/hpcups/hp-laserjet_1200n.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1200n.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1220-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1220-pcl3.ppd.gz Binary files differindex 052e93a5d..24d8dc10c 100644 --- a/ppd/hpcups/hp-laserjet_1220-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1220-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1220se.ppd.gz b/ppd/hpcups/hp-laserjet_1220se.ppd.gz Binary files differindex c692a355e..3d9e5de0d 100644 --- a/ppd/hpcups/hp-laserjet_1220se.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1220se.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1300-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1300-pcl3.ppd.gz Binary files differindex 97d463923..f16b59b39 100644 --- a/ppd/hpcups/hp-laserjet_1300-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1300-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1300n-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1300n-pcl3.ppd.gz Binary files differindex ca9495999..b019d671e 100644 --- a/ppd/hpcups/hp-laserjet_1300n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1300n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1300xi-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1300xi-pcl3.ppd.gz Binary files differindex d1b646730..98e857f24 100644 --- a/ppd/hpcups/hp-laserjet_1300xi-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1300xi-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1320.ppd.gz b/ppd/hpcups/hp-laserjet_1320.ppd.gz Binary files differindex 4eb30aaa7..009bd7c6a 100644 --- a/ppd/hpcups/hp-laserjet_1320.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1320.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1320_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_1320_series-pcl3.ppd.gz Binary files differindex 7d88b351b..da3d603eb 100644 --- a/ppd/hpcups/hp-laserjet_1320_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1320_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1320n.ppd.gz b/ppd/hpcups/hp-laserjet_1320n.ppd.gz Binary files differindex 65faf9d2d..0dd6bfdd9 100644 --- a/ppd/hpcups/hp-laserjet_1320n.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1320n.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1320nw.ppd.gz b/ppd/hpcups/hp-laserjet_1320nw.ppd.gz Binary files differindex 7bd803958..f54cad6db 100644 --- a/ppd/hpcups/hp-laserjet_1320nw.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1320nw.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_1320tn.ppd.gz b/ppd/hpcups/hp-laserjet_1320tn.ppd.gz Binary files differindex d04bc4e39..94570b2ce 100644 --- a/ppd/hpcups/hp-laserjet_1320tn.ppd.gz +++ b/ppd/hpcups/hp-laserjet_1320tn.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2100.ppd.gz b/ppd/hpcups/hp-laserjet_2100.ppd.gz Binary files differindex 04c2c74a8..6d41ed5be 100644 --- a/ppd/hpcups/hp-laserjet_2100.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2100.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2100_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_2100_series-pcl3.ppd.gz Binary files differindex 73e3404e3..be1d17781 100644 --- a/ppd/hpcups/hp-laserjet_2100_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2100_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2200-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_2200-pcl3.ppd.gz Binary files differindex d08a5897f..68b13772a 100644 --- a/ppd/hpcups/hp-laserjet_2200-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2200-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2200_series.ppd.gz b/ppd/hpcups/hp-laserjet_2200_series.ppd.gz Binary files differindex 74dee45d1..c16de9de1 100644 --- a/ppd/hpcups/hp-laserjet_2200_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2200_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2300-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_2300-pcl3.ppd.gz Binary files differindex 22171c238..2ec12bbb7 100644 --- a/ppd/hpcups/hp-laserjet_2300-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2300-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2300_series.ppd.gz b/ppd/hpcups/hp-laserjet_2300_series.ppd.gz Binary files differindex b9a2a53dc..8bb0c7391 100644 --- a/ppd/hpcups/hp-laserjet_2300_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2300_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2410-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_2410-pcl3.ppd.gz Binary files differindex 72accd313..85ed1ed90 100644 --- a/ppd/hpcups/hp-laserjet_2410-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2410-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2420-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_2420-pcl3.ppd.gz Binary files differindex cd69d3c1e..76f224107 100644 --- a/ppd/hpcups/hp-laserjet_2420-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2420-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_2430-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_2430-pcl3.ppd.gz Binary files differindex 40d3b10c5..1ff9318fb 100644 --- a/ppd/hpcups/hp-laserjet_2430-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_2430-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3015-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3015-pcl3.ppd.gz Binary files differindex dc091d9c4..bd09eb277 100644 --- a/ppd/hpcups/hp-laserjet_3015-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3015-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3020-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3020-pcl3.ppd.gz Binary files differindex 4699696dd..faa07a8dc 100644 --- a/ppd/hpcups/hp-laserjet_3020-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3020-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3030-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3030-pcl3.ppd.gz Binary files differindex 6ecfb6963..574e63c8d 100644 --- a/ppd/hpcups/hp-laserjet_3030-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3030-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3050-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3050-pcl3.ppd.gz Binary files differindex 9271e0e45..75044b26b 100644 --- a/ppd/hpcups/hp-laserjet_3050-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3050-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3052-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3052-pcl3.ppd.gz Binary files differindex fed4b18cc..1df4502e2 100644 --- a/ppd/hpcups/hp-laserjet_3052-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3052-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3055.ppd.gz b/ppd/hpcups/hp-laserjet_3055.ppd.gz Binary files differindex 3879b8f3a..f11b91799 100644 --- a/ppd/hpcups/hp-laserjet_3055.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3055.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3100.ppd.gz b/ppd/hpcups/hp-laserjet_3100.ppd.gz Binary files differindex e56370bb7..befce625c 100644 --- a/ppd/hpcups/hp-laserjet_3100.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3100.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3150.ppd.gz b/ppd/hpcups/hp-laserjet_3150.ppd.gz Binary files differindex 0ebd58fbb..f50efbad0 100644 --- a/ppd/hpcups/hp-laserjet_3150.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3150.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3200.ppd.gz b/ppd/hpcups/hp-laserjet_3200.ppd.gz Binary files differindex 03c9b3509..b668eebc9 100644 --- a/ppd/hpcups/hp-laserjet_3200.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3200.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3200m-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3200m-pcl3.ppd.gz Binary files differindex 3c2638f5f..339ff2348 100644 --- a/ppd/hpcups/hp-laserjet_3200m-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3200m-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3200se.ppd.gz b/ppd/hpcups/hp-laserjet_3200se.ppd.gz Binary files differindex 01376d292..32c3ac9e7 100644 --- a/ppd/hpcups/hp-laserjet_3200se.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3200se.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3300_3310_3320-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3300_3310_3320-pcl3.ppd.gz Binary files differindex d7718fa92..6b9ae433d 100644 --- a/ppd/hpcups/hp-laserjet_3300_3310_3320-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3300_3310_3320-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3330.ppd.gz b/ppd/hpcups/hp-laserjet_3330.ppd.gz Binary files differindex d3eec9e04..e8eea1182 100644 --- a/ppd/hpcups/hp-laserjet_3330.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3330.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3380-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3380-pcl3.ppd.gz Binary files differindex 4fe775c6d..8addb1c23 100644 --- a/ppd/hpcups/hp-laserjet_3380-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3380-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3390-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_3390-pcl3.ppd.gz Binary files differindex 3b7cd9baa..b3a273888 100644 --- a/ppd/hpcups/hp-laserjet_3390-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3390-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_3392.ppd.gz b/ppd/hpcups/hp-laserjet_3392.ppd.gz Binary files differindex 57af4b0e2..c9bdd985c 100644 --- a/ppd/hpcups/hp-laserjet_3392.ppd.gz +++ b/ppd/hpcups/hp-laserjet_3392.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4000_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4000_series-pcl3.ppd.gz Binary files differindex 451b22faf..8cead4cf3 100644 --- a/ppd/hpcups/hp-laserjet_4000_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4000_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4050_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4050_series-pcl3.ppd.gz Binary files differindex 6ac16dca1..0a64f2015 100644 --- a/ppd/hpcups/hp-laserjet_4050_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4050_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4100_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4100_mfp-pcl3.ppd.gz Binary files differindex 188c38211..968dac54d 100644 --- a/ppd/hpcups/hp-laserjet_4100_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4100_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4100_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4100_series-pcl3.ppd.gz Binary files differindex 6b4b1b10d..c9b779f91 100644 --- a/ppd/hpcups/hp-laserjet_4100_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4100_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4150_series.ppd.gz b/ppd/hpcups/hp-laserjet_4150_series.ppd.gz Binary files differindex 6b6eeecb6..80836d6e5 100644 --- a/ppd/hpcups/hp-laserjet_4150_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4150_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4200-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4200-pcl3.ppd.gz Binary files differindex a6b49564e..11bbd619d 100644 --- a/ppd/hpcups/hp-laserjet_4200-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4200-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4240-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4240-pcl3.ppd.gz Binary files differindex 3ea44f682..990f16f7e 100644 --- a/ppd/hpcups/hp-laserjet_4240-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4240-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4250-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4250-pcl3.ppd.gz Binary files differindex 85cefa128..a5eac50d4 100644 --- a/ppd/hpcups/hp-laserjet_4250-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4250-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4300-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4300-pcl3.ppd.gz Binary files differindex 754dcf3d6..c81feba04 100644 --- a/ppd/hpcups/hp-laserjet_4300-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4300-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4345_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4345_mfp-pcl3.ppd.gz Binary files differindex f53acb833..da6aeaeb3 100644 --- a/ppd/hpcups/hp-laserjet_4345_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4345_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4350-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4350-pcl3.ppd.gz Binary files differindex 109c5cc8d..9692f45be 100644 --- a/ppd/hpcups/hp-laserjet_4350-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4350-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4_plus-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4_plus-pcl3.ppd.gz Binary files differindex f6091fcae..5b161f779 100644 --- a/ppd/hpcups/hp-laserjet_4_plus-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4_plus-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4l.ppd.gz b/ppd/hpcups/hp-laserjet_4l.ppd.gz Binary files differindex a1531ae3b..46d6a934f 100644 --- a/ppd/hpcups/hp-laserjet_4l.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4l.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4ml.ppd.gz b/ppd/hpcups/hp-laserjet_4ml.ppd.gz Binary files differindex 48236a93b..ad254b3e2 100644 --- a/ppd/hpcups/hp-laserjet_4ml.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4ml.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4mp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4mp-pcl3.ppd.gz Binary files differindex d020843e0..0d28a51de 100644 --- a/ppd/hpcups/hp-laserjet_4mp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4mp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4si-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4si-pcl3.ppd.gz Binary files differindex 61c0a2c41..494e2bbf4 100644 --- a/ppd/hpcups/hp-laserjet_4si-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4si-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_4v-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_4v-pcl3.ppd.gz Binary files differindex 2d4474033..90639472f 100644 --- a/ppd/hpcups/hp-laserjet_4v-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_4v-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5000.ppd.gz b/ppd/hpcups/hp-laserjet_5000.ppd.gz Binary files differindex 0536cda78..981848e9a 100644 --- a/ppd/hpcups/hp-laserjet_5000.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5000.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5000_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5000_series-pcl3.ppd.gz Binary files differindex d84c2881a..30e022b3e 100644 --- a/ppd/hpcups/hp-laserjet_5000_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5000_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5100_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5100_series-pcl3.ppd.gz Binary files differindex 01817f5ec..020220189 100644 --- a/ppd/hpcups/hp-laserjet_5100_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5100_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5200-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5200-pcl3.ppd.gz Binary files differindex 1f7454de2..b2e1970a2 100644 --- a/ppd/hpcups/hp-laserjet_5200-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5200-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5200l-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5200l-pcl3.ppd.gz Binary files differindex 3556be612..f23db4c14 100644 --- a/ppd/hpcups/hp-laserjet_5200l-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5200l-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5200lx.ppd.gz b/ppd/hpcups/hp-laserjet_5200lx.ppd.gz Binary files differindex 1ee1df8ab..fa3e0e3a3 100644 --- a/ppd/hpcups/hp-laserjet_5200lx.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5200lx.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5l.ppd.gz b/ppd/hpcups/hp-laserjet_5l.ppd.gz Binary files differindex 5fb6188df..161ef7f7f 100644 --- a/ppd/hpcups/hp-laserjet_5l.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5l.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5mp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5mp-pcl3.ppd.gz Binary files differindex 02f3bd2c6..957b65d5e 100644 --- a/ppd/hpcups/hp-laserjet_5mp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5mp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5p.ppd.gz b/ppd/hpcups/hp-laserjet_5p.ppd.gz Binary files differindex ba19b6adb..25636ba3b 100644 --- a/ppd/hpcups/hp-laserjet_5p.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5p.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5si-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5si-pcl3.ppd.gz Binary files differindex 31b6abf5d..495db979d 100644 --- a/ppd/hpcups/hp-laserjet_5si-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5si-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_5si_mopier-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_5si_mopier-pcl3.ppd.gz Binary files differindex a21c239a6..e449630ee 100644 --- a/ppd/hpcups/hp-laserjet_5si_mopier-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_5si_mopier-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_6l.ppd.gz b/ppd/hpcups/hp-laserjet_6l.ppd.gz Binary files differindex 8e6cd307c..36a501940 100644 --- a/ppd/hpcups/hp-laserjet_6l.ppd.gz +++ b/ppd/hpcups/hp-laserjet_6l.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_6mp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_6mp-pcl3.ppd.gz Binary files differindex 7a2371d86..fafb6095b 100644 --- a/ppd/hpcups/hp-laserjet_6mp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_6mp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_6p.ppd.gz b/ppd/hpcups/hp-laserjet_6p.ppd.gz Binary files differindex 64bcf8978..d52279785 100644 --- a/ppd/hpcups/hp-laserjet_6p.ppd.gz +++ b/ppd/hpcups/hp-laserjet_6p.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_8000.ppd.gz b/ppd/hpcups/hp-laserjet_8000.ppd.gz Binary files differindex 1e65b0a54..878e62a77 100644 --- a/ppd/hpcups/hp-laserjet_8000.ppd.gz +++ b/ppd/hpcups/hp-laserjet_8000.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_8000_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_8000_series-pcl3.ppd.gz Binary files differindex 1521c7f9b..80cbbe9ae 100644 --- a/ppd/hpcups/hp-laserjet_8000_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_8000_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_8100_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_8100_mfp.ppd.gz Binary files differindex 878939d9a..635fb9520 100644 --- a/ppd/hpcups/hp-laserjet_8100_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_8100_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_8100_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_8100_series-pcl3.ppd.gz Binary files differindex 8a86a15f0..6825c2d05 100644 --- a/ppd/hpcups/hp-laserjet_8100_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_8100_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_8150_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_8150_mfp.ppd.gz Binary files differindex 064ada126..72fe47743 100644 --- a/ppd/hpcups/hp-laserjet_8150_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_8150_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_8150_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_8150_series-pcl3.ppd.gz Binary files differindex 7296339f5..a3818c215 100644 --- a/ppd/hpcups/hp-laserjet_8150_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_8150_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9000_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9000_mfp-pcl3.ppd.gz Binary files differindex 5bc215a62..4dd5e6e41 100644 --- a/ppd/hpcups/hp-laserjet_9000_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9000_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9000_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9000_series-pcl3.ppd.gz Binary files differindex 8cfe7df44..00604b0ca 100644 --- a/ppd/hpcups/hp-laserjet_9000_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9000_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9040-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9040-pcl3.ppd.gz Binary files differindex 626491413..7ec213fcc 100644 --- a/ppd/hpcups/hp-laserjet_9040-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9040-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9040_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9040_mfp-pcl3.ppd.gz Binary files differindex e3501fc77..07b86c248 100644 --- a/ppd/hpcups/hp-laserjet_9040_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9040_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9050-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9050-pcl3.ppd.gz Binary files differindex 6840b9f57..3feb6c263 100644 --- a/ppd/hpcups/hp-laserjet_9050-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9050-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9050_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9050_mfp-pcl3.ppd.gz Binary files differindex 43d7036a6..1239716ba 100644 --- a/ppd/hpcups/hp-laserjet_9050_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9050_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9055mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9055mfp-pcl3.ppd.gz Binary files differindex 7efe0c188..1b11e76f5 100644 --- a/ppd/hpcups/hp-laserjet_9055mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9055mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_9065mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_9065mfp-pcl3.ppd.gz Binary files differindex 32e4214b5..293049d16 100644 --- a/ppd/hpcups/hp-laserjet_9065mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_9065mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1411fn-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1411fn-pcl3.ppd.gz Binary files differindex 51881bcbc..77690e7d3 100644 --- a/ppd/hpcups/hp-laserjet_cm1411fn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1411fn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1412fn-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1412fn-pcl3.ppd.gz Binary files differindex 4cec78fce..38ea6fc58 100644 --- a/ppd/hpcups/hp-laserjet_cm1412fn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1412fn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1413fn-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1413fn-pcl3.ppd.gz Binary files differindex de286b46c..38e1d3af4 100644 --- a/ppd/hpcups/hp-laserjet_cm1413fn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1413fn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1415fn-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1415fn-pcl3.ppd.gz Binary files differindex 66c8c0848..038378325 100644 --- a/ppd/hpcups/hp-laserjet_cm1415fn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1415fn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1415fnw-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1415fnw-pcl3.ppd.gz Binary files differindex 4540f2d5f..eb974eed4 100644 --- a/ppd/hpcups/hp-laserjet_cm1415fnw-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1415fnw-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz Binary files differindex 337bbf7a4..9e8ce7a9b 100644 --- a/ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1416fnw-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz Binary files differindex da06dc624..6509491d3 100644 --- a/ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1417fnw-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz Binary files differindex f1d05eaeb..71dfe74a8 100644 --- a/ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cm1418fnw-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cp1021.ppd.gz b/ppd/hpcups/hp-laserjet_cp1021.ppd.gz Binary files differdeleted file mode 100644 index f9e6a00bc..000000000 --- a/ppd/hpcups/hp-laserjet_cp1021.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-laserjet_cp1022.ppd.gz b/ppd/hpcups/hp-laserjet_cp1022.ppd.gz Binary files differdeleted file mode 100644 index 085e42efa..000000000 --- a/ppd/hpcups/hp-laserjet_cp1022.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-laserjet_cp1023.ppd.gz b/ppd/hpcups/hp-laserjet_cp1023.ppd.gz Binary files differdeleted file mode 100644 index 087641e5c..000000000 --- a/ppd/hpcups/hp-laserjet_cp1023.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-laserjet_cp1025.ppd.gz b/ppd/hpcups/hp-laserjet_cp1025.ppd.gz Binary files differindex 9122dd418..1aaacaafd 100644 --- a/ppd/hpcups/hp-laserjet_cp1025.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cp1025.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz b/ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz Binary files differindex 4c129d844..0d81c00f6 100644 --- a/ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz +++ b/ppd/hpcups/hp-laserjet_cp1025nw.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cp1027nw.ppd.gz b/ppd/hpcups/hp-laserjet_cp1027nw.ppd.gz Binary files differdeleted file mode 100644 index 3fd8d05c0..000000000 --- a/ppd/hpcups/hp-laserjet_cp1027nw.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-laserjet_cp1028nw.ppd.gz b/ppd/hpcups/hp-laserjet_cp1028nw.ppd.gz Binary files differdeleted file mode 100644 index 32d2a1323..000000000 --- a/ppd/hpcups/hp-laserjet_cp1028nw.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-laserjet_cp_1025.ppd.gz b/ppd/hpcups/hp-laserjet_cp_1025.ppd.gz Binary files differnew file mode 100644 index 000000000..003fab7c0 --- /dev/null +++ b/ppd/hpcups/hp-laserjet_cp_1025.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_cp_1025nw.ppd.gz b/ppd/hpcups/hp-laserjet_cp_1025nw.ppd.gz Binary files differnew file mode 100644 index 000000000..645164e02 --- /dev/null +++ b/ppd/hpcups/hp-laserjet_cp_1025nw.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1005.ppd.gz b/ppd/hpcups/hp-laserjet_m1005.ppd.gz Binary files differindex e95fae6c3..3c7f123e6 100644 --- a/ppd/hpcups/hp-laserjet_m1005.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1005.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz Binary files differindex 91dcc165d..452560e4d 100644 --- a/ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1120_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz Binary files differindex f9f1e08e5..ce9ad951f 100644 --- a/ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1120n_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1319f_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_m1319f_mfp.ppd.gz Binary files differindex 5fecfd64c..8a523b5db 100644 --- a/ppd/hpcups/hp-laserjet_m1319f_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1319f_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1522nf_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m1522nf_mfp-pcl3.ppd.gz Binary files differindex de75c5052..54e72b1ad 100644 --- a/ppd/hpcups/hp-laserjet_m1522nf_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1522nf_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1536dnf_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m1536dnf_mfp-pcl3.ppd.gz Binary files differindex 9453865f5..37f9c3187 100644 --- a/ppd/hpcups/hp-laserjet_m1536dnf_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1536dnf_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1537dnf_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m1537dnf_mfp-pcl3.ppd.gz Binary files differindex 826428338..e51fba9d1 100644 --- a/ppd/hpcups/hp-laserjet_m1537dnf_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1537dnf_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1538dnf_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m1538dnf_mfp-pcl3.ppd.gz Binary files differindex 4255a4857..d80136973 100644 --- a/ppd/hpcups/hp-laserjet_m1538dnf_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1538dnf_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m1539dnf_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m1539dnf_mfp-pcl3.ppd.gz Binary files differindex 6e5d5b2c5..908b3e4e6 100644 --- a/ppd/hpcups/hp-laserjet_m1539dnf_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m1539dnf_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m2727_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m2727_mfp-pcl3.ppd.gz Binary files differindex 68b638ef5..9d87291d7 100644 --- a/ppd/hpcups/hp-laserjet_m2727_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m2727_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m3027_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m3027_mfp-pcl3.ppd.gz Binary files differindex 3231e0688..3b7b9c6b6 100644 --- a/ppd/hpcups/hp-laserjet_m3027_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m3027_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m3035_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m3035_mfp-pcl3.ppd.gz Binary files differindex 33c0e2d46..66c60fc40 100644 --- a/ppd/hpcups/hp-laserjet_m3035_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m3035_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m4345_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m4345_mfp-pcl3.ppd.gz Binary files differindex 2b664bb25..bc4e5ac9f 100644 --- a/ppd/hpcups/hp-laserjet_m4345_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m4345_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m4349_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m4349_mfp-pcl3.ppd.gz Binary files differindex 00f4ed410..91c427bd7 100644 --- a/ppd/hpcups/hp-laserjet_m4349_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m4349_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m5025_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m5025_mfp-pcl3.ppd.gz Binary files differindex 78920a616..f1dfadb40 100644 --- a/ppd/hpcups/hp-laserjet_m5025_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m5025_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m5035_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m5035_mfp-pcl3.ppd.gz Binary files differindex c0b07fddf..88e6710ef 100644 --- a/ppd/hpcups/hp-laserjet_m5035_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m5035_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m5039_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m5039_mfp-pcl3.ppd.gz Binary files differindex d8e655977..8a6dafb27 100644 --- a/ppd/hpcups/hp-laserjet_m5039_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m5039_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m9040_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m9040_mfp-pcl3.ppd.gz Binary files differindex 7f306c953..0f7f4fda1 100644 --- a/ppd/hpcups/hp-laserjet_m9040_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m9040_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m9050_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m9050_mfp-pcl3.ppd.gz Binary files differindex b20bd3d54..e19b42a0c 100644 --- a/ppd/hpcups/hp-laserjet_m9050_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m9050_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_m9059_mfp-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_m9059_mfp-pcl3.ppd.gz Binary files differindex 324453c0a..f47efcf38 100644 --- a/ppd/hpcups/hp-laserjet_m9059_mfp-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_m9059_mfp-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1005.ppd.gz b/ppd/hpcups/hp-laserjet_p1005.ppd.gz Binary files differindex 9223fe57a..dece84888 100644 --- a/ppd/hpcups/hp-laserjet_p1005.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1005.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1006.ppd.gz b/ppd/hpcups/hp-laserjet_p1006.ppd.gz Binary files differindex b41a39a4c..f7afa8b65 100644 --- a/ppd/hpcups/hp-laserjet_p1006.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1006.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1007.ppd.gz b/ppd/hpcups/hp-laserjet_p1007.ppd.gz Binary files differindex 9596b727e..5471d1258 100644 --- a/ppd/hpcups/hp-laserjet_p1007.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1007.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1008.ppd.gz b/ppd/hpcups/hp-laserjet_p1008.ppd.gz Binary files differindex f058f129f..43e6f78cc 100644 --- a/ppd/hpcups/hp-laserjet_p1008.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1008.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1009.ppd.gz b/ppd/hpcups/hp-laserjet_p1009.ppd.gz Binary files differindex 607f5bbbd..b422fe718 100644 --- a/ppd/hpcups/hp-laserjet_p1009.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1009.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1505.ppd.gz b/ppd/hpcups/hp-laserjet_p1505.ppd.gz Binary files differindex 229f46b2f..deaf69daf 100644 --- a/ppd/hpcups/hp-laserjet_p1505.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1505.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1505n-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p1505n-pcl3.ppd.gz Binary files differindex 4122f2ec1..2eab20582 100644 --- a/ppd/hpcups/hp-laserjet_p1505n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1505n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p1505n-zxs.ppd.gz b/ppd/hpcups/hp-laserjet_p1505n-zxs.ppd.gz Binary files differindex 6a6b76626..5dded8899 100644 --- a/ppd/hpcups/hp-laserjet_p1505n-zxs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p1505n-zxs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2014-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2014-pcl3.ppd.gz Binary files differindex d4a767164..4d919551a 100644 --- a/ppd/hpcups/hp-laserjet_p2014-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2014-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2014-zxs.ppd.gz b/ppd/hpcups/hp-laserjet_p2014-zxs.ppd.gz Binary files differindex 65d61d153..519f5c289 100644 --- a/ppd/hpcups/hp-laserjet_p2014-zxs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2014-zxs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2014n-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2014n-pcl3.ppd.gz Binary files differindex 8ebf0d35e..4aad42817 100644 --- a/ppd/hpcups/hp-laserjet_p2014n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2014n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2014n-zxs.ppd.gz b/ppd/hpcups/hp-laserjet_p2014n-zxs.ppd.gz Binary files differindex 72558a29e..aef281ba9 100644 --- a/ppd/hpcups/hp-laserjet_p2014n-zxs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2014n-zxs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2015_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2015_series-pcl3.ppd.gz Binary files differindex 493d53a36..1b37f398c 100644 --- a/ppd/hpcups/hp-laserjet_p2015_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2015_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2015d_series.ppd.gz b/ppd/hpcups/hp-laserjet_p2015d_series.ppd.gz Binary files differindex 3005265dc..12e1fa28c 100644 --- a/ppd/hpcups/hp-laserjet_p2015d_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2015d_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2015dn_series.ppd.gz b/ppd/hpcups/hp-laserjet_p2015dn_series.ppd.gz Binary files differindex 0059fb9b8..89ec09cd2 100644 --- a/ppd/hpcups/hp-laserjet_p2015dn_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2015dn_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2015n_series.ppd.gz b/ppd/hpcups/hp-laserjet_p2015n_series.ppd.gz Binary files differindex baeaa2fd1..8c125977a 100644 --- a/ppd/hpcups/hp-laserjet_p2015n_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2015n_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2015x_series.ppd.gz b/ppd/hpcups/hp-laserjet_p2015x_series.ppd.gz Binary files differindex 60b9a19c7..47dbc748f 100644 --- a/ppd/hpcups/hp-laserjet_p2015x_series.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2015x_series.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2035-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2035-pcl3.ppd.gz Binary files differindex 5da0cfc6c..284892de5 100644 --- a/ppd/hpcups/hp-laserjet_p2035-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2035-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2035-zjs.ppd.gz b/ppd/hpcups/hp-laserjet_p2035-zjs.ppd.gz Binary files differindex 14f6a8fc2..fed998320 100644 --- a/ppd/hpcups/hp-laserjet_p2035-zjs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2035-zjs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2035n-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2035n-pcl3.ppd.gz Binary files differindex 1a5687544..fd8b3e7af 100644 --- a/ppd/hpcups/hp-laserjet_p2035n-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2035n-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2035n-zjs.ppd.gz b/ppd/hpcups/hp-laserjet_p2035n-zjs.ppd.gz Binary files differindex 40aab6e07..638bb2006 100644 --- a/ppd/hpcups/hp-laserjet_p2035n-zjs.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2035n-zjs.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2055-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2055-pcl3.ppd.gz Binary files differindex 499566c14..cb1509491 100644 --- a/ppd/hpcups/hp-laserjet_p2055-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2055-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2055d-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2055d-pcl3.ppd.gz Binary files differindex 90a0c9512..35e9262cb 100644 --- a/ppd/hpcups/hp-laserjet_p2055d-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2055d-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2055dn-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2055dn-pcl3.ppd.gz Binary files differindex fff88d08e..9796fbf90 100644 --- a/ppd/hpcups/hp-laserjet_p2055dn-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2055dn-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p2055x-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p2055x-pcl3.ppd.gz Binary files differindex 56370277a..77c9c2167 100644 --- a/ppd/hpcups/hp-laserjet_p2055x-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p2055x-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p3004-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p3004-pcl3.ppd.gz Binary files differindex 7e9ea70a1..eac752cee 100644 --- a/ppd/hpcups/hp-laserjet_p3004-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p3004-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p3005-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p3005-pcl3.ppd.gz Binary files differindex e004f1b3a..19820926b 100644 --- a/ppd/hpcups/hp-laserjet_p3005-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p3005-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p3010_series-pcl3.ppd.gz b/ppd/hpcups/hp-laserjet_p3010_series-pcl3.ppd.gz Binary files differindex 85da4bece..6405660eb 100644 --- a/ppd/hpcups/hp-laserjet_p3010_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p3010_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4014.ppd.gz b/ppd/hpcups/hp-laserjet_p4014.ppd.gz Binary files differindex 679d0d34d..d062fc8c2 100644 --- a/ppd/hpcups/hp-laserjet_p4014.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4014.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4014dn.ppd.gz b/ppd/hpcups/hp-laserjet_p4014dn.ppd.gz Binary files differindex cb190d3da..231fc5c10 100644 --- a/ppd/hpcups/hp-laserjet_p4014dn.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4014dn.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4014n.ppd.gz b/ppd/hpcups/hp-laserjet_p4014n.ppd.gz Binary files differindex 7c7ccb384..a7debecf1 100644 --- a/ppd/hpcups/hp-laserjet_p4014n.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4014n.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4015.ppd.gz b/ppd/hpcups/hp-laserjet_p4015.ppd.gz Binary files differindex 37976fdf0..f6830aa29 100644 --- a/ppd/hpcups/hp-laserjet_p4015.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4015.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4015dn.ppd.gz b/ppd/hpcups/hp-laserjet_p4015dn.ppd.gz Binary files differindex c6d199338..a7c2851ab 100644 --- a/ppd/hpcups/hp-laserjet_p4015dn.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4015dn.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4015n.ppd.gz b/ppd/hpcups/hp-laserjet_p4015n.ppd.gz Binary files differindex 5c4f9c7c2..b1e5a92d4 100644 --- a/ppd/hpcups/hp-laserjet_p4015n.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4015n.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4015tn.ppd.gz b/ppd/hpcups/hp-laserjet_p4015tn.ppd.gz Binary files differindex 65cb5cdac..f8942169e 100644 --- a/ppd/hpcups/hp-laserjet_p4015tn.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4015tn.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4015x.ppd.gz b/ppd/hpcups/hp-laserjet_p4015x.ppd.gz Binary files differindex 62de643a1..0f53dcaaa 100644 --- a/ppd/hpcups/hp-laserjet_p4015x.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4015x.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4515.ppd.gz b/ppd/hpcups/hp-laserjet_p4515.ppd.gz Binary files differindex 7fe405901..d0b3942f7 100644 --- a/ppd/hpcups/hp-laserjet_p4515.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4515.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4515n.ppd.gz b/ppd/hpcups/hp-laserjet_p4515n.ppd.gz Binary files differindex b711a4efc..c49ea15ec 100644 --- a/ppd/hpcups/hp-laserjet_p4515n.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4515n.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4515tn.ppd.gz b/ppd/hpcups/hp-laserjet_p4515tn.ppd.gz Binary files differindex a449976d4..8293f5b43 100644 --- a/ppd/hpcups/hp-laserjet_p4515tn.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4515tn.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4515x.ppd.gz b/ppd/hpcups/hp-laserjet_p4515x.ppd.gz Binary files differindex 09047d0b3..5c815c23b 100644 --- a/ppd/hpcups/hp-laserjet_p4515x.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4515x.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_p4515xm.ppd.gz b/ppd/hpcups/hp-laserjet_p4515xm.ppd.gz Binary files differindex ed193fdcb..ae69b2173 100644 --- a/ppd/hpcups/hp-laserjet_p4515xm.ppd.gz +++ b/ppd/hpcups/hp-laserjet_p4515xm.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1132_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1132_mfp.ppd.gz Binary files differindex c1550e1b1..730e6cec9 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1132_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1132_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1136_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1136_mfp.ppd.gz Binary files differindex 20cf464e4..c30ded99f 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1136_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1136_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1212nf_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1212nf_mfp.ppd.gz Binary files differindex 3d6ac71b9..314697c07 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1212nf_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1212nf_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1213nf_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1213nf_mfp.ppd.gz Binary files differindex 042d44b95..652713e1a 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1213nf_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1213nf_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1214nfh_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1214nfh_mfp.ppd.gz Binary files differindex d3141a332..9df76ee39 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1214nfh_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1214nfh_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1216nfh_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1216nfh_mfp.ppd.gz Binary files differindex 461cf8c1e..0e49f8cbd 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1216nfh_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1216nfh_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz Binary files differindex c739be475..98a6791cf 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1217nfw_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz b/ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz Binary files differindex bddafaa85..56d06ac62 100644 --- a/ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_m1219nf_mfp.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz Binary files differindex dec0ef3db..f7dc710c1 100644 --- a/ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p1102.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p1102s.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1102s.ppd.gz Binary files differdeleted file mode 100644 index 81be45206..000000000 --- a/ppd/hpcups/hp-laserjet_professional_p1102s.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz Binary files differindex 9ed21122e..99c72afbc 100644 --- a/ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p1102w.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz Binary files differindex 002ac514c..0b5fde837 100644 --- a/ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p1106.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p1108.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1108.ppd.gz Binary files differindex 425965db8..b231ada94 100644 --- a/ppd/hpcups/hp-laserjet_professional_p1108.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p1108.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p1566.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1566.ppd.gz Binary files differindex 48c8b634b..cc1c1d976 100644 --- a/ppd/hpcups/hp-laserjet_professional_p1566.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p1566.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p1606dn.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p1606dn.ppd.gz Binary files differindex cb9f90cda..93abfff42 100644 --- a/ppd/hpcups/hp-laserjet_professional_p1606dn.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p1606dn.ppd.gz diff --git a/ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz b/ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz Binary files differindex 3f0922af1..b5f4c0d3f 100644 --- a/ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz +++ b/ppd/hpcups/hp-laserjet_professional_p_1102w.ppd.gz diff --git a/ppd/hpcups/hp-mopier_240-pcl3.ppd.gz b/ppd/hpcups/hp-mopier_240-pcl3.ppd.gz Binary files differindex 4de3856de..66c913bd3 100644 --- a/ppd/hpcups/hp-mopier_240-pcl3.ppd.gz +++ b/ppd/hpcups/hp-mopier_240-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-mopier_320-pcl3.ppd.gz b/ppd/hpcups/hp-mopier_320-pcl3.ppd.gz Binary files differindex 6ec37ed3f..e0e8c9ab6 100644 --- a/ppd/hpcups/hp-mopier_320-pcl3.ppd.gz +++ b/ppd/hpcups/hp-mopier_320-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-officejet.ppd.gz b/ppd/hpcups/hp-officejet.ppd.gz Binary files differindex e099b4e63..485a219b6 100644 --- a/ppd/hpcups/hp-officejet.ppd.gz +++ b/ppd/hpcups/hp-officejet.ppd.gz diff --git a/ppd/hpcups/hp-officejet_100_mobile_l411.ppd.gz b/ppd/hpcups/hp-officejet_100_mobile_l411.ppd.gz Binary files differindex 308affb56..e502a3be5 100644 --- a/ppd/hpcups/hp-officejet_100_mobile_l411.ppd.gz +++ b/ppd/hpcups/hp-officejet_100_mobile_l411.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4000_k210.ppd.gz b/ppd/hpcups/hp-officejet_4000_k210.ppd.gz Binary files differindex bb1a7e022..77e1973f8 100644 --- a/ppd/hpcups/hp-officejet_4000_k210.ppd.gz +++ b/ppd/hpcups/hp-officejet_4000_k210.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4100_series.ppd.gz b/ppd/hpcups/hp-officejet_4100_series.ppd.gz Binary files differindex 6bef8c2ce..f60d82565 100644 --- a/ppd/hpcups/hp-officejet_4100_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_4100_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4105.ppd.gz b/ppd/hpcups/hp-officejet_4105.ppd.gz Binary files differindex 78ebc5dbe..469a2a5bb 100644 --- a/ppd/hpcups/hp-officejet_4105.ppd.gz +++ b/ppd/hpcups/hp-officejet_4105.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4115_series.ppd.gz b/ppd/hpcups/hp-officejet_4115_series.ppd.gz Binary files differindex 5b8b45b9a..647380b12 100644 --- a/ppd/hpcups/hp-officejet_4115_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_4115_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4200_series.ppd.gz b/ppd/hpcups/hp-officejet_4200_series.ppd.gz Binary files differindex 8b52c75bc..96290cc92 100644 --- a/ppd/hpcups/hp-officejet_4200_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_4200_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4255.ppd.gz b/ppd/hpcups/hp-officejet_4255.ppd.gz Binary files differindex 162f84acd..b3f783e79 100644 --- a/ppd/hpcups/hp-officejet_4255.ppd.gz +++ b/ppd/hpcups/hp-officejet_4255.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4300_series.ppd.gz b/ppd/hpcups/hp-officejet_4300_series.ppd.gz Binary files differindex 6cd1925df..b20aa9180 100644 --- a/ppd/hpcups/hp-officejet_4300_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_4300_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4400_k410.ppd.gz b/ppd/hpcups/hp-officejet_4400_k410.ppd.gz Binary files differindex cf4fcc720..55afd3d45 100644 --- a/ppd/hpcups/hp-officejet_4400_k410.ppd.gz +++ b/ppd/hpcups/hp-officejet_4400_k410.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4500_g510a-f.ppd.gz b/ppd/hpcups/hp-officejet_4500_g510a-f.ppd.gz Binary files differindex 1fc784b14..bc4e1f2ed 100644 --- a/ppd/hpcups/hp-officejet_4500_g510a-f.ppd.gz +++ b/ppd/hpcups/hp-officejet_4500_g510a-f.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4500_g510g-m.ppd.gz b/ppd/hpcups/hp-officejet_4500_g510g-m.ppd.gz Binary files differindex 585c1917d..30c700484 100644 --- a/ppd/hpcups/hp-officejet_4500_g510g-m.ppd.gz +++ b/ppd/hpcups/hp-officejet_4500_g510g-m.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4500_g510n-z.ppd.gz b/ppd/hpcups/hp-officejet_4500_g510n-z.ppd.gz Binary files differindex 55221e7da..915e693af 100644 --- a/ppd/hpcups/hp-officejet_4500_g510n-z.ppd.gz +++ b/ppd/hpcups/hp-officejet_4500_g510n-z.ppd.gz diff --git a/ppd/hpcups/hp-officejet_4500_k710.ppd.gz b/ppd/hpcups/hp-officejet_4500_k710.ppd.gz Binary files differindex 65ca3eca5..e4b8bf3a2 100644 --- a/ppd/hpcups/hp-officejet_4500_k710.ppd.gz +++ b/ppd/hpcups/hp-officejet_4500_k710.ppd.gz diff --git a/ppd/hpcups/hp-officejet_5100_series.ppd.gz b/ppd/hpcups/hp-officejet_5100_series.ppd.gz Binary files differindex a45fb49b3..5c508054a 100644 --- a/ppd/hpcups/hp-officejet_5100_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_5100_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_5105.ppd.gz b/ppd/hpcups/hp-officejet_5105.ppd.gz Binary files differindex fee0b002d..989f1a50b 100644 --- a/ppd/hpcups/hp-officejet_5105.ppd.gz +++ b/ppd/hpcups/hp-officejet_5105.ppd.gz diff --git a/ppd/hpcups/hp-officejet_5110.ppd.gz b/ppd/hpcups/hp-officejet_5110.ppd.gz Binary files differindex 68c9537cb..05129d6a0 100644 --- a/ppd/hpcups/hp-officejet_5110.ppd.gz +++ b/ppd/hpcups/hp-officejet_5110.ppd.gz diff --git a/ppd/hpcups/hp-officejet_5110v.ppd.gz b/ppd/hpcups/hp-officejet_5110v.ppd.gz Binary files differindex 42c6fab8c..e9639c614 100644 --- a/ppd/hpcups/hp-officejet_5110v.ppd.gz +++ b/ppd/hpcups/hp-officejet_5110v.ppd.gz diff --git a/ppd/hpcups/hp-officejet_5500_series.ppd.gz b/ppd/hpcups/hp-officejet_5500_series.ppd.gz Binary files differindex 4866f31af..bb0f3ff59 100644 --- a/ppd/hpcups/hp-officejet_5500_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_5500_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_5600_series.ppd.gz b/ppd/hpcups/hp-officejet_5600_series.ppd.gz Binary files differindex 57b1ef67d..6b7c3f525 100644 --- a/ppd/hpcups/hp-officejet_5600_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_5600_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6000_e609a.ppd.gz b/ppd/hpcups/hp-officejet_6000_e609a.ppd.gz Binary files differindex 08fc77548..ebd2152c5 100644 --- a/ppd/hpcups/hp-officejet_6000_e609a.ppd.gz +++ b/ppd/hpcups/hp-officejet_6000_e609a.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6000_e609n.ppd.gz b/ppd/hpcups/hp-officejet_6000_e609n.ppd.gz Binary files differindex 4dd714cff..b24244bf3 100644 --- a/ppd/hpcups/hp-officejet_6000_e609n.ppd.gz +++ b/ppd/hpcups/hp-officejet_6000_e609n.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6100.ppd.gz b/ppd/hpcups/hp-officejet_6100.ppd.gz Binary files differnew file mode 100644 index 000000000..dfc2b6cb2 --- /dev/null +++ b/ppd/hpcups/hp-officejet_6100.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6100_series.ppd.gz b/ppd/hpcups/hp-officejet_6100_series.ppd.gz Binary files differindex 841b53882..de8410f8e 100644 --- a/ppd/hpcups/hp-officejet_6100_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_6100_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6150_series.ppd.gz b/ppd/hpcups/hp-officejet_6150_series.ppd.gz Binary files differindex 557805936..437d52765 100644 --- a/ppd/hpcups/hp-officejet_6150_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_6150_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6200_series.ppd.gz b/ppd/hpcups/hp-officejet_6200_series.ppd.gz Binary files differindex 1bb5887d0..cbb905b80 100644 --- a/ppd/hpcups/hp-officejet_6200_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_6200_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6300_series.ppd.gz b/ppd/hpcups/hp-officejet_6300_series.ppd.gz Binary files differindex 7f06b32ee..a2fe15cc2 100644 --- a/ppd/hpcups/hp-officejet_6300_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_6300_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6500_e709a.ppd.gz b/ppd/hpcups/hp-officejet_6500_e709a.ppd.gz Binary files differindex b4c5d44e7..adc4ddcc4 100644 --- a/ppd/hpcups/hp-officejet_6500_e709a.ppd.gz +++ b/ppd/hpcups/hp-officejet_6500_e709a.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6500_e709n.ppd.gz b/ppd/hpcups/hp-officejet_6500_e709n.ppd.gz Binary files differindex 768e2ed62..51a336e1b 100644 --- a/ppd/hpcups/hp-officejet_6500_e709n.ppd.gz +++ b/ppd/hpcups/hp-officejet_6500_e709n.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz b/ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz Binary files differindex 890789764..08d08fcae 100644 --- a/ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz +++ b/ppd/hpcups/hp-officejet_6500_e710a-f.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz b/ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz Binary files differindex fd0cb1423..c1bfff30e 100644 --- a/ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz +++ b/ppd/hpcups/hp-officejet_6500_e710n-z.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6600.ppd.gz b/ppd/hpcups/hp-officejet_6600.ppd.gz Binary files differnew file mode 100644 index 000000000..4ba628edf --- /dev/null +++ b/ppd/hpcups/hp-officejet_6600.ppd.gz diff --git a/ppd/hpcups/hp-officejet_6700.ppd.gz b/ppd/hpcups/hp-officejet_6700.ppd.gz Binary files differnew file mode 100644 index 000000000..945b41acb --- /dev/null +++ b/ppd/hpcups/hp-officejet_6700.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7000_e809a.ppd.gz b/ppd/hpcups/hp-officejet_7000_e809a.ppd.gz Binary files differindex 4437889b5..c3cd9d780 100644 --- a/ppd/hpcups/hp-officejet_7000_e809a.ppd.gz +++ b/ppd/hpcups/hp-officejet_7000_e809a.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz b/ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz Binary files differindex 5dc207a76..287a13164 100644 --- a/ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_7000_e809a_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7100_series.ppd.gz b/ppd/hpcups/hp-officejet_7100_series.ppd.gz Binary files differindex 658b8bb0d..05161eaf4 100644 --- a/ppd/hpcups/hp-officejet_7100_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_7100_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7200_series.ppd.gz b/ppd/hpcups/hp-officejet_7200_series.ppd.gz Binary files differindex 76fed274e..63473e49f 100644 --- a/ppd/hpcups/hp-officejet_7200_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_7200_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7300_series.ppd.gz b/ppd/hpcups/hp-officejet_7300_series.ppd.gz Binary files differindex 2499b1cc9..638da9a75 100644 --- a/ppd/hpcups/hp-officejet_7300_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_7300_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7400_series.ppd.gz b/ppd/hpcups/hp-officejet_7400_series.ppd.gz Binary files differindex 6641246a9..b67180d86 100644 --- a/ppd/hpcups/hp-officejet_7400_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_7400_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_7500_e910.ppd.gz b/ppd/hpcups/hp-officejet_7500_e910.ppd.gz Binary files differindex 9c6909cd4..302edc008 100644 --- a/ppd/hpcups/hp-officejet_7500_e910.ppd.gz +++ b/ppd/hpcups/hp-officejet_7500_e910.ppd.gz diff --git a/ppd/hpcups/hp-officejet_9100_series-pcl3.ppd.gz b/ppd/hpcups/hp-officejet_9100_series-pcl3.ppd.gz Binary files differindex 447f39576..01a804829 100644 --- a/ppd/hpcups/hp-officejet_9100_series-pcl3.ppd.gz +++ b/ppd/hpcups/hp-officejet_9100_series-pcl3.ppd.gz diff --git a/ppd/hpcups/hp-officejet_d_series.ppd.gz b/ppd/hpcups/hp-officejet_d_series.ppd.gz Binary files differindex d7941bd20..85b43f38a 100644 --- a/ppd/hpcups/hp-officejet_d_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_d_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_g55.ppd.gz b/ppd/hpcups/hp-officejet_g55.ppd.gz Binary files differindex f19409110..687b32cac 100644 --- a/ppd/hpcups/hp-officejet_g55.ppd.gz +++ b/ppd/hpcups/hp-officejet_g55.ppd.gz diff --git a/ppd/hpcups/hp-officejet_g55xi.ppd.gz b/ppd/hpcups/hp-officejet_g55xi.ppd.gz Binary files differindex f3d36fd29..27edfcab9 100644 --- a/ppd/hpcups/hp-officejet_g55xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_g55xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_g85.ppd.gz b/ppd/hpcups/hp-officejet_g85.ppd.gz Binary files differindex ee2a0d61a..0b2432c80 100644 --- a/ppd/hpcups/hp-officejet_g85.ppd.gz +++ b/ppd/hpcups/hp-officejet_g85.ppd.gz diff --git a/ppd/hpcups/hp-officejet_g85xi.ppd.gz b/ppd/hpcups/hp-officejet_g85xi.ppd.gz Binary files differindex ea0dba695..881801499 100644 --- a/ppd/hpcups/hp-officejet_g85xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_g85xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_g95.ppd.gz b/ppd/hpcups/hp-officejet_g95.ppd.gz Binary files differindex f082b435d..2ff75006b 100644 --- a/ppd/hpcups/hp-officejet_g95.ppd.gz +++ b/ppd/hpcups/hp-officejet_g95.ppd.gz diff --git a/ppd/hpcups/hp-officejet_h470.ppd.gz b/ppd/hpcups/hp-officejet_h470.ppd.gz Binary files differindex 1f3175eb6..05e1c3779 100644 --- a/ppd/hpcups/hp-officejet_h470.ppd.gz +++ b/ppd/hpcups/hp-officejet_h470.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j3500_series.ppd.gz b/ppd/hpcups/hp-officejet_j3500_series.ppd.gz Binary files differindex 45ba7d859..203c8b946 100644 --- a/ppd/hpcups/hp-officejet_j3500_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j3500_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j3600_series.ppd.gz b/ppd/hpcups/hp-officejet_j3600_series.ppd.gz Binary files differindex 39d49a93d..1b0952dad 100644 --- a/ppd/hpcups/hp-officejet_j3600_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j3600_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j4500_series.ppd.gz b/ppd/hpcups/hp-officejet_j4500_series.ppd.gz Binary files differindex 6364fd680..edcc15dd7 100644 --- a/ppd/hpcups/hp-officejet_j4500_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j4500_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j4660_series.ppd.gz b/ppd/hpcups/hp-officejet_j4660_series.ppd.gz Binary files differindex 293f33089..05069ad21 100644 --- a/ppd/hpcups/hp-officejet_j4660_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j4660_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j4680_series.ppd.gz b/ppd/hpcups/hp-officejet_j4680_series.ppd.gz Binary files differindex 032b89a75..98b214e00 100644 --- a/ppd/hpcups/hp-officejet_j4680_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j4680_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j5500_series.ppd.gz b/ppd/hpcups/hp-officejet_j5500_series.ppd.gz Binary files differindex ea0e2097e..774855bd1 100644 --- a/ppd/hpcups/hp-officejet_j5500_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j5500_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j5700_series.ppd.gz b/ppd/hpcups/hp-officejet_j5700_series.ppd.gz Binary files differindex 178126faf..7db447195 100644 --- a/ppd/hpcups/hp-officejet_j5700_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j5700_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_j6400_series.ppd.gz b/ppd/hpcups/hp-officejet_j6400_series.ppd.gz Binary files differindex 602d135cf..cea12fa3a 100644 --- a/ppd/hpcups/hp-officejet_j6400_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_j6400_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_k60.ppd.gz b/ppd/hpcups/hp-officejet_k60.ppd.gz Binary files differindex fa1678e06..d285b037c 100644 --- a/ppd/hpcups/hp-officejet_k60.ppd.gz +++ b/ppd/hpcups/hp-officejet_k60.ppd.gz diff --git a/ppd/hpcups/hp-officejet_k60xi.ppd.gz b/ppd/hpcups/hp-officejet_k60xi.ppd.gz Binary files differindex 90fe69f34..8f938ec79 100644 --- a/ppd/hpcups/hp-officejet_k60xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_k60xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_k7100.ppd.gz b/ppd/hpcups/hp-officejet_k7100.ppd.gz Binary files differindex a6aa5be68..41ec2200a 100644 --- a/ppd/hpcups/hp-officejet_k7100.ppd.gz +++ b/ppd/hpcups/hp-officejet_k7100.ppd.gz diff --git a/ppd/hpcups/hp-officejet_k80.ppd.gz b/ppd/hpcups/hp-officejet_k80.ppd.gz Binary files differindex bb17d1cc7..bb1d6ba4a 100644 --- a/ppd/hpcups/hp-officejet_k80.ppd.gz +++ b/ppd/hpcups/hp-officejet_k80.ppd.gz diff --git a/ppd/hpcups/hp-officejet_k80xi.ppd.gz b/ppd/hpcups/hp-officejet_k80xi.ppd.gz Binary files differindex 5f7d7058b..c1e86b4bc 100644 --- a/ppd/hpcups/hp-officejet_k80xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_k80xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_lx.ppd.gz b/ppd/hpcups/hp-officejet_lx.ppd.gz Binary files differindex 044120f77..385466a95 100644 --- a/ppd/hpcups/hp-officejet_lx.ppd.gz +++ b/ppd/hpcups/hp-officejet_lx.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_1150c.ppd.gz b/ppd/hpcups/hp-officejet_pro_1150c.ppd.gz Binary files differindex 21592aebf..1b1e227c8 100644 --- a/ppd/hpcups/hp-officejet_pro_1150c.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_1150c.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_1170c_series.ppd.gz b/ppd/hpcups/hp-officejet_pro_1170c_series.ppd.gz Binary files differindex 3bf24a536..543ea3486 100644 --- a/ppd/hpcups/hp-officejet_pro_1170c_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_1170c_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8000_a809.ppd.gz b/ppd/hpcups/hp-officejet_pro_8000_a809.ppd.gz Binary files differindex 8d0691f79..7ab18e6a0 100644 --- a/ppd/hpcups/hp-officejet_pro_8000_a809.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8000_a809.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8100.ppd.gz b/ppd/hpcups/hp-officejet_pro_8100.ppd.gz Binary files differindex 452829ece..a53c58bb1 100644 --- a/ppd/hpcups/hp-officejet_pro_8100.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8100.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8500_a909a.ppd.gz b/ppd/hpcups/hp-officejet_pro_8500_a909a.ppd.gz Binary files differindex f58b17009..18ad0ff78 100644 --- a/ppd/hpcups/hp-officejet_pro_8500_a909a.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8500_a909a.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8500_a909g.ppd.gz b/ppd/hpcups/hp-officejet_pro_8500_a909g.ppd.gz Binary files differindex 544bad475..d7fb05f74 100644 --- a/ppd/hpcups/hp-officejet_pro_8500_a909g.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8500_a909g.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8500_a909n.ppd.gz b/ppd/hpcups/hp-officejet_pro_8500_a909n.ppd.gz Binary files differindex 8ff5be465..724040204 100644 --- a/ppd/hpcups/hp-officejet_pro_8500_a909n.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8500_a909n.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8500_a910.ppd.gz b/ppd/hpcups/hp-officejet_pro_8500_a910.ppd.gz Binary files differindex 38254a39a..ff9c4e382 100644 --- a/ppd/hpcups/hp-officejet_pro_8500_a910.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8500_a910.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_8600.ppd.gz b/ppd/hpcups/hp-officejet_pro_8600.ppd.gz Binary files differindex f5e35cad8..586863bab 100644 --- a/ppd/hpcups/hp-officejet_pro_8600.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_8600.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_k5300.ppd.gz b/ppd/hpcups/hp-officejet_pro_k5300.ppd.gz Binary files differindex 1a97e528f..989179067 100644 --- a/ppd/hpcups/hp-officejet_pro_k5300.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_k5300.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_k5400.ppd.gz b/ppd/hpcups/hp-officejet_pro_k5400.ppd.gz Binary files differindex 39e1b04aa..008c85eb7 100644 --- a/ppd/hpcups/hp-officejet_pro_k5400.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_k5400.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_k550.ppd.gz b/ppd/hpcups/hp-officejet_pro_k550.ppd.gz Binary files differindex f16daadc2..4cc1e6b02 100644 --- a/ppd/hpcups/hp-officejet_pro_k550.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_k550.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_k850.ppd.gz b/ppd/hpcups/hp-officejet_pro_k850.ppd.gz Binary files differindex 84b61a4ac..4e7a44280 100644 --- a/ppd/hpcups/hp-officejet_pro_k850.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_k850.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_k8600.ppd.gz b/ppd/hpcups/hp-officejet_pro_k8600.ppd.gz Binary files differindex 638e33c15..2b906bcad 100644 --- a/ppd/hpcups/hp-officejet_pro_k8600.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_k8600.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_l7300.ppd.gz b/ppd/hpcups/hp-officejet_pro_l7300.ppd.gz Binary files differindex e1dfe6dfb..be03739a9 100644 --- a/ppd/hpcups/hp-officejet_pro_l7300.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_l7300.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_l7400.ppd.gz b/ppd/hpcups/hp-officejet_pro_l7400.ppd.gz Binary files differindex e91b2df5f..6495eb59d 100644 --- a/ppd/hpcups/hp-officejet_pro_l7400.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_l7400.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_l7500.ppd.gz b/ppd/hpcups/hp-officejet_pro_l7500.ppd.gz Binary files differindex 159787751..9a8c7f4c2 100644 --- a/ppd/hpcups/hp-officejet_pro_l7500.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_l7500.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_l7600.ppd.gz b/ppd/hpcups/hp-officejet_pro_l7600.ppd.gz Binary files differindex d6dfc4b8d..a1f71ce98 100644 --- a/ppd/hpcups/hp-officejet_pro_l7600.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_l7600.ppd.gz diff --git a/ppd/hpcups/hp-officejet_pro_l7700.ppd.gz b/ppd/hpcups/hp-officejet_pro_l7700.ppd.gz Binary files differindex 8fdf06791..0bf5c4595 100644 --- a/ppd/hpcups/hp-officejet_pro_l7700.ppd.gz +++ b/ppd/hpcups/hp-officejet_pro_l7700.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r40.ppd.gz b/ppd/hpcups/hp-officejet_r40.ppd.gz Binary files differindex b6f56744b..c9e2f8fa7 100644 --- a/ppd/hpcups/hp-officejet_r40.ppd.gz +++ b/ppd/hpcups/hp-officejet_r40.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r40xi.ppd.gz b/ppd/hpcups/hp-officejet_r40xi.ppd.gz Binary files differindex a0c51f5eb..9fe33ac00 100644 --- a/ppd/hpcups/hp-officejet_r40xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_r40xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r45.ppd.gz b/ppd/hpcups/hp-officejet_r45.ppd.gz Binary files differindex 3081c0f15..990cb26e8 100644 --- a/ppd/hpcups/hp-officejet_r45.ppd.gz +++ b/ppd/hpcups/hp-officejet_r45.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r60.ppd.gz b/ppd/hpcups/hp-officejet_r60.ppd.gz Binary files differindex e563356d1..fd13e753d 100644 --- a/ppd/hpcups/hp-officejet_r60.ppd.gz +++ b/ppd/hpcups/hp-officejet_r60.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r65.ppd.gz b/ppd/hpcups/hp-officejet_r65.ppd.gz Binary files differindex e711af7eb..57de8caa8 100644 --- a/ppd/hpcups/hp-officejet_r65.ppd.gz +++ b/ppd/hpcups/hp-officejet_r65.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r80.ppd.gz b/ppd/hpcups/hp-officejet_r80.ppd.gz Binary files differindex 4ebe85461..6ada7bf1c 100644 --- a/ppd/hpcups/hp-officejet_r80.ppd.gz +++ b/ppd/hpcups/hp-officejet_r80.ppd.gz diff --git a/ppd/hpcups/hp-officejet_r80xi.ppd.gz b/ppd/hpcups/hp-officejet_r80xi.ppd.gz Binary files differindex 3ff4e3c16..335f40887 100644 --- a/ppd/hpcups/hp-officejet_r80xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_r80xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_300.ppd.gz b/ppd/hpcups/hp-officejet_series_300.ppd.gz Binary files differindex b24d3d7a5..64a281367 100644 --- a/ppd/hpcups/hp-officejet_series_300.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_300.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_310.ppd.gz b/ppd/hpcups/hp-officejet_series_310.ppd.gz Binary files differindex b7e30090e..33586516b 100644 --- a/ppd/hpcups/hp-officejet_series_310.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_310.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_320.ppd.gz b/ppd/hpcups/hp-officejet_series_320.ppd.gz Binary files differindex e0119a95a..f064a8554 100644 --- a/ppd/hpcups/hp-officejet_series_320.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_320.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_330.ppd.gz b/ppd/hpcups/hp-officejet_series_330.ppd.gz Binary files differindex b61de29f0..b17432fd0 100644 --- a/ppd/hpcups/hp-officejet_series_330.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_330.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_350.ppd.gz b/ppd/hpcups/hp-officejet_series_350.ppd.gz Binary files differindex c67b2582c..0fdff5ee6 100644 --- a/ppd/hpcups/hp-officejet_series_350.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_350.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_500.ppd.gz b/ppd/hpcups/hp-officejet_series_500.ppd.gz Binary files differdeleted file mode 100644 index edd1912e7..000000000 --- a/ppd/hpcups/hp-officejet_series_500.ppd.gz +++ /dev/null diff --git a/ppd/hpcups/hp-officejet_series_520.ppd.gz b/ppd/hpcups/hp-officejet_series_520.ppd.gz Binary files differindex c3ca1aa53..4468932be 100644 --- a/ppd/hpcups/hp-officejet_series_520.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_520.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_570.ppd.gz b/ppd/hpcups/hp-officejet_series_570.ppd.gz Binary files differindex e61d3c775..c2ae337c9 100644 --- a/ppd/hpcups/hp-officejet_series_570.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_570.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_580.ppd.gz b/ppd/hpcups/hp-officejet_series_580.ppd.gz Binary files differindex 3856ed8b6..35e138e40 100644 --- a/ppd/hpcups/hp-officejet_series_580.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_580.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_590.ppd.gz b/ppd/hpcups/hp-officejet_series_590.ppd.gz Binary files differindex 17224740f..b8749b5c5 100644 --- a/ppd/hpcups/hp-officejet_series_590.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_590.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_600.ppd.gz b/ppd/hpcups/hp-officejet_series_600.ppd.gz Binary files differindex aba223f33..19aacc5d5 100644 --- a/ppd/hpcups/hp-officejet_series_600.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_600.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_610.ppd.gz b/ppd/hpcups/hp-officejet_series_610.ppd.gz Binary files differindex ebdb57bb6..985bffc43 100644 --- a/ppd/hpcups/hp-officejet_series_610.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_610.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_630.ppd.gz b/ppd/hpcups/hp-officejet_series_630.ppd.gz Binary files differindex b0fe28cdf..e42d22d6f 100644 --- a/ppd/hpcups/hp-officejet_series_630.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_630.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_700.ppd.gz b/ppd/hpcups/hp-officejet_series_700.ppd.gz Binary files differindex 9a51d90a2..bf2efbe9c 100644 --- a/ppd/hpcups/hp-officejet_series_700.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_700.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_710.ppd.gz b/ppd/hpcups/hp-officejet_series_710.ppd.gz Binary files differindex 36a7472d0..53cc73fd5 100644 --- a/ppd/hpcups/hp-officejet_series_710.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_710.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_720.ppd.gz b/ppd/hpcups/hp-officejet_series_720.ppd.gz Binary files differindex 0e85671ad..ebd1f1325 100644 --- a/ppd/hpcups/hp-officejet_series_720.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_720.ppd.gz diff --git a/ppd/hpcups/hp-officejet_series_725.ppd.gz b/ppd/hpcups/hp-officejet_series_725.ppd.gz Binary files differindex bc47f8485..884abe1c2 100644 --- a/ppd/hpcups/hp-officejet_series_725.ppd.gz +++ b/ppd/hpcups/hp-officejet_series_725.ppd.gz diff --git a/ppd/hpcups/hp-officejet_t_series.ppd.gz b/ppd/hpcups/hp-officejet_t_series.ppd.gz Binary files differindex 9fbe5e7e0..40b799941 100644 --- a/ppd/hpcups/hp-officejet_t_series.ppd.gz +++ b/ppd/hpcups/hp-officejet_t_series.ppd.gz diff --git a/ppd/hpcups/hp-officejet_v30.ppd.gz b/ppd/hpcups/hp-officejet_v30.ppd.gz Binary files differindex 32117fa8a..ff8867a7e 100644 --- a/ppd/hpcups/hp-officejet_v30.ppd.gz +++ b/ppd/hpcups/hp-officejet_v30.ppd.gz diff --git a/ppd/hpcups/hp-officejet_v40.ppd.gz b/ppd/hpcups/hp-officejet_v40.ppd.gz Binary files differindex 8e7b01edd..08f22b887 100644 --- a/ppd/hpcups/hp-officejet_v40.ppd.gz +++ b/ppd/hpcups/hp-officejet_v40.ppd.gz diff --git a/ppd/hpcups/hp-officejet_v40xi.ppd.gz b/ppd/hpcups/hp-officejet_v40xi.ppd.gz Binary files differindex 2e1786dff..e6065b293 100644 --- a/ppd/hpcups/hp-officejet_v40xi.ppd.gz +++ b/ppd/hpcups/hp-officejet_v40xi.ppd.gz diff --git a/ppd/hpcups/hp-officejet_v45.ppd.gz b/ppd/hpcups/hp-officejet_v45.ppd.gz Binary files differindex f9e5d5522..7734d87c5 100644 --- a/ppd/hpcups/hp-officejet_v45.ppd.gz +++ b/ppd/hpcups/hp-officejet_v45.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_100.ppd.gz b/ppd/hpcups/hp-photosmart_100.ppd.gz Binary files differindex 6b4349178..6fe1a8588 100644 --- a/ppd/hpcups/hp-photosmart_100.ppd.gz +++ b/ppd/hpcups/hp-photosmart_100.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_1115.ppd.gz b/ppd/hpcups/hp-photosmart_1115.ppd.gz Binary files differindex 3bcb50cd5..6f82bd3a0 100644 --- a/ppd/hpcups/hp-photosmart_1115.ppd.gz +++ b/ppd/hpcups/hp-photosmart_1115.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_1215.ppd.gz b/ppd/hpcups/hp-photosmart_1215.ppd.gz Binary files differindex 7116800a4..8db59436a 100644 --- a/ppd/hpcups/hp-photosmart_1215.ppd.gz +++ b/ppd/hpcups/hp-photosmart_1215.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_1218.ppd.gz b/ppd/hpcups/hp-photosmart_1218.ppd.gz Binary files differindex c681c0289..01d399a37 100644 --- a/ppd/hpcups/hp-photosmart_1218.ppd.gz +++ b/ppd/hpcups/hp-photosmart_1218.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_130.ppd.gz b/ppd/hpcups/hp-photosmart_130.ppd.gz Binary files differindex 0a98b31ae..eee71c57b 100644 --- a/ppd/hpcups/hp-photosmart_130.ppd.gz +++ b/ppd/hpcups/hp-photosmart_130.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_1315.ppd.gz b/ppd/hpcups/hp-photosmart_1315.ppd.gz Binary files differindex 69e70a0e7..c09fdeedc 100644 --- a/ppd/hpcups/hp-photosmart_1315.ppd.gz +++ b/ppd/hpcups/hp-photosmart_1315.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_140_series.ppd.gz b/ppd/hpcups/hp-photosmart_140_series.ppd.gz Binary files differindex 573b3b0ae..5a2e51d9c 100644 --- a/ppd/hpcups/hp-photosmart_140_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_140_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_230.ppd.gz b/ppd/hpcups/hp-photosmart_230.ppd.gz Binary files differindex f5330e5db..ed5ceb654 100644 --- a/ppd/hpcups/hp-photosmart_230.ppd.gz +++ b/ppd/hpcups/hp-photosmart_230.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_240_series.ppd.gz b/ppd/hpcups/hp-photosmart_240_series.ppd.gz Binary files differindex 3e83b0a8d..9ad077926 100644 --- a/ppd/hpcups/hp-photosmart_240_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_240_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_2570_series.ppd.gz b/ppd/hpcups/hp-photosmart_2570_series.ppd.gz Binary files differindex 8a4ce3404..102d64e94 100644 --- a/ppd/hpcups/hp-photosmart_2570_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_2570_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_2600_series.ppd.gz b/ppd/hpcups/hp-photosmart_2600_series.ppd.gz Binary files differindex ce76bc52a..2d28ec874 100644 --- a/ppd/hpcups/hp-photosmart_2600_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_2600_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_2700_series.ppd.gz b/ppd/hpcups/hp-photosmart_2700_series.ppd.gz Binary files differindex c2219bec7..eea5f16f3 100644 --- a/ppd/hpcups/hp-photosmart_2700_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_2700_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_3100_series.ppd.gz b/ppd/hpcups/hp-photosmart_3100_series.ppd.gz Binary files differindex 252644e8e..e1b92e409 100644 --- a/ppd/hpcups/hp-photosmart_3100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_3100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_3200_series.ppd.gz b/ppd/hpcups/hp-photosmart_3200_series.ppd.gz Binary files differindex 6b842cfe7..4f490b17b 100644 --- a/ppd/hpcups/hp-photosmart_3200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_3200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_320_series.ppd.gz b/ppd/hpcups/hp-photosmart_320_series.ppd.gz Binary files differindex 0e440ffbd..a5a07c1c9 100644 --- a/ppd/hpcups/hp-photosmart_320_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_320_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_3300_series.ppd.gz b/ppd/hpcups/hp-photosmart_3300_series.ppd.gz Binary files differindex b9a7fe0f2..9209323d1 100644 --- a/ppd/hpcups/hp-photosmart_3300_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_3300_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_330_series.ppd.gz b/ppd/hpcups/hp-photosmart_330_series.ppd.gz Binary files differindex 59fb34ba8..b0185462f 100644 --- a/ppd/hpcups/hp-photosmart_330_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_330_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_370_series.ppd.gz b/ppd/hpcups/hp-photosmart_370_series.ppd.gz Binary files differindex c89adb07e..b98f3adef 100644 --- a/ppd/hpcups/hp-photosmart_370_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_370_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_380_series.ppd.gz b/ppd/hpcups/hp-photosmart_380_series.ppd.gz Binary files differindex 9e0c053b1..e4e2fb3e4 100644 --- a/ppd/hpcups/hp-photosmart_380_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_380_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_420_series.ppd.gz b/ppd/hpcups/hp-photosmart_420_series.ppd.gz Binary files differindex 540701bbb..25fcb85d2 100644 --- a/ppd/hpcups/hp-photosmart_420_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_420_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_470_series.ppd.gz b/ppd/hpcups/hp-photosmart_470_series.ppd.gz Binary files differindex a31c0cbfc..dedde91e1 100644 --- a/ppd/hpcups/hp-photosmart_470_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_470_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_5510_series.ppd.gz b/ppd/hpcups/hp-photosmart_5510_series.ppd.gz Binary files differindex e0c798198..eae4bd81e 100644 --- a/ppd/hpcups/hp-photosmart_5510_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_5510_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_5510d_series.ppd.gz b/ppd/hpcups/hp-photosmart_5510d_series.ppd.gz Binary files differindex 95080547d..df69dccc3 100644 --- a/ppd/hpcups/hp-photosmart_5510d_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_5510d_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_6510_series.ppd.gz b/ppd/hpcups/hp-photosmart_6510_series.ppd.gz Binary files differindex 21e388dbc..cb6e24988 100644 --- a/ppd/hpcups/hp-photosmart_6510_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_6510_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7150.ppd.gz b/ppd/hpcups/hp-photosmart_7150.ppd.gz Binary files differindex 18275ed5d..674308297 100644 --- a/ppd/hpcups/hp-photosmart_7150.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7150.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7200_series.ppd.gz b/ppd/hpcups/hp-photosmart_7200_series.ppd.gz Binary files differindex 4e87c56cc..47fa42b1f 100644 --- a/ppd/hpcups/hp-photosmart_7200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7345.ppd.gz b/ppd/hpcups/hp-photosmart_7345.ppd.gz Binary files differindex 7cf160ecd..c3b446393 100644 --- a/ppd/hpcups/hp-photosmart_7345.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7345.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7350.ppd.gz b/ppd/hpcups/hp-photosmart_7350.ppd.gz Binary files differindex 1c48d3a42..16a075e6d 100644 --- a/ppd/hpcups/hp-photosmart_7350.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7350.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7400_series.ppd.gz b/ppd/hpcups/hp-photosmart_7400_series.ppd.gz Binary files differindex dbcb516ff..85dcd4d93 100644 --- a/ppd/hpcups/hp-photosmart_7400_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7400_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7510_series.ppd.gz b/ppd/hpcups/hp-photosmart_7510_series.ppd.gz Binary files differindex 772396daf..86ebc626c 100644 --- a/ppd/hpcups/hp-photosmart_7510_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7510_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7550.ppd.gz b/ppd/hpcups/hp-photosmart_7550.ppd.gz Binary files differindex 0dc3dab7e..46f4765b0 100644 --- a/ppd/hpcups/hp-photosmart_7550.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7550.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7600_series.ppd.gz b/ppd/hpcups/hp-photosmart_7600_series.ppd.gz Binary files differindex dd2e4917c..6059b2469 100644 --- a/ppd/hpcups/hp-photosmart_7600_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7600_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7700_series.ppd.gz b/ppd/hpcups/hp-photosmart_7700_series.ppd.gz Binary files differindex 5790552d0..37a5a00fd 100644 --- a/ppd/hpcups/hp-photosmart_7700_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7700_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7800_series.ppd.gz b/ppd/hpcups/hp-photosmart_7800_series.ppd.gz Binary files differindex 59563d226..4a1a4ac23 100644 --- a/ppd/hpcups/hp-photosmart_7800_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7800_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_7900_series.ppd.gz b/ppd/hpcups/hp-photosmart_7900_series.ppd.gz Binary files differindex 7505077cf..27d20f3ea 100644 --- a/ppd/hpcups/hp-photosmart_7900_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_7900_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_8000_series.ppd.gz b/ppd/hpcups/hp-photosmart_8000_series.ppd.gz Binary files differindex 595f064c4..c464af72b 100644 --- a/ppd/hpcups/hp-photosmart_8000_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_8000_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_8100_series.ppd.gz b/ppd/hpcups/hp-photosmart_8100_series.ppd.gz Binary files differindex 069ae960f..740d6d66a 100644 --- a/ppd/hpcups/hp-photosmart_8100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_8100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_8200_series.ppd.gz b/ppd/hpcups/hp-photosmart_8200_series.ppd.gz Binary files differindex 1478388ba..776795e7f 100644 --- a/ppd/hpcups/hp-photosmart_8200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_8200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_8400_series.ppd.gz b/ppd/hpcups/hp-photosmart_8400_series.ppd.gz Binary files differindex 25f4a1e90..187e2d29e 100644 --- a/ppd/hpcups/hp-photosmart_8400_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_8400_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_8700_series.ppd.gz b/ppd/hpcups/hp-photosmart_8700_series.ppd.gz Binary files differindex d4cade48f..6ef81a8b5 100644 --- a/ppd/hpcups/hp-photosmart_8700_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_8700_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a310_series.ppd.gz b/ppd/hpcups/hp-photosmart_a310_series.ppd.gz Binary files differindex b3a101c85..8981de33b 100644 --- a/ppd/hpcups/hp-photosmart_a310_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a310_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a320_series.ppd.gz b/ppd/hpcups/hp-photosmart_a320_series.ppd.gz Binary files differindex 2d67ef4aa..c940c2bd2 100644 --- a/ppd/hpcups/hp-photosmart_a320_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a320_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a430_series.ppd.gz b/ppd/hpcups/hp-photosmart_a430_series.ppd.gz Binary files differindex c1e800589..db0bf16ff 100644 --- a/ppd/hpcups/hp-photosmart_a430_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a430_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a440_series.ppd.gz b/ppd/hpcups/hp-photosmart_a440_series.ppd.gz Binary files differindex dfa096813..efe044422 100644 --- a/ppd/hpcups/hp-photosmart_a440_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a440_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a510_series.ppd.gz b/ppd/hpcups/hp-photosmart_a510_series.ppd.gz Binary files differindex 48832bf06..6272e5f02 100644 --- a/ppd/hpcups/hp-photosmart_a510_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a510_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a520_series.ppd.gz b/ppd/hpcups/hp-photosmart_a520_series.ppd.gz Binary files differindex f7057e21c..92e8125cf 100644 --- a/ppd/hpcups/hp-photosmart_a520_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a520_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a530_series.ppd.gz b/ppd/hpcups/hp-photosmart_a530_series.ppd.gz Binary files differindex f580e7e2b..b72d89cd5 100644 --- a/ppd/hpcups/hp-photosmart_a530_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a530_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a610_series.ppd.gz b/ppd/hpcups/hp-photosmart_a610_series.ppd.gz Binary files differindex d4a466dab..35a26a03c 100644 --- a/ppd/hpcups/hp-photosmart_a610_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a610_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a620_series.ppd.gz b/ppd/hpcups/hp-photosmart_a620_series.ppd.gz Binary files differindex 926e439b2..b3a5c867c 100644 --- a/ppd/hpcups/hp-photosmart_a620_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a620_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a630_series.ppd.gz b/ppd/hpcups/hp-photosmart_a630_series.ppd.gz Binary files differindex 45802c033..49d60265f 100644 --- a/ppd/hpcups/hp-photosmart_a630_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a630_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a640_series.ppd.gz b/ppd/hpcups/hp-photosmart_a640_series.ppd.gz Binary files differindex 304e2b724..903ac6c2c 100644 --- a/ppd/hpcups/hp-photosmart_a640_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a640_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a710_series.ppd.gz b/ppd/hpcups/hp-photosmart_a710_series.ppd.gz Binary files differindex 969eda96a..d916f56f3 100644 --- a/ppd/hpcups/hp-photosmart_a710_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a710_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_a820_series.ppd.gz b/ppd/hpcups/hp-photosmart_a820_series.ppd.gz Binary files differindex 4ccc7af16..50edf9238 100644 --- a/ppd/hpcups/hp-photosmart_a820_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_a820_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_b010_series.ppd.gz b/ppd/hpcups/hp-photosmart_b010_series.ppd.gz Binary files differindex 2f40f6871..1e64d68fd 100644 --- a/ppd/hpcups/hp-photosmart_b010_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_b010_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_b109a-m.ppd.gz b/ppd/hpcups/hp-photosmart_b109a-m.ppd.gz Binary files differindex f20eb720a..bf2a2ac49 100644 --- a/ppd/hpcups/hp-photosmart_b109a-m.ppd.gz +++ b/ppd/hpcups/hp-photosmart_b109a-m.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_b109a_series.ppd.gz b/ppd/hpcups/hp-photosmart_b109a_series.ppd.gz Binary files differindex 7c1358585..9efa85f98 100644 --- a/ppd/hpcups/hp-photosmart_b109a_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_b109a_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_b110_series.ppd.gz b/ppd/hpcups/hp-photosmart_b110_series.ppd.gz Binary files differindex 173402a5b..a24d31cc3 100644 --- a/ppd/hpcups/hp-photosmart_b110_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_b110_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_b8500_series.ppd.gz b/ppd/hpcups/hp-photosmart_b8500_series.ppd.gz Binary files differindex a3565c581..d1a87f82c 100644 --- a/ppd/hpcups/hp-photosmart_b8500_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_b8500_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c309a_series.ppd.gz b/ppd/hpcups/hp-photosmart_c309a_series.ppd.gz Binary files differindex 3c58c7c57..c6da61c61 100644 --- a/ppd/hpcups/hp-photosmart_c309a_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c309a_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c3100_series.ppd.gz b/ppd/hpcups/hp-photosmart_c3100_series.ppd.gz Binary files differindex 664a1721d..1c0f35bf7 100644 --- a/ppd/hpcups/hp-photosmart_c3100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c3100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4100_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4100_series.ppd.gz Binary files differindex 79707cdd4..a15148c10 100644 --- a/ppd/hpcups/hp-photosmart_c4100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4200_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4200_series.ppd.gz Binary files differindex fda0fd900..58418bf1f 100644 --- a/ppd/hpcups/hp-photosmart_c4200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4340_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4340_series.ppd.gz Binary files differindex 4e0d846f4..d77b3c6f1 100644 --- a/ppd/hpcups/hp-photosmart_c4340_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4340_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4380_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4380_series.ppd.gz Binary files differindex ec43c80fd..59cecda16 100644 --- a/ppd/hpcups/hp-photosmart_c4380_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4380_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4400_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4400_series.ppd.gz Binary files differindex 0b7aee4fd..5ae192c45 100644 --- a/ppd/hpcups/hp-photosmart_c4400_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4400_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4500_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4500_series.ppd.gz Binary files differindex a88a7dbec..0b1bd5740 100644 --- a/ppd/hpcups/hp-photosmart_c4500_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4500_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4600_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4600_series.ppd.gz Binary files differindex ac03f24a4..d6b75b506 100644 --- a/ppd/hpcups/hp-photosmart_c4600_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4600_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c4700_series.ppd.gz b/ppd/hpcups/hp-photosmart_c4700_series.ppd.gz Binary files differindex d4e8b357f..216424250 100644 --- a/ppd/hpcups/hp-photosmart_c4700_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c4700_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c5100_series.ppd.gz b/ppd/hpcups/hp-photosmart_c5100_series.ppd.gz Binary files differindex f1a96f871..56ada793c 100644 --- a/ppd/hpcups/hp-photosmart_c5100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c5100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c5200_series.ppd.gz b/ppd/hpcups/hp-photosmart_c5200_series.ppd.gz Binary files differindex 56cc04cf0..5fb38fb3f 100644 --- a/ppd/hpcups/hp-photosmart_c5200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c5200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c5300_series.ppd.gz b/ppd/hpcups/hp-photosmart_c5300_series.ppd.gz Binary files differindex d5b4c2f99..3768e078a 100644 --- a/ppd/hpcups/hp-photosmart_c5300_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c5300_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c5500_series.ppd.gz b/ppd/hpcups/hp-photosmart_c5500_series.ppd.gz Binary files differindex 5c71fad6d..ba0d9ac45 100644 --- a/ppd/hpcups/hp-photosmart_c5500_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c5500_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c6100_series.ppd.gz b/ppd/hpcups/hp-photosmart_c6100_series.ppd.gz Binary files differindex 261185ad0..3f8ef6ca3 100644 --- a/ppd/hpcups/hp-photosmart_c6100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c6100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c6200_series.ppd.gz b/ppd/hpcups/hp-photosmart_c6200_series.ppd.gz Binary files differindex c54bc790e..70d307dc6 100644 --- a/ppd/hpcups/hp-photosmart_c6200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c6200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c6300_series.ppd.gz b/ppd/hpcups/hp-photosmart_c6300_series.ppd.gz Binary files differindex 907d896d5..11803a830 100644 --- a/ppd/hpcups/hp-photosmart_c6300_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c6300_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c7100_series.ppd.gz b/ppd/hpcups/hp-photosmart_c7100_series.ppd.gz Binary files differindex 9c65fdaf0..3a03d90b6 100644 --- a/ppd/hpcups/hp-photosmart_c7100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c7100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c7200_series.ppd.gz b/ppd/hpcups/hp-photosmart_c7200_series.ppd.gz Binary files differindex 8f01f23a1..0241596e7 100644 --- a/ppd/hpcups/hp-photosmart_c7200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c7200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_c8100_series.ppd.gz b/ppd/hpcups/hp-photosmart_c8100_series.ppd.gz Binary files differindex ed339b722..aef3b6e0e 100644 --- a/ppd/hpcups/hp-photosmart_c8100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_c8100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d110_series.ppd.gz b/ppd/hpcups/hp-photosmart_d110_series.ppd.gz Binary files differindex 6d1f61d9b..5d7085f82 100644 --- a/ppd/hpcups/hp-photosmart_d110_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d110_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d5060_series.ppd.gz b/ppd/hpcups/hp-photosmart_d5060_series.ppd.gz Binary files differindex aff40be84..f86765022 100644 --- a/ppd/hpcups/hp-photosmart_d5060_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d5060_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d5100_series.ppd.gz b/ppd/hpcups/hp-photosmart_d5100_series.ppd.gz Binary files differindex 5a3bef710..ddba88689 100644 --- a/ppd/hpcups/hp-photosmart_d5100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d5100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d5300_series.ppd.gz b/ppd/hpcups/hp-photosmart_d5300_series.ppd.gz Binary files differindex 93ea0acac..6ff8f2fd5 100644 --- a/ppd/hpcups/hp-photosmart_d5300_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d5300_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d5400_series.ppd.gz b/ppd/hpcups/hp-photosmart_d5400_series.ppd.gz Binary files differindex 2de7e3712..4bac51ea9 100644 --- a/ppd/hpcups/hp-photosmart_d5400_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d5400_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d6100_series.ppd.gz b/ppd/hpcups/hp-photosmart_d6100_series.ppd.gz Binary files differindex 34b7f9539..e15302117 100644 --- a/ppd/hpcups/hp-photosmart_d6100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d6100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d7100_series.ppd.gz b/ppd/hpcups/hp-photosmart_d7100_series.ppd.gz Binary files differindex 874eabf7a..fe1854519 100644 --- a/ppd/hpcups/hp-photosmart_d7100_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d7100_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d7200_series.ppd.gz b/ppd/hpcups/hp-photosmart_d7200_series.ppd.gz Binary files differindex ef56fbb07..57a09d2ae 100644 --- a/ppd/hpcups/hp-photosmart_d7200_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d7200_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d7300_series.ppd.gz b/ppd/hpcups/hp-photosmart_d7300_series.ppd.gz Binary files differindex 3cbb0b1eb..38ad1afce 100644 --- a/ppd/hpcups/hp-photosmart_d7300_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d7300_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d7400_series.ppd.gz b/ppd/hpcups/hp-photosmart_d7400_series.ppd.gz Binary files differindex bf4ff4307..59d504901 100644 --- a/ppd/hpcups/hp-photosmart_d7400_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d7400_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_d7500_series.ppd.gz b/ppd/hpcups/hp-photosmart_d7500_series.ppd.gz Binary files differindex 9af53e0aa..b3ab39cb3 100644 --- a/ppd/hpcups/hp-photosmart_d7500_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_d7500_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_estn_c510_series.ppd.gz b/ppd/hpcups/hp-photosmart_estn_c510_series.ppd.gz Binary files differindex a52a7a115..b4ae1e530 100644 --- a/ppd/hpcups/hp-photosmart_estn_c510_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_estn_c510_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_ink_adv_k510.ppd.gz b/ppd/hpcups/hp-photosmart_ink_adv_k510.ppd.gz Binary files differindex 860755c5a..a554f3b44 100644 --- a/ppd/hpcups/hp-photosmart_ink_adv_k510.ppd.gz +++ b/ppd/hpcups/hp-photosmart_ink_adv_k510.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_p1000.ppd.gz b/ppd/hpcups/hp-photosmart_p1000.ppd.gz Binary files differindex 6d1ecf2e6..6c8b1e7a1 100644 --- a/ppd/hpcups/hp-photosmart_p1000.ppd.gz +++ b/ppd/hpcups/hp-photosmart_p1000.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_p1100.ppd.gz b/ppd/hpcups/hp-photosmart_p1100.ppd.gz Binary files differindex 9bfe806cf..39c9c0019 100644 --- a/ppd/hpcups/hp-photosmart_p1100.ppd.gz +++ b/ppd/hpcups/hp-photosmart_p1100.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_plus_b209a-m.ppd.gz b/ppd/hpcups/hp-photosmart_plus_b209a-m.ppd.gz Binary files differindex 2a28099dc..fdc2113cc 100644 --- a/ppd/hpcups/hp-photosmart_plus_b209a-m.ppd.gz +++ b/ppd/hpcups/hp-photosmart_plus_b209a-m.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_plus_b210_series.ppd.gz b/ppd/hpcups/hp-photosmart_plus_b210_series.ppd.gz Binary files differindex 100d6c59f..2817c78bb 100644 --- a/ppd/hpcups/hp-photosmart_plus_b210_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_plus_b210_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_prem-web_c309n-s.ppd.gz b/ppd/hpcups/hp-photosmart_prem-web_c309n-s.ppd.gz Binary files differindex 4c890cc12..d5e7a5b09 100644 --- a/ppd/hpcups/hp-photosmart_prem-web_c309n-s.ppd.gz +++ b/ppd/hpcups/hp-photosmart_prem-web_c309n-s.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_prem_c310_series.ppd.gz b/ppd/hpcups/hp-photosmart_prem_c310_series.ppd.gz Binary files differindex 7df9f5549..55d6f2770 100644 --- a/ppd/hpcups/hp-photosmart_prem_c310_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_prem_c310_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_prem_c410_series.ppd.gz b/ppd/hpcups/hp-photosmart_prem_c410_series.ppd.gz Binary files differindex 77f031065..12c2191ed 100644 --- a/ppd/hpcups/hp-photosmart_prem_c410_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_prem_c410_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_premium_c309g-m.ppd.gz b/ppd/hpcups/hp-photosmart_premium_c309g-m.ppd.gz Binary files differindex 2b3705b5e..325bfee37 100644 --- a/ppd/hpcups/hp-photosmart_premium_c309g-m.ppd.gz +++ b/ppd/hpcups/hp-photosmart_premium_c309g-m.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_pro_b8300_series.ppd.gz b/ppd/hpcups/hp-photosmart_pro_b8300_series.ppd.gz Binary files differindex 81bc6146b..43c30530d 100644 --- a/ppd/hpcups/hp-photosmart_pro_b8300_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_pro_b8300_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_pro_b8800_series.ppd.gz b/ppd/hpcups/hp-photosmart_pro_b8800_series.ppd.gz Binary files differindex 8a7316591..e0171f298 100644 --- a/ppd/hpcups/hp-photosmart_pro_b8800_series.ppd.gz +++ b/ppd/hpcups/hp-photosmart_pro_b8800_series.ppd.gz diff --git a/ppd/hpcups/hp-photosmart_wireless_b109n-z.ppd.gz b/ppd/hpcups/hp-photosmart_wireless_b109n-z.ppd.gz Binary files differindex 47731b511..535f28bf6 100644 --- a/ppd/hpcups/hp-photosmart_wireless_b109n-z.ppd.gz +++ b/ppd/hpcups/hp-photosmart_wireless_b109n-z.ppd.gz diff --git a/ppd/hpcups/hp-printer_scanner_copier_300.ppd.gz b/ppd/hpcups/hp-printer_scanner_copier_300.ppd.gz Binary files differindex 28cac5796..e8298ea88 100644 --- a/ppd/hpcups/hp-printer_scanner_copier_300.ppd.gz +++ b/ppd/hpcups/hp-printer_scanner_copier_300.ppd.gz diff --git a/ppd/hpcups/hp-psc_1000_series.ppd.gz b/ppd/hpcups/hp-psc_1000_series.ppd.gz Binary files differindex 61d1760ba..9c85985d7 100644 --- a/ppd/hpcups/hp-psc_1000_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1000_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1100_series.ppd.gz b/ppd/hpcups/hp-psc_1100_series.ppd.gz Binary files differindex ee48c66c1..3bba84288 100644 --- a/ppd/hpcups/hp-psc_1100_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1100_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1200_series.ppd.gz b/ppd/hpcups/hp-psc_1200_series.ppd.gz Binary files differindex 700439407..05f8288be 100644 --- a/ppd/hpcups/hp-psc_1200_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1200_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1300_series.ppd.gz b/ppd/hpcups/hp-psc_1300_series.ppd.gz Binary files differindex a2aa74c66..93cc03bae 100644 --- a/ppd/hpcups/hp-psc_1300_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1300_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1310_series.ppd.gz b/ppd/hpcups/hp-psc_1310_series.ppd.gz Binary files differindex 728039006..37238ac75 100644 --- a/ppd/hpcups/hp-psc_1310_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1310_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1358_series.ppd.gz b/ppd/hpcups/hp-psc_1358_series.ppd.gz Binary files differindex 8d54de616..7dd0d86e1 100644 --- a/ppd/hpcups/hp-psc_1358_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1358_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1400_series.ppd.gz b/ppd/hpcups/hp-psc_1400_series.ppd.gz Binary files differindex 775bad380..3bdd1a1d6 100644 --- a/ppd/hpcups/hp-psc_1400_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1400_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1500_series.ppd.gz b/ppd/hpcups/hp-psc_1500_series.ppd.gz Binary files differindex 5086c283d..36fc10cdc 100644 --- a/ppd/hpcups/hp-psc_1500_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1500_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1510_series.ppd.gz b/ppd/hpcups/hp-psc_1510_series.ppd.gz Binary files differindex 68b09e8d2..4e3d72813 100644 --- a/ppd/hpcups/hp-psc_1510_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1510_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_1600_series.ppd.gz b/ppd/hpcups/hp-psc_1600_series.ppd.gz Binary files differindex a18932be7..afefbb45f 100644 --- a/ppd/hpcups/hp-psc_1600_series.ppd.gz +++ b/ppd/hpcups/hp-psc_1600_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2100_series.ppd.gz b/ppd/hpcups/hp-psc_2100_series.ppd.gz Binary files differindex f9de4172c..470686e57 100644 --- a/ppd/hpcups/hp-psc_2100_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2100_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2150_series.ppd.gz b/ppd/hpcups/hp-psc_2150_series.ppd.gz Binary files differindex c2b881178..f0c59a49a 100644 --- a/ppd/hpcups/hp-psc_2150_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2150_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2170_series.ppd.gz b/ppd/hpcups/hp-psc_2170_series.ppd.gz Binary files differindex e92ec8ee0..33f7af7f6 100644 --- a/ppd/hpcups/hp-psc_2170_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2170_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2200_series.ppd.gz b/ppd/hpcups/hp-psc_2200_series.ppd.gz Binary files differindex 7c2532793..f936aae33 100644 --- a/ppd/hpcups/hp-psc_2200_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2200_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2210_series.ppd.gz b/ppd/hpcups/hp-psc_2210_series.ppd.gz Binary files differindex dcded1915..6b6100a8f 100644 --- a/ppd/hpcups/hp-psc_2210_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2210_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2300_series.ppd.gz b/ppd/hpcups/hp-psc_2300_series.ppd.gz Binary files differindex 96008abc1..73136e134 100644 --- a/ppd/hpcups/hp-psc_2300_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2300_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2350_series.ppd.gz b/ppd/hpcups/hp-psc_2350_series.ppd.gz Binary files differindex 87e390e0b..46cdd528d 100644 --- a/ppd/hpcups/hp-psc_2350_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2350_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2400_series.ppd.gz b/ppd/hpcups/hp-psc_2400_series.ppd.gz Binary files differindex 05639f330..af1f88201 100644 --- a/ppd/hpcups/hp-psc_2400_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2400_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_2500_series.ppd.gz b/ppd/hpcups/hp-psc_2500_series.ppd.gz Binary files differindex d53498e2b..1d258e7f2 100644 --- a/ppd/hpcups/hp-psc_2500_series.ppd.gz +++ b/ppd/hpcups/hp-psc_2500_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_500.ppd.gz b/ppd/hpcups/hp-psc_500.ppd.gz Binary files differindex 3c5232627..c8857e7e7 100644 --- a/ppd/hpcups/hp-psc_500.ppd.gz +++ b/ppd/hpcups/hp-psc_500.ppd.gz diff --git a/ppd/hpcups/hp-psc_720.ppd.gz b/ppd/hpcups/hp-psc_720.ppd.gz Binary files differindex 4c09a3d3b..fa4e86663 100644 --- a/ppd/hpcups/hp-psc_720.ppd.gz +++ b/ppd/hpcups/hp-psc_720.ppd.gz diff --git a/ppd/hpcups/hp-psc_750.ppd.gz b/ppd/hpcups/hp-psc_750.ppd.gz Binary files differindex 532220498..dd057cd73 100644 --- a/ppd/hpcups/hp-psc_750.ppd.gz +++ b/ppd/hpcups/hp-psc_750.ppd.gz diff --git a/ppd/hpcups/hp-psc_750xi.ppd.gz b/ppd/hpcups/hp-psc_750xi.ppd.gz Binary files differindex 3580cabc9..056704d6b 100644 --- a/ppd/hpcups/hp-psc_750xi.ppd.gz +++ b/ppd/hpcups/hp-psc_750xi.ppd.gz diff --git a/ppd/hpcups/hp-psc_760.ppd.gz b/ppd/hpcups/hp-psc_760.ppd.gz Binary files differindex 7a71af057..0c22a168e 100644 --- a/ppd/hpcups/hp-psc_760.ppd.gz +++ b/ppd/hpcups/hp-psc_760.ppd.gz diff --git a/ppd/hpcups/hp-psc_780.ppd.gz b/ppd/hpcups/hp-psc_780.ppd.gz Binary files differindex 840c2363a..fb424262f 100644 --- a/ppd/hpcups/hp-psc_780.ppd.gz +++ b/ppd/hpcups/hp-psc_780.ppd.gz diff --git a/ppd/hpcups/hp-psc_780xi.ppd.gz b/ppd/hpcups/hp-psc_780xi.ppd.gz Binary files differindex 67711bfc4..8b6e6ac3e 100644 --- a/ppd/hpcups/hp-psc_780xi.ppd.gz +++ b/ppd/hpcups/hp-psc_780xi.ppd.gz diff --git a/ppd/hpcups/hp-psc_900_series.ppd.gz b/ppd/hpcups/hp-psc_900_series.ppd.gz Binary files differindex 91c994358..c0bc4d90d 100644 --- a/ppd/hpcups/hp-psc_900_series.ppd.gz +++ b/ppd/hpcups/hp-psc_900_series.ppd.gz diff --git a/ppd/hpcups/hp-psc_920.ppd.gz b/ppd/hpcups/hp-psc_920.ppd.gz Binary files differindex 522bca4da..c60dc8e48 100644 --- a/ppd/hpcups/hp-psc_920.ppd.gz +++ b/ppd/hpcups/hp-psc_920.ppd.gz diff --git a/ppd/hpcups/hp-psc_950.ppd.gz b/ppd/hpcups/hp-psc_950.ppd.gz Binary files differindex 7f1a2ba17..0804cedb2 100644 --- a/ppd/hpcups/hp-psc_950.ppd.gz +++ b/ppd/hpcups/hp-psc_950.ppd.gz diff --git a/ppd/hpcups/hp-psc_950vr.ppd.gz b/ppd/hpcups/hp-psc_950vr.ppd.gz Binary files differindex d1bcb7f97..5af8a8ee9 100644 --- a/ppd/hpcups/hp-psc_950vr.ppd.gz +++ b/ppd/hpcups/hp-psc_950vr.ppd.gz diff --git a/ppd/hpcups/hp-psc_950xi.ppd.gz b/ppd/hpcups/hp-psc_950xi.ppd.gz Binary files differindex 6b22a612c..2ac7bfe8d 100644 --- a/ppd/hpcups/hp-psc_950xi.ppd.gz +++ b/ppd/hpcups/hp-psc_950xi.ppd.gz diff --git a/ppd/hpijs/hp-2000c-hpijs.ppd.gz b/ppd/hpijs/hp-2000c-hpijs.ppd.gz Binary files differindex e0a6262d4..7c5de5c5b 100644 --- a/ppd/hpijs/hp-2000c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-2000c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-2500c-hpijs.ppd.gz b/ppd/hpijs/hp-2500c-hpijs.ppd.gz Binary files differindex 12053d5fb..22e52bd12 100644 --- a/ppd/hpijs/hp-2500c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-2500c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-910-hpijs.ppd.gz b/ppd/hpijs/hp-910-hpijs.ppd.gz Binary files differindex ce418101b..97a1ec45c 100644 --- a/ppd/hpijs/hp-910-hpijs.ppd.gz +++ b/ppd/hpijs/hp-910-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-915-hpijs.ppd.gz b/ppd/hpijs/hp-915-hpijs.ppd.gz Binary files differindex ee5659ed7..004a06696 100644 --- a/ppd/hpijs/hp-915-hpijs.ppd.gz +++ b/ppd/hpijs/hp-915-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_1000-hpijs.ppd.gz b/ppd/hpijs/hp-business_inkjet_1000-hpijs.ppd.gz Binary files differindex 04b21d00b..32a7cf4ef 100644 --- a/ppd/hpijs/hp-business_inkjet_1000-hpijs.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_1000-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_1100-hpijs.ppd.gz b/ppd/hpijs/hp-business_inkjet_1100-hpijs.ppd.gz Binary files differindex d2aaea14d..0c3122371 100644 --- a/ppd/hpijs/hp-business_inkjet_1100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_1100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_1200-hpijs.ppd.gz b/ppd/hpijs/hp-business_inkjet_1200-hpijs.ppd.gz Binary files differindex e12704cc9..17bb4ae87 100644 --- a/ppd/hpijs/hp-business_inkjet_1200-hpijs.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_1200-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2200-hpijs.ppd.gz b/ppd/hpijs/hp-business_inkjet_2200-hpijs.ppd.gz Binary files differindex f29edbfc0..a3fc0f1d3 100644 --- a/ppd/hpijs/hp-business_inkjet_2200-hpijs.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2200-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2230-hpijs.ppd.gz b/ppd/hpijs/hp-business_inkjet_2230-hpijs.ppd.gz Binary files differindex facdacc2a..3588eae36 100644 --- a/ppd/hpijs/hp-business_inkjet_2230-hpijs.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2230-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2250-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-business_inkjet_2250-hpijs-pcl3.ppd.gz Binary files differindex 82175f400..e6ed1214c 100644 --- a/ppd/hpijs/hp-business_inkjet_2250-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2250-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2280-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-business_inkjet_2280-hpijs-pcl3.ppd.gz Binary files differindex 5729b026a..f31c0afcf 100644 --- a/ppd/hpijs/hp-business_inkjet_2280-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2280-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2300-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-business_inkjet_2300-hpijs-pcl3.ppd.gz Binary files differindex 15a46c0ae..20b399945 100644 --- a/ppd/hpijs/hp-business_inkjet_2300-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2300-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2600-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-business_inkjet_2600-hpijs-pcl3.ppd.gz Binary files differindex dec14ac9d..5ef8b6c72 100644 --- a/ppd/hpijs/hp-business_inkjet_2600-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2600-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_2800-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-business_inkjet_2800-hpijs-pcl3.ppd.gz Binary files differindex bf2663a1c..2840320b6 100644 --- a/ppd/hpijs/hp-business_inkjet_2800-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_2800-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-business_inkjet_3000-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-business_inkjet_3000-hpijs-pcl3.ppd.gz Binary files differindex 9c6d53b7e..09f97c41f 100644 --- a/ppd/hpijs/hp-business_inkjet_3000-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-business_inkjet_3000-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz b/ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz Binary files differindex d00aa571d..f69e8a17d 100644 --- a/ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_inkjet_cp1700-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_inkjet_printer_cp1700-hpijs.ppd.gz b/ppd/hpijs/hp-color_inkjet_printer_cp1700-hpijs.ppd.gz Binary files differindex 78a14326a..8e523710a 100644 --- a/ppd/hpijs/hp-color_inkjet_printer_cp1700-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_inkjet_printer_cp1700-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_1600-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_1600-hpijs.ppd.gz Binary files differindex b6ec395ed..ef9103fab 100644 --- a/ppd/hpijs/hp-color_laserjet_1600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_1600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_2500-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_2500-hpijs-pcl3.ppd.gz Binary files differindex 6735e8373..ef12db69e 100644 --- a/ppd/hpijs/hp-color_laserjet_2500-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_2500-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_2500_series-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_2500_series-hpijs.ppd.gz Binary files differindex fac9d2858..7ea8ecf73 100644 --- a/ppd/hpijs/hp-color_laserjet_2500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_2500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_2600n-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_2600n-hpijs.ppd.gz Binary files differindex 85f8f64a2..d1530fcd4 100644 --- a/ppd/hpijs/hp-color_laserjet_2600n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_2600n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3000-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_3000-hpijs-pcl3.ppd.gz Binary files differindex 8c0e1e6c1..af072ec65 100644 --- a/ppd/hpijs/hp-color_laserjet_3000-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3000-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz Binary files differindex b19fbc418..9b2877613 100644 --- a/ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3500-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz Binary files differindex beb4f27bf..cb74dd32e 100644 --- a/ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3500n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3550-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_3550-hpijs.ppd.gz Binary files differindex cfb08aade..ad39ca89a 100644 --- a/ppd/hpijs/hp-color_laserjet_3550-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3550-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3550n-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_3550n-hpijs.ppd.gz Binary files differindex b58d53eda..33f9304dc 100644 --- a/ppd/hpijs/hp-color_laserjet_3550n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3550n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3600-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_3600-hpijs.ppd.gz Binary files differindex 4712d2590..e5817c377 100644 --- a/ppd/hpijs/hp-color_laserjet_3600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3700-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_3700-hpijs-pcl3.ppd.gz Binary files differindex 18198d1b3..ecd548cc9 100644 --- a/ppd/hpijs/hp-color_laserjet_3700-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3700-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3700n-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_3700n-hpijs.ppd.gz Binary files differindex d8d067372..ca4b2f7c0 100644 --- a/ppd/hpijs/hp-color_laserjet_3700n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3700n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_3800-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_3800-hpijs-pcl3.ppd.gz Binary files differindex 9e2a7b679..f9baa57df 100644 --- a/ppd/hpijs/hp-color_laserjet_3800-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_3800-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4500-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4500-hpijs-pcl3.ppd.gz Binary files differindex 410923fc4..d029e7592 100644 --- a/ppd/hpijs/hp-color_laserjet_4500-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4500-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4550-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4550-hpijs-pcl3.ppd.gz Binary files differindex 883f64714..3f4e4e5a2 100644 --- a/ppd/hpijs/hp-color_laserjet_4550-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4550-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4600-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4600-hpijs-pcl3.ppd.gz Binary files differindex 556921a55..89ed1f6ce 100644 --- a/ppd/hpijs/hp-color_laserjet_4600-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4600-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4600_series-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_4600_series-hpijs.ppd.gz Binary files differindex 67bf447c9..833a53a6c 100644 --- a/ppd/hpijs/hp-color_laserjet_4600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4610-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4610-hpijs-pcl3.ppd.gz Binary files differindex 66b4f32e3..b80576992 100644 --- a/ppd/hpijs/hp-color_laserjet_4610-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4610-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4650-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4650-hpijs-pcl3.ppd.gz Binary files differindex 4a69f43ab..0cedebed1 100644 --- a/ppd/hpijs/hp-color_laserjet_4650-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4650-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4700-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4700-hpijs-pcl3.ppd.gz Binary files differindex 227ef59fc..70d02a3b0 100644 --- a/ppd/hpijs/hp-color_laserjet_4700-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4700-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_4730mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_4730mfp-hpijs-pcl3.ppd.gz Binary files differindex 44900edf1..7f2145988 100644 --- a/ppd/hpijs/hp-color_laserjet_4730mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_4730mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_5-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_5-hpijs.ppd.gz Binary files differindex a036aa0a4..70eb3e759 100644 --- a/ppd/hpijs/hp-color_laserjet_5-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_5-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz Binary files differindex b609ad58b..e0fb56dca 100644 --- a/ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_5500-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_5550-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_5550-hpijs-pcl3.ppd.gz Binary files differindex 3e3322588..35d553d67 100644 --- a/ppd/hpijs/hp-color_laserjet_5550-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_5550-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_5m-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_5m-hpijs-pcl3.ppd.gz Binary files differindex 8c763dd38..3a07084c8 100644 --- a/ppd/hpijs/hp-color_laserjet_5m-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_5m-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_8500-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_8500-hpijs-pcl3.ppd.gz Binary files differindex 8b8415675..8aea656d5 100644 --- a/ppd/hpijs/hp-color_laserjet_8500-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_8500-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_8550-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_8550-hpijs-pcl3.ppd.gz Binary files differindex 0a476ecb8..ee633b86d 100644 --- a/ppd/hpijs/hp-color_laserjet_8550-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_8550-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_9500-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_9500-hpijs-pcl3.ppd.gz Binary files differindex 18cf74161..f9230be35 100644 --- a/ppd/hpijs/hp-color_laserjet_9500-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_9500-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_9500_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_9500_mfp-hpijs-pcl3.ppd.gz Binary files differindex a9c0bcb1a..3c53568b5 100644 --- a/ppd/hpijs/hp-color_laserjet_9500_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_9500_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm1312_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm1312_mfp-hpijs-pcl3.ppd.gz Binary files differindex 052f44335..d815ba6b3 100644 --- a/ppd/hpijs/hp-color_laserjet_cm1312_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm1312_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm1312nfi_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm1312nfi_mfp-hpijs-pcl3.ppd.gz Binary files differindex 92c98bb73..13e6288f0 100644 --- a/ppd/hpijs/hp-color_laserjet_cm1312nfi_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm1312nfi_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm2320_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm2320_mfp-hpijs-pcl3.ppd.gz Binary files differindex d46683fd2..efbf28221 100644 --- a/ppd/hpijs/hp-color_laserjet_cm2320_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm2320_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm2320fxi_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm2320fxi_mfp-hpijs-pcl3.ppd.gz Binary files differindex c1278331a..98c75b123 100644 --- a/ppd/hpijs/hp-color_laserjet_cm2320fxi_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm2320fxi_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm2320n_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm2320n_mfp-hpijs-pcl3.ppd.gz Binary files differindex e7c97070d..d3e0d0db3 100644 --- a/ppd/hpijs/hp-color_laserjet_cm2320n_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm2320n_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm2320nf_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm2320nf_mfp-hpijs-pcl3.ppd.gz Binary files differindex 770259846..c1db1bd46 100644 --- a/ppd/hpijs/hp-color_laserjet_cm2320nf_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm2320nf_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz Binary files differindex b58cdae6d..2e348e62e 100644 --- a/ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm3530_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm4540_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm4540_mfp-hpijs-pcl3.ppd.gz Binary files differindex 235bfa009..c638f9622 100644 --- a/ppd/hpijs/hp-color_laserjet_cm4540_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm4540_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm4730_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm4730_mfp-hpijs-pcl3.ppd.gz Binary files differindex 943f787c6..fb477c3ce 100644 --- a/ppd/hpijs/hp-color_laserjet_cm4730_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm4730_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm6030_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm6030_mfp-hpijs-pcl3.ppd.gz Binary files differindex c12a26e88..ff61b5b0b 100644 --- a/ppd/hpijs/hp-color_laserjet_cm6030_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm6030_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm6040_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm6040_mfp-hpijs.ppd.gz Binary files differindex 998ce8bfd..7149cd7ae 100644 --- a/ppd/hpijs/hp-color_laserjet_cm6040_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm6040_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cm6049_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_cm6049_mfp-hpijs.ppd.gz Binary files differindex e155ac82c..cdf872f28 100644 --- a/ppd/hpijs/hp-color_laserjet_cm6049_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cm6049_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp1215-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp1215-hpijs.ppd.gz Binary files differindex 3b91f5521..a64bb7f73 100644 --- a/ppd/hpijs/hp-color_laserjet_cp1215-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp1215-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp1217-hpijs.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp1217-hpijs.ppd.gz Binary files differindex b6d1e6628..4f66072b7 100644 --- a/ppd/hpijs/hp-color_laserjet_cp1217-hpijs.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp1217-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp1514n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp1514n-hpijs-pcl3.ppd.gz Binary files differindex 4c47b930c..2fb474274 100644 --- a/ppd/hpijs/hp-color_laserjet_cp1514n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp1514n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp1515n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp1515n-hpijs-pcl3.ppd.gz Binary files differindex 9c7f15155..4d005a867 100644 --- a/ppd/hpijs/hp-color_laserjet_cp1515n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp1515n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp1518ni-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp1518ni-hpijs-pcl3.ppd.gz Binary files differindex d4f866749..1a9516f53 100644 --- a/ppd/hpijs/hp-color_laserjet_cp1518ni-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp1518ni-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp2025-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp2025-hpijs-pcl3.ppd.gz Binary files differindex d8a2cd0eb..82b01b543 100644 --- a/ppd/hpijs/hp-color_laserjet_cp2025-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp2025-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp2025dn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp2025dn-hpijs-pcl3.ppd.gz Binary files differindex fcf4db27d..1bf21a429 100644 --- a/ppd/hpijs/hp-color_laserjet_cp2025dn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp2025dn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp2025n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp2025n-hpijs-pcl3.ppd.gz Binary files differindex db01f61e3..cdc553b0d 100644 --- a/ppd/hpijs/hp-color_laserjet_cp2025n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp2025n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp2025x-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp2025x-hpijs-pcl3.ppd.gz Binary files differindex 657ccac66..4bc2e27f2 100644 --- a/ppd/hpijs/hp-color_laserjet_cp2025x-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp2025x-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp3505-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp3505-hpijs-pcl3.ppd.gz Binary files differindex 691945a22..b24e6924e 100644 --- a/ppd/hpijs/hp-color_laserjet_cp3505-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp3505-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp3525-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp3525-hpijs-pcl3.ppd.gz Binary files differindex f45b074a6..ed82d73d0 100644 --- a/ppd/hpijs/hp-color_laserjet_cp3525-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp3525-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp4005-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp4005-hpijs-pcl3.ppd.gz Binary files differindex 748299869..3515a8b6b 100644 --- a/ppd/hpijs/hp-color_laserjet_cp4005-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp4005-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp4020_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp4020_series-hpijs-pcl3.ppd.gz Binary files differindex ac2d3c6d1..e9ca4b3da 100644 --- a/ppd/hpijs/hp-color_laserjet_cp4020_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp4020_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp4520_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp4520_series-hpijs-pcl3.ppd.gz Binary files differindex 596a20311..00d9606b8 100644 --- a/ppd/hpijs/hp-color_laserjet_cp4520_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp4520_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp5225-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp5225-hpijs-pcl3.ppd.gz Binary files differindex cce91336c..7e83418f1 100644 --- a/ppd/hpijs/hp-color_laserjet_cp5225-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp5225-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp5225dn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp5225dn-hpijs-pcl3.ppd.gz Binary files differindex 433453dbd..699567c09 100644 --- a/ppd/hpijs/hp-color_laserjet_cp5225dn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp5225dn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp5225n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp5225n-hpijs-pcl3.ppd.gz Binary files differindex c2a60f945..47582f963 100644 --- a/ppd/hpijs/hp-color_laserjet_cp5225n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp5225n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz Binary files differindex 6a53ccff0..024239ae5 100644 --- a/ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp5520_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-color_laserjet_cp6015-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-color_laserjet_cp6015-hpijs-pcl3.ppd.gz Binary files differindex 965857f3e..b343ba09f 100644 --- a/ppd/hpijs/hp-color_laserjet_cp6015-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-color_laserjet_cp6015-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-cp1160-hpijs.ppd.gz b/ppd/hpijs/hp-cp1160-hpijs.ppd.gz Binary files differindex 03490082c..36bfc3a46 100644 --- a/ppd/hpijs/hp-cp1160-hpijs.ppd.gz +++ b/ppd/hpijs/hp-cp1160-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz Binary files differindex 550638945..57fe9d457 100644 --- a/ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1000_j110_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz Binary files differindex 9eeff4b24..f04e9ed6f 100644 --- a/ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1050_j410_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1100-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1100-hpijs.ppd.gz Binary files differindex e72657a51..d1c3258d1 100644 --- a/ppd/hpijs/hp-deskjet_1100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1120-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1120-hpijs.ppd.gz Binary files differindex a9bf84553..dcba56b9a 100644 --- a/ppd/hpijs/hp-deskjet_1120-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1120-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1125-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1125-hpijs.ppd.gz Binary files differindex f16f123c0..55e69d32a 100644 --- a/ppd/hpijs/hp-deskjet_1125-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1125-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1200c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1200c-hpijs.ppd.gz Binary files differindex 23bf374bb..fd0e2293c 100644 --- a/ppd/hpijs/hp-deskjet_1200c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1200c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1220c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1220c-hpijs.ppd.gz Binary files differindex 01391cd87..ff5700352 100644 --- a/ppd/hpijs/hp-deskjet_1220c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1220c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz Binary files differindex b3e53e483..a24abc60d 100644 --- a/ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1280-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1600c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1600c-hpijs.ppd.gz Binary files differindex e2840fa37..b63d51898 100644 --- a/ppd/hpijs/hp-deskjet_1600c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1600c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1600cm-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1600cm-hpijs.ppd.gz Binary files differindex 7ffa0ba0e..3d82336f0 100644 --- a/ppd/hpijs/hp-deskjet_1600cm-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1600cm-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_1600cn-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_1600cn-hpijs.ppd.gz Binary files differindex ba65ab216..163ddc4d5 100644 --- a/ppd/hpijs/hp-deskjet_1600cn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_1600cn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_2000_j210_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_2000_j210_series-hpijs.ppd.gz Binary files differindex 513f13625..7f1a0c654 100644 --- a/ppd/hpijs/hp-deskjet_2000_j210_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_2000_j210_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_2050_j510_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_2050_j510_series-hpijs.ppd.gz Binary files differindex ba4a04816..c4c4ca270 100644 --- a/ppd/hpijs/hp-deskjet_2050_j510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_2050_j510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3000_j310_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3000_j310_series-hpijs.ppd.gz Binary files differindex 2cc748bce..054ad7299 100644 --- a/ppd/hpijs/hp-deskjet_3000_j310_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3000_j310_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz Binary files differindex 52e3c5d5f..bb0fb44cb 100644 --- a/ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3050_j610_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3050a_j611_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3050a_j611_series-hpijs.ppd.gz Binary files differindex 71c741129..b6e179fa2 100644 --- a/ppd/hpijs/hp-deskjet_3050a_j611_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3050a_j611_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3070_b611_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3070_b611_series-hpijs.ppd.gz Binary files differindex 65a30d057..675df1099 100644 --- a/ppd/hpijs/hp-deskjet_3070_b611_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3070_b611_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3320-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3320-hpijs.ppd.gz Binary files differindex 02157e8a7..6da40b2e7 100644 --- a/ppd/hpijs/hp-deskjet_3320-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3320-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3325-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3325-hpijs.ppd.gz Binary files differindex 530d44a28..bfbe73fa0 100644 --- a/ppd/hpijs/hp-deskjet_3325-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3325-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3420-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3420-hpijs.ppd.gz Binary files differindex af9c590f0..2226feceb 100644 --- a/ppd/hpijs/hp-deskjet_3420-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3420-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3425-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3425-hpijs.ppd.gz Binary files differindex 7ee9a37c7..91ab328cf 100644 --- a/ppd/hpijs/hp-deskjet_3425-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3425-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3450-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3450-hpijs.ppd.gz Binary files differindex 8da1192ac..1a1f9987a 100644 --- a/ppd/hpijs/hp-deskjet_3450-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3450-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3500-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3500-hpijs.ppd.gz Binary files differindex 18655280e..f9eb048bf 100644 --- a/ppd/hpijs/hp-deskjet_3500-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3500-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3550-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3550-hpijs.ppd.gz Binary files differindex a3f7e72c3..ca4de047e 100644 --- a/ppd/hpijs/hp-deskjet_3550-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3550-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3600-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3600-hpijs.ppd.gz Binary files differindex 294b15f5f..5864c3514 100644 --- a/ppd/hpijs/hp-deskjet_3600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz Binary files differindex 19b89f6b4..430b731bd 100644 --- a/ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3650-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3740-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3740-hpijs.ppd.gz Binary files differindex cf0c97cb9..e3352f3e5 100644 --- a/ppd/hpijs/hp-deskjet_3740-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3740-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3810-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3810-hpijs.ppd.gz Binary files differindex a9c0ac23e..d5b22e9ee 100644 --- a/ppd/hpijs/hp-deskjet_3810-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3810-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3816-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3816-hpijs.ppd.gz Binary files differindex 59ff0656f..63b25694f 100644 --- a/ppd/hpijs/hp-deskjet_3816-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3816-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3819-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3819-hpijs.ppd.gz Binary files differindex 968dab08b..321f0f9e9 100644 --- a/ppd/hpijs/hp-deskjet_3819-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3819-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz Binary files differindex ffa540d4a..f853aecba 100644 --- a/ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3820-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3822-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3822-hpijs.ppd.gz Binary files differindex 5aaabda5e..c6686e3de 100644 --- a/ppd/hpijs/hp-deskjet_3822-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3822-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3840-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3840-hpijs.ppd.gz Binary files differindex 91fd14f35..5cc64c754 100644 --- a/ppd/hpijs/hp-deskjet_3840-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3840-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3870-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3870-hpijs.ppd.gz Binary files differindex ca03cded9..30c94fcd9 100644 --- a/ppd/hpijs/hp-deskjet_3870-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3870-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3900-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3900-hpijs.ppd.gz Binary files differindex c87c71622..8d9a20f1f 100644 --- a/ppd/hpijs/hp-deskjet_3900-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3900-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3910-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3910-hpijs.ppd.gz Binary files differindex 986cca194..6edb21f85 100644 --- a/ppd/hpijs/hp-deskjet_3910-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3910-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3920-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3920-hpijs.ppd.gz Binary files differindex 98e7f74dc..16d26f21a 100644 --- a/ppd/hpijs/hp-deskjet_3920-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3920-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_3940-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_3940-hpijs.ppd.gz Binary files differindex 11fb51472..5cc1fcc22 100644 --- a/ppd/hpijs/hp-deskjet_3940-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_3940-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_400-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_400-hpijs.ppd.gz Binary files differindex 70751f7fa..46741530c 100644 --- a/ppd/hpijs/hp-deskjet_400-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_400-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz Binary files differindex a4808fadd..9b31aa654 100644 --- a/ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_400l-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_460-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_460-hpijs.ppd.gz Binary files differindex e3580e610..77dc1bdf5 100644 --- a/ppd/hpijs/hp-deskjet_460-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_460-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_500-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_500-hpijs.ppd.gz Binary files differindex ad84d2bc3..2771717b0 100644 --- a/ppd/hpijs/hp-deskjet_500-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_500-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_500c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_500c-hpijs.ppd.gz Binary files differindex be31134b2..fbc27b8a7 100644 --- a/ppd/hpijs/hp-deskjet_500c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_500c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz Binary files differindex c04a17aa9..310651070 100644 --- a/ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_505j-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_510-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_510-hpijs.ppd.gz Binary files differindex 9458dc775..c74641cc2 100644 --- a/ppd/hpijs/hp-deskjet_510-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_510-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz Binary files differindex a182ca85b..f3a8b27c3 100644 --- a/ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_520-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_520-hpijs.ppd.gz Binary files differindex 8f9a50478..6d2eaff9d 100644 --- a/ppd/hpijs/hp-deskjet_520-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_520-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_540-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_540-hpijs.ppd.gz Binary files differindex 164c987f1..f58df063a 100644 --- a/ppd/hpijs/hp-deskjet_540-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_540-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5400_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5400_series-hpijs.ppd.gz Binary files differindex d9fd0c14f..23814b8ba 100644 --- a/ppd/hpijs/hp-deskjet_5400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_550c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_550c-hpijs.ppd.gz Binary files differindex 173eefc30..f446bec80 100644 --- a/ppd/hpijs/hp-deskjet_550c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_550c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5550-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5550-hpijs.ppd.gz Binary files differindex 949863e1b..b7be68a08 100644 --- a/ppd/hpijs/hp-deskjet_5550-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5550-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5551-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5551-hpijs.ppd.gz Binary files differindex 5f5b5fda1..cbb3bafc5 100644 --- a/ppd/hpijs/hp-deskjet_5551-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5551-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5552-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5552-hpijs.ppd.gz Binary files differindex 797d06091..9659acfc9 100644 --- a/ppd/hpijs/hp-deskjet_5552-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5552-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5600-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5600-hpijs.ppd.gz Binary files differindex 8451b27d4..04e2140c5 100644 --- a/ppd/hpijs/hp-deskjet_5600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5650-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5650-hpijs.ppd.gz Binary files differindex 4dd988fc5..ca44f7f77 100644 --- a/ppd/hpijs/hp-deskjet_5650-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5650-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5652-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5652-hpijs.ppd.gz Binary files differindex 12cdaa78f..daca58b34 100644 --- a/ppd/hpijs/hp-deskjet_5652-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5652-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5700-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5700-hpijs.ppd.gz Binary files differindex cae38ff05..f49d7eb4d 100644 --- a/ppd/hpijs/hp-deskjet_5700-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5700-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5800-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5800-hpijs.ppd.gz Binary files differindex 43b5a45c2..192d20f5d 100644 --- a/ppd/hpijs/hp-deskjet_5800-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5800-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5850-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5850-hpijs.ppd.gz Binary files differindex dd55d2992..825104cd8 100644 --- a/ppd/hpijs/hp-deskjet_5850-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5850-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_5900_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_5900_series-hpijs.ppd.gz Binary files differindex 1e972eda9..89c1f9032 100644 --- a/ppd/hpijs/hp-deskjet_5900_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_5900_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_600-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_600-hpijs.ppd.gz Binary files differindex eac4ee3fc..2cf5e3ca6 100644 --- a/ppd/hpijs/hp-deskjet_600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_610c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_610c-hpijs.ppd.gz Binary files differindex 42d9b2e24..c20217f2f 100644 --- a/ppd/hpijs/hp-deskjet_610c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_610c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_610cl-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_610cl-hpijs.ppd.gz Binary files differindex 5d2127f13..e280bf298 100644 --- a/ppd/hpijs/hp-deskjet_610cl-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_610cl-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6120-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6120-hpijs.ppd.gz Binary files differindex 39e16f609..4608ae6ef 100644 --- a/ppd/hpijs/hp-deskjet_6120-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6120-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6122-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6122-hpijs.ppd.gz Binary files differindex fdda31ac8..87077e081 100644 --- a/ppd/hpijs/hp-deskjet_6122-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6122-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6127-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6127-hpijs.ppd.gz Binary files differindex 1976f5e09..237d75175 100644 --- a/ppd/hpijs/hp-deskjet_6127-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6127-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_612c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_612c-hpijs.ppd.gz Binary files differindex 11d89db16..f39d1001a 100644 --- a/ppd/hpijs/hp-deskjet_612c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_612c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_630c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_630c-hpijs.ppd.gz Binary files differindex 99de32c8a..31c9499f1 100644 --- a/ppd/hpijs/hp-deskjet_630c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_630c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_632c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_632c-hpijs.ppd.gz Binary files differindex a6dd781c4..bcb99b2d5 100644 --- a/ppd/hpijs/hp-deskjet_632c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_632c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_640c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_640c-hpijs.ppd.gz Binary files differindex 9e866915e..5677b4fbe 100644 --- a/ppd/hpijs/hp-deskjet_640c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_640c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_648c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_648c-hpijs.ppd.gz Binary files differindex 0521a267a..52559f1d4 100644 --- a/ppd/hpijs/hp-deskjet_648c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_648c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6500-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6500-hpijs.ppd.gz Binary files differindex a78f4318c..7956a4d6c 100644 --- a/ppd/hpijs/hp-deskjet_6500-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6500-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_656c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_656c-hpijs.ppd.gz Binary files differindex 43407178e..ef9dc8e26 100644 --- a/ppd/hpijs/hp-deskjet_656c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_656c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_660-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_660-hpijs.ppd.gz Binary files differindex 5ad49b5b4..0065df18e 100644 --- a/ppd/hpijs/hp-deskjet_660-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_660-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6600-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6600-hpijs.ppd.gz Binary files differindex 5cfa04dfc..588b56523 100644 --- a/ppd/hpijs/hp-deskjet_6600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_670-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_670-hpijs.ppd.gz Binary files differindex 69d50b8c1..d0d718e28 100644 --- a/ppd/hpijs/hp-deskjet_670-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_670-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_670c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_670c-hpijs.ppd.gz Binary files differindex 8db1bd1fd..a933a9d89 100644 --- a/ppd/hpijs/hp-deskjet_670c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_670c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_670tv-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_670tv-hpijs.ppd.gz Binary files differindex aa84f2345..ed9e61dce 100644 --- a/ppd/hpijs/hp-deskjet_670tv-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_670tv-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz Binary files differindex a7447d1be..d0e8f4de8 100644 --- a/ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_672c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_680-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_680-hpijs.ppd.gz Binary files differindex 63dbc8b60..d2b7bbdef 100644 --- a/ppd/hpijs/hp-deskjet_680-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_680-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6800-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6800-hpijs.ppd.gz Binary files differindex 268fec829..06a3e7370 100644 --- a/ppd/hpijs/hp-deskjet_6800-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6800-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz Binary files differindex 7fc186a6f..20c231677 100644 --- a/ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_682-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_690-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_690-hpijs.ppd.gz Binary files differindex d890de125..60a199c84 100644 --- a/ppd/hpijs/hp-deskjet_690-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_690-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_690c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_690c-hpijs.ppd.gz Binary files differindex 836b998b9..1364a2956 100644 --- a/ppd/hpijs/hp-deskjet_690c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_690c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_692-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_692-hpijs.ppd.gz Binary files differindex 28474ffe3..5469b0c8e 100644 --- a/ppd/hpijs/hp-deskjet_692-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_692-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_693-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_693-hpijs.ppd.gz Binary files differindex 844c1e2fb..5c5e3c681 100644 --- a/ppd/hpijs/hp-deskjet_693-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_693-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_694-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_694-hpijs.ppd.gz Binary files differindex 48fdc0977..89ed9dc47 100644 --- a/ppd/hpijs/hp-deskjet_694-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_694-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6940_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6940_series-hpijs.ppd.gz Binary files differindex 6e0e6f6be..53b428b0b 100644 --- a/ppd/hpijs/hp-deskjet_6940_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6940_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_695-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_695-hpijs.ppd.gz Binary files differindex 85ff500a0..ca424d726 100644 --- a/ppd/hpijs/hp-deskjet_695-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_695-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_697-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_697-hpijs.ppd.gz Binary files differindex 44ee3b06c..df7023146 100644 --- a/ppd/hpijs/hp-deskjet_697-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_697-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_6980_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_6980_series-hpijs.ppd.gz Binary files differindex 4ad4c75ad..58ee4a60c 100644 --- a/ppd/hpijs/hp-deskjet_6980_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_6980_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_810c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_810c-hpijs.ppd.gz Binary files differindex 66987d8b9..3fb257236 100644 --- a/ppd/hpijs/hp-deskjet_810c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_810c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_812c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_812c-hpijs.ppd.gz Binary files differindex 0e67f53e5..de6405c43 100644 --- a/ppd/hpijs/hp-deskjet_812c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_812c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_815c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_815c-hpijs.ppd.gz Binary files differindex 3a32130ca..adbda65a3 100644 --- a/ppd/hpijs/hp-deskjet_815c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_815c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_816c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_816c-hpijs.ppd.gz Binary files differindex 6d34ccbc1..a4def89b2 100644 --- a/ppd/hpijs/hp-deskjet_816c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_816c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_825c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_825c-hpijs.ppd.gz Binary files differindex 9572d3eb6..ea23f8c15 100644 --- a/ppd/hpijs/hp-deskjet_825c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_825c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_830c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_830c-hpijs.ppd.gz Binary files differindex 21f53eb17..79e081aaf 100644 --- a/ppd/hpijs/hp-deskjet_830c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_830c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_832c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_832c-hpijs.ppd.gz Binary files differindex 009b33f9d..c3d172a33 100644 --- a/ppd/hpijs/hp-deskjet_832c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_832c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_840c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_840c-hpijs.ppd.gz Binary files differindex a8c1abf8d..520c36dbf 100644 --- a/ppd/hpijs/hp-deskjet_840c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_840c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz Binary files differindex 00da2ef06..fb63dc23f 100644 --- a/ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_841c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_842c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_842c-hpijs.ppd.gz Binary files differindex 13b7d3aba..1e5a734a0 100644 --- a/ppd/hpijs/hp-deskjet_842c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_842c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz Binary files differindex 568d44431..19f43e5b8 100644 --- a/ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_843c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_845c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_845c-hpijs.ppd.gz Binary files differindex 9668828d4..9150a74ff 100644 --- a/ppd/hpijs/hp-deskjet_845c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_845c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_850c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_850c-hpijs.ppd.gz Binary files differindex 0fd1977fb..39b44b206 100644 --- a/ppd/hpijs/hp-deskjet_850c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_850c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_855c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_855c-hpijs.ppd.gz Binary files differindex 0eed0f3aa..1a4a396c1 100644 --- a/ppd/hpijs/hp-deskjet_855c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_855c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_870c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_870c-hpijs.ppd.gz Binary files differindex e39210ca6..52770e935 100644 --- a/ppd/hpijs/hp-deskjet_870c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_870c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_880c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_880c-hpijs.ppd.gz Binary files differindex 5add29aea..b6f169921 100644 --- a/ppd/hpijs/hp-deskjet_880c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_880c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz Binary files differindex 282ca5a74..d2dcef6c4 100644 --- a/ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_882c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_890c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_890c-hpijs.ppd.gz Binary files differindex fbd809785..bf450c031 100644 --- a/ppd/hpijs/hp-deskjet_890c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_890c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_895c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_895c-hpijs.ppd.gz Binary files differindex 770e3633c..e9fe8d5da 100644 --- a/ppd/hpijs/hp-deskjet_895c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_895c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_916c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_916c-hpijs.ppd.gz Binary files differindex 38fd6474e..b3f48e96c 100644 --- a/ppd/hpijs/hp-deskjet_916c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_916c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_920c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_920c-hpijs.ppd.gz Binary files differindex 93e250baa..cb7fb410e 100644 --- a/ppd/hpijs/hp-deskjet_920c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_920c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_9300-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_9300-hpijs.ppd.gz Binary files differindex 1fcaec861..e285e1655 100644 --- a/ppd/hpijs/hp-deskjet_9300-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_9300-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_930c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_930c-hpijs.ppd.gz Binary files differindex 47281d369..b7035f64b 100644 --- a/ppd/hpijs/hp-deskjet_930c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_930c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_932c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_932c-hpijs.ppd.gz Binary files differindex b12d3b1ad..e7c05b43b 100644 --- a/ppd/hpijs/hp-deskjet_932c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_932c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz Binary files differindex 51722109a..a801e5ef4 100644 --- a/ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_933c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_934c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_934c-hpijs.ppd.gz Binary files differindex 7cdb4c07c..4385bfc40 100644 --- a/ppd/hpijs/hp-deskjet_934c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_934c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz Binary files differindex eabbe05ea..f7b86e516 100644 --- a/ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_935c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_940c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_940c-hpijs.ppd.gz Binary files differindex 918119f83..fa3556ffb 100644 --- a/ppd/hpijs/hp-deskjet_940c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_940c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_948c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_948c-hpijs.ppd.gz Binary files differindex 55073a7b6..9aa80f3e2 100644 --- a/ppd/hpijs/hp-deskjet_948c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_948c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz Binary files differindex cdbc0cdcd..b45575700 100644 --- a/ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_950c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_952c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_952c-hpijs.ppd.gz Binary files differindex e3ad3f76f..72fa9ae59 100644 --- a/ppd/hpijs/hp-deskjet_952c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_952c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_955c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_955c-hpijs.ppd.gz Binary files differindex e387d9c51..8ec78456d 100644 --- a/ppd/hpijs/hp-deskjet_955c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_955c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_957c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_957c-hpijs.ppd.gz Binary files differindex dce06076c..76dad410f 100644 --- a/ppd/hpijs/hp-deskjet_957c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_957c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_959c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_959c-hpijs.ppd.gz Binary files differindex 26878add2..c186b60ab 100644 --- a/ppd/hpijs/hp-deskjet_959c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_959c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_9600-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_9600-hpijs.ppd.gz Binary files differindex 3fc1eec89..140638dfd 100644 --- a/ppd/hpijs/hp-deskjet_9600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_9600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_960c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_960c-hpijs.ppd.gz Binary files differindex d2a9a2eed..eb9d31175 100644 --- a/ppd/hpijs/hp-deskjet_960c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_960c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_970c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_970c-hpijs.ppd.gz Binary files differindex 31d9e587d..e9c1e88ab 100644 --- a/ppd/hpijs/hp-deskjet_970c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_970c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_975c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_975c-hpijs.ppd.gz Binary files differindex 1be14d0d0..1b631cec6 100644 --- a/ppd/hpijs/hp-deskjet_975c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_975c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_9800-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_9800-hpijs.ppd.gz Binary files differindex 87b71e3a0..34c79803e 100644 --- a/ppd/hpijs/hp-deskjet_9800-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_9800-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_980c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_980c-hpijs.ppd.gz Binary files differindex 608022021..d321372cf 100644 --- a/ppd/hpijs/hp-deskjet_980c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_980c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_990c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_990c-hpijs.ppd.gz Binary files differindex 5aa6961a8..1b2ded629 100644 --- a/ppd/hpijs/hp-deskjet_990c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_990c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz Binary files differindex f966643e0..3c6eb1965 100644 --- a/ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_995c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d1300_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d1300_series-hpijs.ppd.gz Binary files differindex dec2f72eb..090a289af 100644 --- a/ppd/hpijs/hp-deskjet_d1300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d1300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d1400_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d1400_series-hpijs.ppd.gz Binary files differindex a87849139..2541b9fd4 100644 --- a/ppd/hpijs/hp-deskjet_d1400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d1400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d1500_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d1500_series-hpijs.ppd.gz Binary files differindex bae228937..60763b15b 100644 --- a/ppd/hpijs/hp-deskjet_d1500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d1500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d1600_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d1600_series-hpijs.ppd.gz Binary files differindex 0fcc7909b..9f0ad4e00 100644 --- a/ppd/hpijs/hp-deskjet_d1600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d1600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d2300_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d2300_series-hpijs.ppd.gz Binary files differindex 5e533078f..6ecf2fc0b 100644 --- a/ppd/hpijs/hp-deskjet_d2300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d2300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d2400_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d2400_series-hpijs.ppd.gz Binary files differindex e717c64f9..b8735aaab 100644 --- a/ppd/hpijs/hp-deskjet_d2400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d2400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d2500_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d2500_series-hpijs.ppd.gz Binary files differindex f5355df39..7ecb803aa 100644 --- a/ppd/hpijs/hp-deskjet_d2500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d2500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d2600_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d2600_series-hpijs.ppd.gz Binary files differindex 52b6ccf8e..a9070a1e7 100644 --- a/ppd/hpijs/hp-deskjet_d2600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d2600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz Binary files differindex d0763a386..a7a0f5284 100644 --- a/ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d4100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d4200_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d4200_series-hpijs.ppd.gz Binary files differindex db1bf10ce..3b1cf3791 100644 --- a/ppd/hpijs/hp-deskjet_d4200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d4200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz Binary files differindex a8b38284a..ab359b94c 100644 --- a/ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d4300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d5500_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d5500_series-hpijs.ppd.gz Binary files differindex e198c0a65..d3eae4836 100644 --- a/ppd/hpijs/hp-deskjet_d5500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d5500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_d730-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_d730-hpijs.ppd.gz Binary files differindex 9b29a86f5..4f1834b7e 100644 --- a/ppd/hpijs/hp-deskjet_d730-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_d730-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz Binary files differindex be8154f45..9a60e4a5b 100644 --- a/ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f2100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f2200_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f2200_series-hpijs.ppd.gz Binary files differindex da51d9bf1..1777c956b 100644 --- a/ppd/hpijs/hp-deskjet_f2200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f2200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f2400_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f2400_series-hpijs.ppd.gz Binary files differindex 5158b6ba0..65f7b22dc 100644 --- a/ppd/hpijs/hp-deskjet_f2400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f2400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f300_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f300_series-hpijs.ppd.gz Binary files differindex 3a97979fd..1383aaefc 100644 --- a/ppd/hpijs/hp-deskjet_f300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f4100_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f4100_series-hpijs.ppd.gz Binary files differindex 8e9fa1645..285cefd41 100644 --- a/ppd/hpijs/hp-deskjet_f4100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f4100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f4200_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f4200_series-hpijs.ppd.gz Binary files differindex 51a0d2271..4629faa56 100644 --- a/ppd/hpijs/hp-deskjet_f4200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f4200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz Binary files differindex 222fa52d3..5d097e61f 100644 --- a/ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f4210_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f4213_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f4213_series-hpijs.ppd.gz Binary files differindex cc37a7cf8..7b0f29714 100644 --- a/ppd/hpijs/hp-deskjet_f4213_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f4213_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f4400_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f4400_series-hpijs.ppd.gz Binary files differindex 0f772f861..7b9474cf6 100644 --- a/ppd/hpijs/hp-deskjet_f4400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f4400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f4500_series-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f4500_series-hpijs.ppd.gz Binary files differindex c97c60bb3..706238e86 100644 --- a/ppd/hpijs/hp-deskjet_f4500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f4500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_f735-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_f735-hpijs.ppd.gz Binary files differindex 70c73fa90..f1a71a633 100644 --- a/ppd/hpijs/hp-deskjet_f735-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_f735-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_ink_adv_2010_k010-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_ink_adv_2010_k010-hpijs.ppd.gz Binary files differindex 41e5e80b6..d55d9e4f1 100644 --- a/ppd/hpijs/hp-deskjet_ink_adv_2010_k010-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_ink_adv_2010_k010-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_ink_adv_2060_k110-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_ink_adv_2060_k110-hpijs.ppd.gz Binary files differindex 1fca24573..336de8053 100644 --- a/ppd/hpijs/hp-deskjet_ink_adv_2060_k110-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_ink_adv_2060_k110-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_ink_advant_k109a-z-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_ink_advant_k109a-z-hpijs.ppd.gz Binary files differindex e1482d54b..62cc2da79 100644 --- a/ppd/hpijs/hp-deskjet_ink_advant_k109a-z-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_ink_advant_k109a-z-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-deskjet_ink_advant_k209a-z-hpijs.ppd.gz b/ppd/hpijs/hp-deskjet_ink_advant_k209a-z-hpijs.ppd.gz Binary files differindex 7a6917325..37b01889f 100644 --- a/ppd/hpijs/hp-deskjet_ink_advant_k209a-z-hpijs.ppd.gz +++ b/ppd/hpijs/hp-deskjet_ink_advant_k209a-z-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-dj350-hpijs.ppd.gz b/ppd/hpijs/hp-dj350-hpijs.ppd.gz Binary files differindex 79d691cf5..938f40708 100644 --- a/ppd/hpijs/hp-dj350-hpijs.ppd.gz +++ b/ppd/hpijs/hp-dj350-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-dj450-hpijs.ppd.gz b/ppd/hpijs/hp-dj450-hpijs.ppd.gz Binary files differindex d41fe2d1b..4f6b37aa7 100644 --- a/ppd/hpijs/hp-dj450-hpijs.ppd.gz +++ b/ppd/hpijs/hp-dj450-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-envy_100_d410_series-hpijs.ppd.gz b/ppd/hpijs/hp-envy_100_d410_series-hpijs.ppd.gz Binary files differindex 429c846b5..16cc35e80 100644 --- a/ppd/hpijs/hp-envy_100_d410_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-envy_100_d410_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-envy_110_series-hpijs.ppd.gz b/ppd/hpijs/hp-envy_110_series-hpijs.ppd.gz Binary files differindex 519eef752..2288e0e43 100644 --- a/ppd/hpijs/hp-envy_110_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-envy_110_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1000-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1000-hpijs.ppd.gz Binary files differindex a2d189cfb..c67ab198f 100644 --- a/ppd/hpijs/hp-laserjet_1000-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1000-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1005_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1005_series-hpijs.ppd.gz Binary files differindex 96be2b54f..adab6a861 100644 --- a/ppd/hpijs/hp-laserjet_1005_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1005_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1010-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1010-hpijs.ppd.gz Binary files differindex 6508c0acc..0ac625485 100644 --- a/ppd/hpijs/hp-laserjet_1010-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1010-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1012-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1012-hpijs.ppd.gz Binary files differindex ffe595983..5e43a81e3 100644 --- a/ppd/hpijs/hp-laserjet_1012-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1012-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz Binary files differindex 0ef74a659..f9235f7fa 100644 --- a/ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1015-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1018-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1018-hpijs.ppd.gz Binary files differindex 1c9ee60d1..7babf50d8 100644 --- a/ppd/hpijs/hp-laserjet_1018-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1018-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1020-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1020-hpijs.ppd.gz Binary files differindex be479683d..fcb274fcf 100644 --- a/ppd/hpijs/hp-laserjet_1020-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1020-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz Binary files differindex bacc38238..727b84743 100644 --- a/ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1022-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1022-hpijs-zjs.ppd.gz b/ppd/hpijs/hp-laserjet_1022-hpijs-zjs.ppd.gz Binary files differindex e98c9e89e..26422bc41 100644 --- a/ppd/hpijs/hp-laserjet_1022-hpijs-zjs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1022-hpijs-zjs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1022n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1022n-hpijs-pcl3.ppd.gz Binary files differindex 808a8ec92..9485d5709 100644 --- a/ppd/hpijs/hp-laserjet_1022n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1022n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1022n-hpijs-zjs.ppd.gz b/ppd/hpijs/hp-laserjet_1022n-hpijs-zjs.ppd.gz Binary files differindex fcabb91ae..c8af68fca 100644 --- a/ppd/hpijs/hp-laserjet_1022n-hpijs-zjs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1022n-hpijs-zjs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1022nw-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1022nw-hpijs-pcl3.ppd.gz Binary files differindex 8b916316a..36ca0e70f 100644 --- a/ppd/hpijs/hp-laserjet_1022nw-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1022nw-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1022nw-hpijs-zjs.ppd.gz b/ppd/hpijs/hp-laserjet_1022nw-hpijs-zjs.ppd.gz Binary files differindex cd757ae68..f3ddd4ec7 100644 --- a/ppd/hpijs/hp-laserjet_1022nw-hpijs-zjs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1022nw-hpijs-zjs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1100-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1100-hpijs.ppd.gz Binary files differindex 0a2973293..6ccc4a762 100644 --- a/ppd/hpijs/hp-laserjet_1100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1100a-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1100a-hpijs.ppd.gz Binary files differindex 887e4e373..85891fd12 100644 --- a/ppd/hpijs/hp-laserjet_1100a-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1100a-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1100xi-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1100xi-hpijs.ppd.gz Binary files differindex c7b9c74fe..ce8773b5b 100644 --- a/ppd/hpijs/hp-laserjet_1100xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1100xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1150-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1150-hpijs.ppd.gz Binary files differindex c6723aed5..52132c0a8 100644 --- a/ppd/hpijs/hp-laserjet_1150-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1150-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1160-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1160-hpijs.ppd.gz Binary files differindex 59414ec40..7a06960f5 100644 --- a/ppd/hpijs/hp-laserjet_1160-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1160-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1160_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1160_series-hpijs.ppd.gz Binary files differindex b520a4adf..0ec82dec7 100644 --- a/ppd/hpijs/hp-laserjet_1160_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1160_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1200-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1200-hpijs-pcl3.ppd.gz Binary files differindex e8ea91833..1371aaca7 100644 --- a/ppd/hpijs/hp-laserjet_1200-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1200-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1200n-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1200n-hpijs.ppd.gz Binary files differindex bbf07467f..8e1dc3f9c 100644 --- a/ppd/hpijs/hp-laserjet_1200n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1200n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1220-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1220-hpijs-pcl3.ppd.gz Binary files differindex 994bb5f47..27f1afb00 100644 --- a/ppd/hpijs/hp-laserjet_1220-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1220-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1220se-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1220se-hpijs.ppd.gz Binary files differindex 237089b15..446648983 100644 --- a/ppd/hpijs/hp-laserjet_1220se-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1220se-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz Binary files differindex e5b879de7..77b7207a3 100644 --- a/ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1300-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1300n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1300n-hpijs-pcl3.ppd.gz Binary files differindex d48b4c4f3..9254785cb 100644 --- a/ppd/hpijs/hp-laserjet_1300n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1300n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1300xi-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1300xi-hpijs-pcl3.ppd.gz Binary files differindex db2d50d2b..6fbe46f77 100644 --- a/ppd/hpijs/hp-laserjet_1300xi-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1300xi-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1320-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1320-hpijs.ppd.gz Binary files differindex 9918b1722..d78cde06d 100644 --- a/ppd/hpijs/hp-laserjet_1320-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1320-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1320_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_1320_series-hpijs-pcl3.ppd.gz Binary files differindex de83c390e..f94aeb8cf 100644 --- a/ppd/hpijs/hp-laserjet_1320_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1320_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1320n-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1320n-hpijs.ppd.gz Binary files differindex 4c18aa21e..eaee0f7c5 100644 --- a/ppd/hpijs/hp-laserjet_1320n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1320n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1320nw-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1320nw-hpijs.ppd.gz Binary files differindex cbb2db39f..b6a80f6f8 100644 --- a/ppd/hpijs/hp-laserjet_1320nw-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1320nw-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_1320tn-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_1320tn-hpijs.ppd.gz Binary files differindex cfc3fefbc..bc917e9c1 100644 --- a/ppd/hpijs/hp-laserjet_1320tn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_1320tn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2100-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_2100-hpijs.ppd.gz Binary files differindex 6a0534ec6..208665c11 100644 --- a/ppd/hpijs/hp-laserjet_2100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2100_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_2100_series-hpijs-pcl3.ppd.gz Binary files differindex 148a64748..bc8b0e17b 100644 --- a/ppd/hpijs/hp-laserjet_2100_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2100_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2200-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_2200-hpijs-pcl3.ppd.gz Binary files differindex 165b41e6a..5fedbcaf8 100644 --- a/ppd/hpijs/hp-laserjet_2200-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2200-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2200_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_2200_series-hpijs.ppd.gz Binary files differindex 740a0804f..edacf9fc7 100644 --- a/ppd/hpijs/hp-laserjet_2200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz Binary files differindex 665846bdc..6a5e59557 100644 --- a/ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2300-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2300_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_2300_series-hpijs.ppd.gz Binary files differindex e9173bf7d..939213664 100644 --- a/ppd/hpijs/hp-laserjet_2300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2410-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_2410-hpijs-pcl3.ppd.gz Binary files differindex 9dfed72b1..e88fd8171 100644 --- a/ppd/hpijs/hp-laserjet_2410-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2410-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2420-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_2420-hpijs-pcl3.ppd.gz Binary files differindex 33f73df79..a9fabb1b5 100644 --- a/ppd/hpijs/hp-laserjet_2420-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2420-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_2430-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_2430-hpijs-pcl3.ppd.gz Binary files differindex f3c2f0dd7..fc28d1375 100644 --- a/ppd/hpijs/hp-laserjet_2430-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_2430-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3015-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3015-hpijs-pcl3.ppd.gz Binary files differindex 611d9022f..b7d1beb1d 100644 --- a/ppd/hpijs/hp-laserjet_3015-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3015-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz Binary files differindex d45eada8a..cc835cdc0 100644 --- a/ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3020-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3030-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3030-hpijs-pcl3.ppd.gz Binary files differindex e28fce3c7..be9654324 100644 --- a/ppd/hpijs/hp-laserjet_3030-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3030-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3050-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3050-hpijs-pcl3.ppd.gz Binary files differindex 4214f0d9b..d98c332ab 100644 --- a/ppd/hpijs/hp-laserjet_3050-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3050-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3052-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3052-hpijs-pcl3.ppd.gz Binary files differindex 7f6c8d80c..2f3808d9c 100644 --- a/ppd/hpijs/hp-laserjet_3052-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3052-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3055-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3055-hpijs.ppd.gz Binary files differindex 0e89a16fe..e47ff3fc1 100644 --- a/ppd/hpijs/hp-laserjet_3055-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3055-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3100-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3100-hpijs.ppd.gz Binary files differindex b65a29b58..b4fc85a9c 100644 --- a/ppd/hpijs/hp-laserjet_3100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3150-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3150-hpijs.ppd.gz Binary files differindex 29708f9b7..62da91c23 100644 --- a/ppd/hpijs/hp-laserjet_3150-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3150-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3200-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3200-hpijs.ppd.gz Binary files differindex 7f02ba89f..b101d1bf4 100644 --- a/ppd/hpijs/hp-laserjet_3200-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3200-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3200m-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3200m-hpijs-pcl3.ppd.gz Binary files differindex 05272c88a..aa5859323 100644 --- a/ppd/hpijs/hp-laserjet_3200m-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3200m-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3200se-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3200se-hpijs.ppd.gz Binary files differindex 3a28b36a3..5bab32678 100644 --- a/ppd/hpijs/hp-laserjet_3200se-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3200se-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3300_3310_3320-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3300_3310_3320-hpijs-pcl3.ppd.gz Binary files differindex e1af08765..8dfc3f1c2 100644 --- a/ppd/hpijs/hp-laserjet_3300_3310_3320-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3300_3310_3320-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3330-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3330-hpijs.ppd.gz Binary files differindex 186a2b962..9faf5ee17 100644 --- a/ppd/hpijs/hp-laserjet_3330-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3330-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz Binary files differindex 123f20289..4f26fe171 100644 --- a/ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3380-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3390-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_3390-hpijs-pcl3.ppd.gz Binary files differindex 8b18929e2..7de5f8245 100644 --- a/ppd/hpijs/hp-laserjet_3390-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3390-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_3392-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_3392-hpijs.ppd.gz Binary files differindex 297c8cc3b..9f86fc5dc 100644 --- a/ppd/hpijs/hp-laserjet_3392-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_3392-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4000_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4000_series-hpijs-pcl3.ppd.gz Binary files differindex fcf51003b..f45f13a95 100644 --- a/ppd/hpijs/hp-laserjet_4000_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4000_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4050_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4050_series-hpijs-pcl3.ppd.gz Binary files differindex ab465afdb..b4ee507d1 100644 --- a/ppd/hpijs/hp-laserjet_4050_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4050_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4100_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4100_mfp-hpijs-pcl3.ppd.gz Binary files differindex c01d2dd15..db962f91e 100644 --- a/ppd/hpijs/hp-laserjet_4100_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4100_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4100_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4100_series-hpijs-pcl3.ppd.gz Binary files differindex 717c75bcb..0b52b5a40 100644 --- a/ppd/hpijs/hp-laserjet_4100_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4100_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4150_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_4150_series-hpijs.ppd.gz Binary files differindex 8a4409f5c..1dc3d84e1 100644 --- a/ppd/hpijs/hp-laserjet_4150_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4150_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4200-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4200-hpijs-pcl3.ppd.gz Binary files differindex 3f0c9c020..9d4fb4e65 100644 --- a/ppd/hpijs/hp-laserjet_4200-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4200-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4240-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4240-hpijs-pcl3.ppd.gz Binary files differindex df3d89ca4..7c0ca91b3 100644 --- a/ppd/hpijs/hp-laserjet_4240-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4240-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4250-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4250-hpijs-pcl3.ppd.gz Binary files differindex 61e309303..5a55cd24c 100644 --- a/ppd/hpijs/hp-laserjet_4250-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4250-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4300-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4300-hpijs-pcl3.ppd.gz Binary files differindex a3ab3b0fe..7795abbc0 100644 --- a/ppd/hpijs/hp-laserjet_4300-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4300-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4345_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4345_mfp-hpijs-pcl3.ppd.gz Binary files differindex 8f6c0b4ec..f67ceb7af 100644 --- a/ppd/hpijs/hp-laserjet_4345_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4345_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4350-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4350-hpijs-pcl3.ppd.gz Binary files differindex 3dbf59243..1ad8893c6 100644 --- a/ppd/hpijs/hp-laserjet_4350-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4350-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4_plus-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4_plus-hpijs-pcl3.ppd.gz Binary files differindex 98e5688be..318049b43 100644 --- a/ppd/hpijs/hp-laserjet_4_plus-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4_plus-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4l-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_4l-hpijs.ppd.gz Binary files differindex e7678bfdd..f1221be2b 100644 --- a/ppd/hpijs/hp-laserjet_4l-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4l-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4ml-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_4ml-hpijs.ppd.gz Binary files differindex 68aeabe3f..2265f147e 100644 --- a/ppd/hpijs/hp-laserjet_4ml-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4ml-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4mp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4mp-hpijs-pcl3.ppd.gz Binary files differindex c1479051a..169f38021 100644 --- a/ppd/hpijs/hp-laserjet_4mp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4mp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4si-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4si-hpijs-pcl3.ppd.gz Binary files differindex 71a2bd634..f825e5711 100644 --- a/ppd/hpijs/hp-laserjet_4si-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4si-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_4v-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_4v-hpijs-pcl3.ppd.gz Binary files differindex e59c95438..01f78f149 100644 --- a/ppd/hpijs/hp-laserjet_4v-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_4v-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5000-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_5000-hpijs.ppd.gz Binary files differindex bf3a0d41d..21174d832 100644 --- a/ppd/hpijs/hp-laserjet_5000-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5000-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5000_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5000_series-hpijs-pcl3.ppd.gz Binary files differindex 77defae3c..7baf078c2 100644 --- a/ppd/hpijs/hp-laserjet_5000_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5000_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5100_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5100_series-hpijs-pcl3.ppd.gz Binary files differindex f39cea9fb..80e4be299 100644 --- a/ppd/hpijs/hp-laserjet_5100_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5100_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5200-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5200-hpijs-pcl3.ppd.gz Binary files differindex 0f190b704..9b278bcb7 100644 --- a/ppd/hpijs/hp-laserjet_5200-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5200-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5200l-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5200l-hpijs-pcl3.ppd.gz Binary files differindex dfe906889..ec0a270f5 100644 --- a/ppd/hpijs/hp-laserjet_5200l-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5200l-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5200lx-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_5200lx-hpijs.ppd.gz Binary files differindex 52c44a393..7dab20468 100644 --- a/ppd/hpijs/hp-laserjet_5200lx-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5200lx-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5l-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_5l-hpijs.ppd.gz Binary files differindex b81ba33c4..955259bcb 100644 --- a/ppd/hpijs/hp-laserjet_5l-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5l-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5mp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5mp-hpijs-pcl3.ppd.gz Binary files differindex b6bc9b43e..1fc09072b 100644 --- a/ppd/hpijs/hp-laserjet_5mp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5mp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5p-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_5p-hpijs.ppd.gz Binary files differindex 8d0f8ed95..13073a24b 100644 --- a/ppd/hpijs/hp-laserjet_5p-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5p-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5si-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5si-hpijs-pcl3.ppd.gz Binary files differindex 63be5a5bf..90cc7abb7 100644 --- a/ppd/hpijs/hp-laserjet_5si-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5si-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_5si_mopier-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_5si_mopier-hpijs-pcl3.ppd.gz Binary files differindex 938d53552..6e4f9b19c 100644 --- a/ppd/hpijs/hp-laserjet_5si_mopier-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_5si_mopier-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_6l-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_6l-hpijs.ppd.gz Binary files differindex b18320294..ccaaa3e5a 100644 --- a/ppd/hpijs/hp-laserjet_6l-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_6l-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_6mp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_6mp-hpijs-pcl3.ppd.gz Binary files differindex de3321a30..04677d935 100644 --- a/ppd/hpijs/hp-laserjet_6mp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_6mp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_6p-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_6p-hpijs.ppd.gz Binary files differindex 50d197296..de593b14a 100644 --- a/ppd/hpijs/hp-laserjet_6p-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_6p-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz Binary files differindex 4d97d715c..565efb86d 100644 --- a/ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_8000-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_8000_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_8000_series-hpijs-pcl3.ppd.gz Binary files differindex e07db8da4..bc5b33c49 100644 --- a/ppd/hpijs/hp-laserjet_8000_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_8000_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_8100_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_8100_mfp-hpijs.ppd.gz Binary files differindex 5ca4c2ccb..8711f47e2 100644 --- a/ppd/hpijs/hp-laserjet_8100_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_8100_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_8100_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_8100_series-hpijs-pcl3.ppd.gz Binary files differindex abb193863..038480b1e 100644 --- a/ppd/hpijs/hp-laserjet_8100_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_8100_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_8150_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_8150_mfp-hpijs.ppd.gz Binary files differindex 1e507c65f..0e87d2244 100644 --- a/ppd/hpijs/hp-laserjet_8150_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_8150_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz Binary files differindex f1f6ddf60..cd5e038c6 100644 --- a/ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_8150_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9000_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9000_mfp-hpijs-pcl3.ppd.gz Binary files differindex e4d465c4a..1c5571c9a 100644 --- a/ppd/hpijs/hp-laserjet_9000_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9000_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9000_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9000_series-hpijs-pcl3.ppd.gz Binary files differindex f8798dee5..fa4ecd12a 100644 --- a/ppd/hpijs/hp-laserjet_9000_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9000_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9040-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9040-hpijs-pcl3.ppd.gz Binary files differindex 2d75eda91..8b1fc731d 100644 --- a/ppd/hpijs/hp-laserjet_9040-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9040-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9040_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9040_mfp-hpijs-pcl3.ppd.gz Binary files differindex 8fa2f2f15..1476237c9 100644 --- a/ppd/hpijs/hp-laserjet_9040_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9040_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9050-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9050-hpijs-pcl3.ppd.gz Binary files differindex 340f050e5..2089bb1a0 100644 --- a/ppd/hpijs/hp-laserjet_9050-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9050-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9050_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9050_mfp-hpijs-pcl3.ppd.gz Binary files differindex dd7a585c1..8cf28eac2 100644 --- a/ppd/hpijs/hp-laserjet_9050_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9050_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9055mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9055mfp-hpijs-pcl3.ppd.gz Binary files differindex 2306be3f4..a83a5a05d 100644 --- a/ppd/hpijs/hp-laserjet_9055mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9055mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_9065mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_9065mfp-hpijs-pcl3.ppd.gz Binary files differindex aec0736d0..571366032 100644 --- a/ppd/hpijs/hp-laserjet_9065mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_9065mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1411fn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1411fn-hpijs-pcl3.ppd.gz Binary files differindex d6619ac45..289048d06 100644 --- a/ppd/hpijs/hp-laserjet_cm1411fn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1411fn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1412fn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1412fn-hpijs-pcl3.ppd.gz Binary files differindex cb5ee3bdc..715cff578 100644 --- a/ppd/hpijs/hp-laserjet_cm1412fn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1412fn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1413fn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1413fn-hpijs-pcl3.ppd.gz Binary files differindex 2d9ca432b..9f2d0d9b4 100644 --- a/ppd/hpijs/hp-laserjet_cm1413fn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1413fn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1415fn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1415fn-hpijs-pcl3.ppd.gz Binary files differindex 490036434..50a2bee60 100644 --- a/ppd/hpijs/hp-laserjet_cm1415fn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1415fn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1415fnw-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1415fnw-hpijs-pcl3.ppd.gz Binary files differindex b78630d06..04ec74fa2 100644 --- a/ppd/hpijs/hp-laserjet_cm1415fnw-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1415fnw-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1416fnw-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1416fnw-hpijs-pcl3.ppd.gz Binary files differindex 0402233c8..4715597c5 100644 --- a/ppd/hpijs/hp-laserjet_cm1416fnw-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1416fnw-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1417fnw-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1417fnw-hpijs-pcl3.ppd.gz Binary files differindex 1efd4c213..aadbe67a2 100644 --- a/ppd/hpijs/hp-laserjet_cm1417fnw-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1417fnw-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cm1418fnw-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_cm1418fnw-hpijs-pcl3.ppd.gz Binary files differindex 12e1dd845..c1ab8e187 100644 --- a/ppd/hpijs/hp-laserjet_cm1418fnw-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cm1418fnw-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cp1021-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1021-hpijs.ppd.gz Binary files differdeleted file mode 100644 index 19f633dc2..000000000 --- a/ppd/hpijs/hp-laserjet_cp1021-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-laserjet_cp1022-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1022-hpijs.ppd.gz Binary files differdeleted file mode 100644 index 63a45bece..000000000 --- a/ppd/hpijs/hp-laserjet_cp1022-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-laserjet_cp1023-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1023-hpijs.ppd.gz Binary files differdeleted file mode 100644 index 05d918784..000000000 --- a/ppd/hpijs/hp-laserjet_cp1023-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-laserjet_cp1025-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1025-hpijs.ppd.gz Binary files differindex c7665fb85..f9e87aa4c 100644 --- a/ppd/hpijs/hp-laserjet_cp1025-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cp1025-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cp1025nw-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1025nw-hpijs.ppd.gz Binary files differindex f9447a1d2..b7726fba5 100644 --- a/ppd/hpijs/hp-laserjet_cp1025nw-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_cp1025nw-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cp1027nw-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1027nw-hpijs.ppd.gz Binary files differdeleted file mode 100644 index fe4cb543b..000000000 --- a/ppd/hpijs/hp-laserjet_cp1027nw-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-laserjet_cp1028nw-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp1028nw-hpijs.ppd.gz Binary files differdeleted file mode 100644 index 972928939..000000000 --- a/ppd/hpijs/hp-laserjet_cp1028nw-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-laserjet_cp_1025-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp_1025-hpijs.ppd.gz Binary files differnew file mode 100644 index 000000000..2d8de743e --- /dev/null +++ b/ppd/hpijs/hp-laserjet_cp_1025-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_cp_1025nw-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_cp_1025nw-hpijs.ppd.gz Binary files differnew file mode 100644 index 000000000..00c09253b --- /dev/null +++ b/ppd/hpijs/hp-laserjet_cp_1025nw-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1005-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_m1005-hpijs.ppd.gz Binary files differindex 4a6460cfd..69b27a89d 100644 --- a/ppd/hpijs/hp-laserjet_m1005-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1005-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1120_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_m1120_mfp-hpijs.ppd.gz Binary files differindex 7b80b93e3..ceacab332 100644 --- a/ppd/hpijs/hp-laserjet_m1120_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1120_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1120n_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_m1120n_mfp-hpijs.ppd.gz Binary files differindex 6c3a0771e..53a788757 100644 --- a/ppd/hpijs/hp-laserjet_m1120n_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1120n_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1319f_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_m1319f_mfp-hpijs.ppd.gz Binary files differindex 446b83170..1efcb6fe4 100644 --- a/ppd/hpijs/hp-laserjet_m1319f_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1319f_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz Binary files differindex abfa4c235..a0a9f40c8 100644 --- a/ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1522nf_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1536dnf_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m1536dnf_mfp-hpijs-pcl3.ppd.gz Binary files differindex 47bb69628..dc46a8410 100644 --- a/ppd/hpijs/hp-laserjet_m1536dnf_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1536dnf_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1537dnf_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m1537dnf_mfp-hpijs-pcl3.ppd.gz Binary files differindex 8ead649e0..9d4b70e43 100644 --- a/ppd/hpijs/hp-laserjet_m1537dnf_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1537dnf_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1538dnf_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m1538dnf_mfp-hpijs-pcl3.ppd.gz Binary files differindex c6784429a..da6af51d8 100644 --- a/ppd/hpijs/hp-laserjet_m1538dnf_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1538dnf_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m1539dnf_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m1539dnf_mfp-hpijs-pcl3.ppd.gz Binary files differindex 3c75e8d70..9bcb61fcb 100644 --- a/ppd/hpijs/hp-laserjet_m1539dnf_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m1539dnf_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m2727_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m2727_mfp-hpijs-pcl3.ppd.gz Binary files differindex aebe8fe7d..739e1c584 100644 --- a/ppd/hpijs/hp-laserjet_m2727_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m2727_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m3027_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m3027_mfp-hpijs-pcl3.ppd.gz Binary files differindex 45ed9b8eb..4614d1e7b 100644 --- a/ppd/hpijs/hp-laserjet_m3027_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m3027_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m3035_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m3035_mfp-hpijs-pcl3.ppd.gz Binary files differindex b0a3adc96..2b9f51537 100644 --- a/ppd/hpijs/hp-laserjet_m3035_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m3035_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz Binary files differindex 1a45cffbe..66a6c1fe3 100644 --- a/ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m4345_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m4349_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m4349_mfp-hpijs-pcl3.ppd.gz Binary files differindex 33234219f..ad5d2dfb1 100644 --- a/ppd/hpijs/hp-laserjet_m4349_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m4349_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m5025_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m5025_mfp-hpijs-pcl3.ppd.gz Binary files differindex 497d83560..99eb40bdd 100644 --- a/ppd/hpijs/hp-laserjet_m5025_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m5025_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m5035_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m5035_mfp-hpijs-pcl3.ppd.gz Binary files differindex 61da5479c..02170cfb3 100644 --- a/ppd/hpijs/hp-laserjet_m5035_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m5035_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m5039_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m5039_mfp-hpijs-pcl3.ppd.gz Binary files differindex 130339d1d..8592964c7 100644 --- a/ppd/hpijs/hp-laserjet_m5039_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m5039_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m9040_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m9040_mfp-hpijs-pcl3.ppd.gz Binary files differindex 3e3a85fe9..8e3583ae4 100644 --- a/ppd/hpijs/hp-laserjet_m9040_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m9040_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m9050_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m9050_mfp-hpijs-pcl3.ppd.gz Binary files differindex fc5f39b0c..96954fa0c 100644 --- a/ppd/hpijs/hp-laserjet_m9050_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m9050_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_m9059_mfp-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_m9059_mfp-hpijs-pcl3.ppd.gz Binary files differindex 90624ce4c..374647058 100644 --- a/ppd/hpijs/hp-laserjet_m9059_mfp-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_m9059_mfp-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1005-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p1005-hpijs.ppd.gz Binary files differindex 6487088bf..95e75838a 100644 --- a/ppd/hpijs/hp-laserjet_p1005-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1005-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1006-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p1006-hpijs.ppd.gz Binary files differindex a6359840a..0e652795f 100644 --- a/ppd/hpijs/hp-laserjet_p1006-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1006-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1007-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p1007-hpijs.ppd.gz Binary files differindex c41e59072..67909c07f 100644 --- a/ppd/hpijs/hp-laserjet_p1007-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1007-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1008-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p1008-hpijs.ppd.gz Binary files differindex dcdb1323b..ede16633b 100644 --- a/ppd/hpijs/hp-laserjet_p1008-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1008-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1009-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p1009-hpijs.ppd.gz Binary files differindex 15f742584..5e5a25516 100644 --- a/ppd/hpijs/hp-laserjet_p1009-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1009-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1505-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p1505-hpijs.ppd.gz Binary files differindex 3b5a84d40..bce66cd69 100644 --- a/ppd/hpijs/hp-laserjet_p1505-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1505-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1505n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p1505n-hpijs-pcl3.ppd.gz Binary files differindex 080e8c1b2..efb9a73e6 100644 --- a/ppd/hpijs/hp-laserjet_p1505n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1505n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p1505n-hpijs-zxs.ppd.gz b/ppd/hpijs/hp-laserjet_p1505n-hpijs-zxs.ppd.gz Binary files differindex d1f3d2d27..c725137df 100644 --- a/ppd/hpijs/hp-laserjet_p1505n-hpijs-zxs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p1505n-hpijs-zxs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2014-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2014-hpijs-pcl3.ppd.gz Binary files differindex 31e729925..ab58c91c7 100644 --- a/ppd/hpijs/hp-laserjet_p2014-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2014-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2014-hpijs-zxs.ppd.gz b/ppd/hpijs/hp-laserjet_p2014-hpijs-zxs.ppd.gz Binary files differindex ceadf69c1..37b301c1c 100644 --- a/ppd/hpijs/hp-laserjet_p2014-hpijs-zxs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2014-hpijs-zxs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2014n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2014n-hpijs-pcl3.ppd.gz Binary files differindex 7215c9933..fb56736f8 100644 --- a/ppd/hpijs/hp-laserjet_p2014n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2014n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2014n-hpijs-zxs.ppd.gz b/ppd/hpijs/hp-laserjet_p2014n-hpijs-zxs.ppd.gz Binary files differindex 070d26f5e..e00f99b66 100644 --- a/ppd/hpijs/hp-laserjet_p2014n-hpijs-zxs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2014n-hpijs-zxs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2015_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2015_series-hpijs-pcl3.ppd.gz Binary files differindex 8c2cfcad1..8ed892dc4 100644 --- a/ppd/hpijs/hp-laserjet_p2015_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2015_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2015d_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p2015d_series-hpijs.ppd.gz Binary files differindex 82aaf5ced..e810bb3c8 100644 --- a/ppd/hpijs/hp-laserjet_p2015d_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2015d_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2015dn_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p2015dn_series-hpijs.ppd.gz Binary files differindex 9e09029f7..0f5efa12d 100644 --- a/ppd/hpijs/hp-laserjet_p2015dn_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2015dn_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2015n_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p2015n_series-hpijs.ppd.gz Binary files differindex 50e88d036..bba8d43e4 100644 --- a/ppd/hpijs/hp-laserjet_p2015n_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2015n_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2015x_series-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p2015x_series-hpijs.ppd.gz Binary files differindex c39a8fb26..c7af63f56 100644 --- a/ppd/hpijs/hp-laserjet_p2015x_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2015x_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2035-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2035-hpijs-pcl3.ppd.gz Binary files differindex 5c9b12b69..a01a30f38 100644 --- a/ppd/hpijs/hp-laserjet_p2035-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2035-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz b/ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz Binary files differindex 1e5db4bae..ea88e75c3 100644 --- a/ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2035-hpijs-zjs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2035n-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2035n-hpijs-pcl3.ppd.gz Binary files differindex 40642df7e..f7d45e3b9 100644 --- a/ppd/hpijs/hp-laserjet_p2035n-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2035n-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2035n-hpijs-zjs.ppd.gz b/ppd/hpijs/hp-laserjet_p2035n-hpijs-zjs.ppd.gz Binary files differindex a1e468ef5..f990400c4 100644 --- a/ppd/hpijs/hp-laserjet_p2035n-hpijs-zjs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2035n-hpijs-zjs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2055-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2055-hpijs-pcl3.ppd.gz Binary files differindex 2653a36df..7365ebb6c 100644 --- a/ppd/hpijs/hp-laserjet_p2055-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2055-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2055d-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2055d-hpijs-pcl3.ppd.gz Binary files differindex e2e6d1950..3e0f895c1 100644 --- a/ppd/hpijs/hp-laserjet_p2055d-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2055d-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2055dn-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2055dn-hpijs-pcl3.ppd.gz Binary files differindex 4f43245d1..548a6ab4d 100644 --- a/ppd/hpijs/hp-laserjet_p2055dn-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2055dn-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p2055x-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p2055x-hpijs-pcl3.ppd.gz Binary files differindex 13c660af3..0f5ea11f7 100644 --- a/ppd/hpijs/hp-laserjet_p2055x-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p2055x-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p3004-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p3004-hpijs-pcl3.ppd.gz Binary files differindex 66039612a..5baaea506 100644 --- a/ppd/hpijs/hp-laserjet_p3004-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p3004-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p3005-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p3005-hpijs-pcl3.ppd.gz Binary files differindex 72042638b..a2171728b 100644 --- a/ppd/hpijs/hp-laserjet_p3005-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p3005-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p3010_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-laserjet_p3010_series-hpijs-pcl3.ppd.gz Binary files differindex 120984408..f960849b7 100644 --- a/ppd/hpijs/hp-laserjet_p3010_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p3010_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4014-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4014-hpijs.ppd.gz Binary files differindex 49d87466d..54f94bab0 100644 --- a/ppd/hpijs/hp-laserjet_p4014-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4014-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4014dn-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4014dn-hpijs.ppd.gz Binary files differindex 24170585a..a961e2e42 100644 --- a/ppd/hpijs/hp-laserjet_p4014dn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4014dn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4014n-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4014n-hpijs.ppd.gz Binary files differindex 43d770cce..926669a69 100644 --- a/ppd/hpijs/hp-laserjet_p4014n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4014n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4015-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4015-hpijs.ppd.gz Binary files differindex b8bfc68ec..f9953a1b9 100644 --- a/ppd/hpijs/hp-laserjet_p4015-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4015-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4015dn-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4015dn-hpijs.ppd.gz Binary files differindex a44af5574..2f995e93f 100644 --- a/ppd/hpijs/hp-laserjet_p4015dn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4015dn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4015n-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4015n-hpijs.ppd.gz Binary files differindex bc6c00ca5..c012b4ba7 100644 --- a/ppd/hpijs/hp-laserjet_p4015n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4015n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4015tn-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4015tn-hpijs.ppd.gz Binary files differindex ce737d5f6..b5a0e17ee 100644 --- a/ppd/hpijs/hp-laserjet_p4015tn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4015tn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz Binary files differindex f3ca5a29f..4666307a5 100644 --- a/ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4015x-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4515-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4515-hpijs.ppd.gz Binary files differindex 081730fc1..6a977b7eb 100644 --- a/ppd/hpijs/hp-laserjet_p4515-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4515-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4515n-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4515n-hpijs.ppd.gz Binary files differindex a6e5f2bd9..6fe8cbd76 100644 --- a/ppd/hpijs/hp-laserjet_p4515n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4515n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4515tn-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4515tn-hpijs.ppd.gz Binary files differindex 58d5980f8..70d84d586 100644 --- a/ppd/hpijs/hp-laserjet_p4515tn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4515tn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4515x-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4515x-hpijs.ppd.gz Binary files differindex 1c3ac19da..3a52ad3b9 100644 --- a/ppd/hpijs/hp-laserjet_p4515x-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4515x-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_p4515xm-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_p4515xm-hpijs.ppd.gz Binary files differindex c9231b16a..3ecfd5252 100644 --- a/ppd/hpijs/hp-laserjet_p4515xm-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_p4515xm-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1132_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1132_mfp-hpijs.ppd.gz Binary files differindex af15665b3..7d39f976c 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1132_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1132_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1136_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1136_mfp-hpijs.ppd.gz Binary files differindex 4da70f059..5b982fdfc 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1136_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1136_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1212nf_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1212nf_mfp-hpijs.ppd.gz Binary files differindex c969a22b2..cec7b684d 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1212nf_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1212nf_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz Binary files differindex 314ef9f41..6b3dc9f91 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1213nf_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1214nfh_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1214nfh_mfp-hpijs.ppd.gz Binary files differindex 945a3c768..bf63e4479 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1214nfh_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1214nfh_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1216nfh_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1216nfh_mfp-hpijs.ppd.gz Binary files differindex 18b086f14..6a52ea227 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1216nfh_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1216nfh_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1217nfw_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1217nfw_mfp-hpijs.ppd.gz Binary files differindex ccb305b91..001f2a58c 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1217nfw_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1217nfw_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_m1219nf_mfp-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_m1219nf_mfp-hpijs.ppd.gz Binary files differindex cc47db268..79118d35c 100644 --- a/ppd/hpijs/hp-laserjet_professional_m1219nf_mfp-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_m1219nf_mfp-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p1102-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1102-hpijs.ppd.gz Binary files differindex 56342c3df..11a3b1a92 100644 --- a/ppd/hpijs/hp-laserjet_professional_p1102-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p1102-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p1102s-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1102s-hpijs.ppd.gz Binary files differdeleted file mode 100644 index df09f820c..000000000 --- a/ppd/hpijs/hp-laserjet_professional_p1102s-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz Binary files differindex 62549c067..66bd63d1b 100644 --- a/ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p1102w-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p1106-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1106-hpijs.ppd.gz Binary files differindex 6597ad1aa..1a1914151 100644 --- a/ppd/hpijs/hp-laserjet_professional_p1106-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p1106-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p1108-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1108-hpijs.ppd.gz Binary files differindex e90bc7b78..3d34cd9bf 100644 --- a/ppd/hpijs/hp-laserjet_professional_p1108-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p1108-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p1566-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1566-hpijs.ppd.gz Binary files differindex c9e7f827f..c801dfb35 100644 --- a/ppd/hpijs/hp-laserjet_professional_p1566-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p1566-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p1606dn-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p1606dn-hpijs.ppd.gz Binary files differindex 298eccf51..3745b4a2b 100644 --- a/ppd/hpijs/hp-laserjet_professional_p1606dn-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p1606dn-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-laserjet_professional_p_1102w-hpijs.ppd.gz b/ppd/hpijs/hp-laserjet_professional_p_1102w-hpijs.ppd.gz Binary files differindex a29eaf5eb..bdef1f33d 100644 --- a/ppd/hpijs/hp-laserjet_professional_p_1102w-hpijs.ppd.gz +++ b/ppd/hpijs/hp-laserjet_professional_p_1102w-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-mopier_240-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-mopier_240-hpijs-pcl3.ppd.gz Binary files differindex da71fa75e..c29e14033 100644 --- a/ppd/hpijs/hp-mopier_240-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-mopier_240-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-mopier_320-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-mopier_320-hpijs-pcl3.ppd.gz Binary files differindex 0616f0002..35a98a73f 100644 --- a/ppd/hpijs/hp-mopier_320-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-mopier_320-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-officejet-hpijs.ppd.gz b/ppd/hpijs/hp-officejet-hpijs.ppd.gz Binary files differindex 451960ef9..eb39cc370 100644 --- a/ppd/hpijs/hp-officejet-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_100_mobile_l411-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_100_mobile_l411-hpijs.ppd.gz Binary files differindex 2ffa1dfa3..5f9316df7 100644 --- a/ppd/hpijs/hp-officejet_100_mobile_l411-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_100_mobile_l411-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4000_k210-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4000_k210-hpijs.ppd.gz Binary files differindex e89e53b9a..4e244c3b2 100644 --- a/ppd/hpijs/hp-officejet_4000_k210-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4000_k210-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4100_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4100_series-hpijs.ppd.gz Binary files differindex 1e1bde5b3..8f7096461 100644 --- a/ppd/hpijs/hp-officejet_4100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4105-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4105-hpijs.ppd.gz Binary files differindex d00f6ee50..905bebd7b 100644 --- a/ppd/hpijs/hp-officejet_4105-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4105-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4115_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4115_series-hpijs.ppd.gz Binary files differindex bcb4848c5..b31a111e9 100644 --- a/ppd/hpijs/hp-officejet_4115_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4115_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4200_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4200_series-hpijs.ppd.gz Binary files differindex 8053b502b..fc4f66b05 100644 --- a/ppd/hpijs/hp-officejet_4200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4255-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4255-hpijs.ppd.gz Binary files differindex 3d7ed95fc..1cfed9297 100644 --- a/ppd/hpijs/hp-officejet_4255-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4255-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4300_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4300_series-hpijs.ppd.gz Binary files differindex 147babbb6..d074d49b6 100644 --- a/ppd/hpijs/hp-officejet_4300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4400_k410-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4400_k410-hpijs.ppd.gz Binary files differindex 8467ee9e6..e1605f2bc 100644 --- a/ppd/hpijs/hp-officejet_4400_k410-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4400_k410-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4500_g510a-f-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4500_g510a-f-hpijs.ppd.gz Binary files differindex ca30863f3..cb91b50d1 100644 --- a/ppd/hpijs/hp-officejet_4500_g510a-f-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4500_g510a-f-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4500_g510g-m-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4500_g510g-m-hpijs.ppd.gz Binary files differindex b4fd976c9..3a1737588 100644 --- a/ppd/hpijs/hp-officejet_4500_g510g-m-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4500_g510g-m-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz Binary files differindex a4208a017..df85c80ae 100644 --- a/ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4500_g510n-z-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_4500_k710-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_4500_k710-hpijs.ppd.gz Binary files differindex 91cbad4be..7d3792ac2 100644 --- a/ppd/hpijs/hp-officejet_4500_k710-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_4500_k710-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_5100_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_5100_series-hpijs.ppd.gz Binary files differindex a42df05d7..850a35e30 100644 --- a/ppd/hpijs/hp-officejet_5100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_5100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_5105-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_5105-hpijs.ppd.gz Binary files differindex 1701b5ecb..594e91c08 100644 --- a/ppd/hpijs/hp-officejet_5105-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_5105-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_5110-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_5110-hpijs.ppd.gz Binary files differindex 8550701ce..b02773db9 100644 --- a/ppd/hpijs/hp-officejet_5110-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_5110-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_5110v-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_5110v-hpijs.ppd.gz Binary files differindex 368ea6523..c05677a6f 100644 --- a/ppd/hpijs/hp-officejet_5110v-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_5110v-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz Binary files differindex f5ef8d12e..cc8f3e8c5 100644 --- a/ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_5500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_5600_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_5600_series-hpijs.ppd.gz Binary files differindex bb8e205c4..a48bd8694 100644 --- a/ppd/hpijs/hp-officejet_5600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_5600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6000_e609a-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6000_e609a-hpijs.ppd.gz Binary files differindex 55a3dcff0..472f96c0b 100644 --- a/ppd/hpijs/hp-officejet_6000_e609a-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6000_e609a-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz Binary files differindex 36aa2e5fa..db8539efc 100644 --- a/ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6000_e609n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6100-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6100-hpijs.ppd.gz Binary files differnew file mode 100644 index 000000000..60a89a6ec --- /dev/null +++ b/ppd/hpijs/hp-officejet_6100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6100_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6100_series-hpijs.ppd.gz Binary files differindex aebcb9e95..3eedd7728 100644 --- a/ppd/hpijs/hp-officejet_6100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6150_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6150_series-hpijs.ppd.gz Binary files differindex 9291bb7d0..050a6bdb1 100644 --- a/ppd/hpijs/hp-officejet_6150_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6150_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6200_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6200_series-hpijs.ppd.gz Binary files differindex 83ba86b1f..088962d08 100644 --- a/ppd/hpijs/hp-officejet_6200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6300_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6300_series-hpijs.ppd.gz Binary files differindex afc774204..0458923d0 100644 --- a/ppd/hpijs/hp-officejet_6300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6500_e709a-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6500_e709a-hpijs.ppd.gz Binary files differindex b57a3bb33..ec8fdf1ea 100644 --- a/ppd/hpijs/hp-officejet_6500_e709a-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6500_e709a-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6500_e709n-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6500_e709n-hpijs.ppd.gz Binary files differindex 27c3e2c1b..ad8f79350 100644 --- a/ppd/hpijs/hp-officejet_6500_e709n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6500_e709n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6500_e710a-f-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6500_e710a-f-hpijs.ppd.gz Binary files differindex 5f0e0390e..6ecc2909a 100644 --- a/ppd/hpijs/hp-officejet_6500_e710a-f-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6500_e710a-f-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6500_e710n-z-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6500_e710n-z-hpijs.ppd.gz Binary files differindex 436b5b679..52513e745 100644 --- a/ppd/hpijs/hp-officejet_6500_e710n-z-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_6500_e710n-z-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6600-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6600-hpijs.ppd.gz Binary files differnew file mode 100644 index 000000000..d190e0466 --- /dev/null +++ b/ppd/hpijs/hp-officejet_6600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_6700-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_6700-hpijs.ppd.gz Binary files differnew file mode 100644 index 000000000..48f93efe1 --- /dev/null +++ b/ppd/hpijs/hp-officejet_6700-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7000_e809a-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7000_e809a-hpijs.ppd.gz Binary files differindex 2531a042f..284d94271 100644 --- a/ppd/hpijs/hp-officejet_7000_e809a-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7000_e809a-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7000_e809a_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7000_e809a_series-hpijs.ppd.gz Binary files differindex 6ee51883e..3463f5926 100644 --- a/ppd/hpijs/hp-officejet_7000_e809a_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7000_e809a_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7100_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7100_series-hpijs.ppd.gz Binary files differindex 46bbd2600..47300645f 100644 --- a/ppd/hpijs/hp-officejet_7100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7200_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7200_series-hpijs.ppd.gz Binary files differindex c906ca1a3..6ca811ee1 100644 --- a/ppd/hpijs/hp-officejet_7200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7300_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7300_series-hpijs.ppd.gz Binary files differindex 4bb8692af..b9de130de 100644 --- a/ppd/hpijs/hp-officejet_7300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7400_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7400_series-hpijs.ppd.gz Binary files differindex 37e703d64..5264c6051 100644 --- a/ppd/hpijs/hp-officejet_7400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_7500_e910-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_7500_e910-hpijs.ppd.gz Binary files differindex aa8ef7ebe..1eab04aff 100644 --- a/ppd/hpijs/hp-officejet_7500_e910-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_7500_e910-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_9100_series-hpijs-pcl3.ppd.gz b/ppd/hpijs/hp-officejet_9100_series-hpijs-pcl3.ppd.gz Binary files differindex 32923bb7d..e7e749905 100644 --- a/ppd/hpijs/hp-officejet_9100_series-hpijs-pcl3.ppd.gz +++ b/ppd/hpijs/hp-officejet_9100_series-hpijs-pcl3.ppd.gz diff --git a/ppd/hpijs/hp-officejet_d_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_d_series-hpijs.ppd.gz Binary files differindex 71f0da180..695a304a1 100644 --- a/ppd/hpijs/hp-officejet_d_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_d_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_g55-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_g55-hpijs.ppd.gz Binary files differindex f51ae114d..fdbe4f681 100644 --- a/ppd/hpijs/hp-officejet_g55-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_g55-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_g55xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_g55xi-hpijs.ppd.gz Binary files differindex 9e19e6605..a2219c83d 100644 --- a/ppd/hpijs/hp-officejet_g55xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_g55xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_g85-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_g85-hpijs.ppd.gz Binary files differindex 463fe8bc9..8e8ba791b 100644 --- a/ppd/hpijs/hp-officejet_g85-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_g85-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_g85xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_g85xi-hpijs.ppd.gz Binary files differindex a01b7e4b0..db0471995 100644 --- a/ppd/hpijs/hp-officejet_g85xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_g85xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_g95-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_g95-hpijs.ppd.gz Binary files differindex 393ae359b..f4756ffb5 100644 --- a/ppd/hpijs/hp-officejet_g95-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_g95-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_h470-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_h470-hpijs.ppd.gz Binary files differindex 9f5884c18..16a814e74 100644 --- a/ppd/hpijs/hp-officejet_h470-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_h470-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j3500_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j3500_series-hpijs.ppd.gz Binary files differindex 674d7d68c..b7e0951dd 100644 --- a/ppd/hpijs/hp-officejet_j3500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j3500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j3600_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j3600_series-hpijs.ppd.gz Binary files differindex bcc1feda9..aec75d855 100644 --- a/ppd/hpijs/hp-officejet_j3600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j3600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j4500_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j4500_series-hpijs.ppd.gz Binary files differindex 4db61a8ac..4710d6098 100644 --- a/ppd/hpijs/hp-officejet_j4500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j4500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j4660_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j4660_series-hpijs.ppd.gz Binary files differindex 537253366..9d4995c67 100644 --- a/ppd/hpijs/hp-officejet_j4660_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j4660_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j4680_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j4680_series-hpijs.ppd.gz Binary files differindex d43ece78e..0f29d2f4f 100644 --- a/ppd/hpijs/hp-officejet_j4680_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j4680_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j5500_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j5500_series-hpijs.ppd.gz Binary files differindex a7d83b711..3eaeeea3c 100644 --- a/ppd/hpijs/hp-officejet_j5500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j5500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j5700_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j5700_series-hpijs.ppd.gz Binary files differindex 11f22eea1..d086e7471 100644 --- a/ppd/hpijs/hp-officejet_j5700_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j5700_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_j6400_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_j6400_series-hpijs.ppd.gz Binary files differindex 1785cb8cf..bed87b212 100644 --- a/ppd/hpijs/hp-officejet_j6400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_j6400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_k60-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_k60-hpijs.ppd.gz Binary files differindex 9e28fb0bd..6f0b5a99c 100644 --- a/ppd/hpijs/hp-officejet_k60-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_k60-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_k60xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_k60xi-hpijs.ppd.gz Binary files differindex 55d8e00e9..fe0ab9570 100644 --- a/ppd/hpijs/hp-officejet_k60xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_k60xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_k7100-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_k7100-hpijs.ppd.gz Binary files differindex 4d0be7d5e..7e8062b2b 100644 --- a/ppd/hpijs/hp-officejet_k7100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_k7100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_k80-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_k80-hpijs.ppd.gz Binary files differindex 8f6fc5197..091667766 100644 --- a/ppd/hpijs/hp-officejet_k80-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_k80-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_k80xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_k80xi-hpijs.ppd.gz Binary files differindex 9ff38ea98..b6fb3fd56 100644 --- a/ppd/hpijs/hp-officejet_k80xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_k80xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz Binary files differindex d4a811d31..0e366634b 100644 --- a/ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_lx-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_1150c-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_1150c-hpijs.ppd.gz Binary files differindex 2089414b9..cfec55f74 100644 --- a/ppd/hpijs/hp-officejet_pro_1150c-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_1150c-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_1170c_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_1170c_series-hpijs.ppd.gz Binary files differindex 8955e244b..9cab325b5 100644 --- a/ppd/hpijs/hp-officejet_pro_1170c_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_1170c_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8000_a809-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8000_a809-hpijs.ppd.gz Binary files differindex 65977cf35..5d28c9548 100644 --- a/ppd/hpijs/hp-officejet_pro_8000_a809-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8000_a809-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8100-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8100-hpijs.ppd.gz Binary files differindex af832a4d4..85d61e339 100644 --- a/ppd/hpijs/hp-officejet_pro_8100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8500_a909a-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8500_a909a-hpijs.ppd.gz Binary files differindex 58bdbbccc..faeb42766 100644 --- a/ppd/hpijs/hp-officejet_pro_8500_a909a-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8500_a909a-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz Binary files differindex aa9e89905..ad13c83c4 100644 --- a/ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8500_a909g-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8500_a909n-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8500_a909n-hpijs.ppd.gz Binary files differindex a8d23a876..dd1e02eab 100644 --- a/ppd/hpijs/hp-officejet_pro_8500_a909n-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8500_a909n-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8500_a910-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8500_a910-hpijs.ppd.gz Binary files differindex 994501250..d1da11117 100644 --- a/ppd/hpijs/hp-officejet_pro_8500_a910-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8500_a910-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_8600-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_8600-hpijs.ppd.gz Binary files differindex 2698c3aa8..a930eb317 100644 --- a/ppd/hpijs/hp-officejet_pro_8600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_8600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_k5300-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_k5300-hpijs.ppd.gz Binary files differindex 82b6443a3..7b4cdfa98 100644 --- a/ppd/hpijs/hp-officejet_pro_k5300-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_k5300-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_k5400-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_k5400-hpijs.ppd.gz Binary files differindex 3986d8180..54829f070 100644 --- a/ppd/hpijs/hp-officejet_pro_k5400-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_k5400-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_k550-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_k550-hpijs.ppd.gz Binary files differindex 56f105f09..a1002345e 100644 --- a/ppd/hpijs/hp-officejet_pro_k550-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_k550-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_k850-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_k850-hpijs.ppd.gz Binary files differindex dfa852f0f..798baed18 100644 --- a/ppd/hpijs/hp-officejet_pro_k850-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_k850-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_k8600-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_k8600-hpijs.ppd.gz Binary files differindex 088b34054..7e7468824 100644 --- a/ppd/hpijs/hp-officejet_pro_k8600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_k8600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_l7300-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_l7300-hpijs.ppd.gz Binary files differindex 5cb879b6b..5141659e1 100644 --- a/ppd/hpijs/hp-officejet_pro_l7300-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_l7300-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_l7400-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_l7400-hpijs.ppd.gz Binary files differindex 5dec37c98..493648cbd 100644 --- a/ppd/hpijs/hp-officejet_pro_l7400-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_l7400-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_l7500-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_l7500-hpijs.ppd.gz Binary files differindex 5f936ae96..d3847d478 100644 --- a/ppd/hpijs/hp-officejet_pro_l7500-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_l7500-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_l7600-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_l7600-hpijs.ppd.gz Binary files differindex b909247ba..37709099d 100644 --- a/ppd/hpijs/hp-officejet_pro_l7600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_l7600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_pro_l7700-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_pro_l7700-hpijs.ppd.gz Binary files differindex 570a66352..9ba685698 100644 --- a/ppd/hpijs/hp-officejet_pro_l7700-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_pro_l7700-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r40-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r40-hpijs.ppd.gz Binary files differindex bea827862..f01a91296 100644 --- a/ppd/hpijs/hp-officejet_r40-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r40-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r40xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r40xi-hpijs.ppd.gz Binary files differindex b947cb7e3..8d67120ec 100644 --- a/ppd/hpijs/hp-officejet_r40xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r40xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r45-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r45-hpijs.ppd.gz Binary files differindex 33a7d22ab..a18ac35c6 100644 --- a/ppd/hpijs/hp-officejet_r45-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r45-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz Binary files differindex f68f19b3d..40296bea8 100644 --- a/ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r60-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r65-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r65-hpijs.ppd.gz Binary files differindex 3a3b34d41..2bbce8fcf 100644 --- a/ppd/hpijs/hp-officejet_r65-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r65-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r80-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r80-hpijs.ppd.gz Binary files differindex b821a386b..2e2201994 100644 --- a/ppd/hpijs/hp-officejet_r80-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r80-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz Binary files differindex 50a54d5e5..e12deebb9 100644 --- a/ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_r80xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_300-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_300-hpijs.ppd.gz Binary files differindex cb50811b5..da3b7d8be 100644 --- a/ppd/hpijs/hp-officejet_series_300-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_300-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_310-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_310-hpijs.ppd.gz Binary files differindex bb39cb813..7f5a96e2b 100644 --- a/ppd/hpijs/hp-officejet_series_310-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_310-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_320-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_320-hpijs.ppd.gz Binary files differindex 73e28112c..475d1173f 100644 --- a/ppd/hpijs/hp-officejet_series_320-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_320-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_330-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_330-hpijs.ppd.gz Binary files differindex cb82bad31..5e7097235 100644 --- a/ppd/hpijs/hp-officejet_series_330-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_330-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_350-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_350-hpijs.ppd.gz Binary files differindex 0dec8457f..50a827ff3 100644 --- a/ppd/hpijs/hp-officejet_series_350-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_350-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_500-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_500-hpijs.ppd.gz Binary files differdeleted file mode 100644 index abac3eb90..000000000 --- a/ppd/hpijs/hp-officejet_series_500-hpijs.ppd.gz +++ /dev/null diff --git a/ppd/hpijs/hp-officejet_series_520-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_520-hpijs.ppd.gz Binary files differindex b6e6b7ba6..9ea770d69 100644 --- a/ppd/hpijs/hp-officejet_series_520-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_520-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_570-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_570-hpijs.ppd.gz Binary files differindex 7706ee1dc..04de47594 100644 --- a/ppd/hpijs/hp-officejet_series_570-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_570-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_580-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_580-hpijs.ppd.gz Binary files differindex fa599f2fe..b60f92bce 100644 --- a/ppd/hpijs/hp-officejet_series_580-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_580-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_590-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_590-hpijs.ppd.gz Binary files differindex ebffcb678..c1864714c 100644 --- a/ppd/hpijs/hp-officejet_series_590-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_590-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_600-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_600-hpijs.ppd.gz Binary files differindex 1d57a5ab7..73aabfad5 100644 --- a/ppd/hpijs/hp-officejet_series_600-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_600-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_610-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_610-hpijs.ppd.gz Binary files differindex 94fc076f9..2a6561797 100644 --- a/ppd/hpijs/hp-officejet_series_610-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_610-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_630-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_630-hpijs.ppd.gz Binary files differindex 5fa43bfe0..1126aa695 100644 --- a/ppd/hpijs/hp-officejet_series_630-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_630-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_700-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_700-hpijs.ppd.gz Binary files differindex 316e89652..b749fa5f2 100644 --- a/ppd/hpijs/hp-officejet_series_700-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_700-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_710-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_710-hpijs.ppd.gz Binary files differindex 8ccd42acc..dfe9fedf6 100644 --- a/ppd/hpijs/hp-officejet_series_710-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_710-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_720-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_720-hpijs.ppd.gz Binary files differindex 90591c31a..717338581 100644 --- a/ppd/hpijs/hp-officejet_series_720-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_720-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_series_725-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_series_725-hpijs.ppd.gz Binary files differindex 51a80ea72..1afe7a877 100644 --- a/ppd/hpijs/hp-officejet_series_725-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_series_725-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz Binary files differindex f76906624..2e37bc477 100644 --- a/ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_t_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_v30-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_v30-hpijs.ppd.gz Binary files differindex 75b4547d6..8b8c1f430 100644 --- a/ppd/hpijs/hp-officejet_v30-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_v30-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_v40-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_v40-hpijs.ppd.gz Binary files differindex 3593daacc..a64b2f266 100644 --- a/ppd/hpijs/hp-officejet_v40-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_v40-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_v40xi-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_v40xi-hpijs.ppd.gz Binary files differindex 2b2386bb6..b4747e624 100644 --- a/ppd/hpijs/hp-officejet_v40xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_v40xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-officejet_v45-hpijs.ppd.gz b/ppd/hpijs/hp-officejet_v45-hpijs.ppd.gz Binary files differindex 332a2821f..dc612645a 100644 --- a/ppd/hpijs/hp-officejet_v45-hpijs.ppd.gz +++ b/ppd/hpijs/hp-officejet_v45-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_100-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_100-hpijs.ppd.gz Binary files differindex 1d7a54a85..ccde1f181 100644 --- a/ppd/hpijs/hp-photosmart_100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_1115-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_1115-hpijs.ppd.gz Binary files differindex b8cccb9e1..89491039f 100644 --- a/ppd/hpijs/hp-photosmart_1115-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_1115-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_1215-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_1215-hpijs.ppd.gz Binary files differindex b0abb1bdd..e33f2e47c 100644 --- a/ppd/hpijs/hp-photosmart_1215-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_1215-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_1218-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_1218-hpijs.ppd.gz Binary files differindex f4bbeb524..6d1161762 100644 --- a/ppd/hpijs/hp-photosmart_1218-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_1218-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_130-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_130-hpijs.ppd.gz Binary files differindex b971a359a..0d41ca992 100644 --- a/ppd/hpijs/hp-photosmart_130-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_130-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_1315-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_1315-hpijs.ppd.gz Binary files differindex c138543a3..5527870ca 100644 --- a/ppd/hpijs/hp-photosmart_1315-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_1315-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_140_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_140_series-hpijs.ppd.gz Binary files differindex d462af384..55fcb2de9 100644 --- a/ppd/hpijs/hp-photosmart_140_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_140_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_230-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_230-hpijs.ppd.gz Binary files differindex 8f6c6f18c..f86d82be0 100644 --- a/ppd/hpijs/hp-photosmart_230-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_230-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_240_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_240_series-hpijs.ppd.gz Binary files differindex 46f778482..7cab2dae9 100644 --- a/ppd/hpijs/hp-photosmart_240_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_240_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_2570_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_2570_series-hpijs.ppd.gz Binary files differindex 8e0c37f56..e53367f4d 100644 --- a/ppd/hpijs/hp-photosmart_2570_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_2570_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_2600_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_2600_series-hpijs.ppd.gz Binary files differindex 4e1a9958b..01c38071a 100644 --- a/ppd/hpijs/hp-photosmart_2600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_2600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_2700_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_2700_series-hpijs.ppd.gz Binary files differindex 80a7f41ba..d5a0ad72b 100644 --- a/ppd/hpijs/hp-photosmart_2700_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_2700_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_3100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_3100_series-hpijs.ppd.gz Binary files differindex e2c006971..0c5fa8cc1 100644 --- a/ppd/hpijs/hp-photosmart_3100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_3100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_3200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_3200_series-hpijs.ppd.gz Binary files differindex 99c4aa815..97cbca549 100644 --- a/ppd/hpijs/hp-photosmart_3200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_3200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz Binary files differindex e468a280f..2858bf751 100644 --- a/ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_320_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_3300_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_3300_series-hpijs.ppd.gz Binary files differindex 803461d84..caff2b48b 100644 --- a/ppd/hpijs/hp-photosmart_3300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_3300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_330_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_330_series-hpijs.ppd.gz Binary files differindex 0020d00d0..a495ae34b 100644 --- a/ppd/hpijs/hp-photosmart_330_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_330_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz Binary files differindex 70b3946d4..db5b85ad1 100644 --- a/ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_370_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_380_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_380_series-hpijs.ppd.gz Binary files differindex de650478f..4a864e5a1 100644 --- a/ppd/hpijs/hp-photosmart_380_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_380_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_420_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_420_series-hpijs.ppd.gz Binary files differindex 5c275e7e9..61d7ee59f 100644 --- a/ppd/hpijs/hp-photosmart_420_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_420_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_470_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_470_series-hpijs.ppd.gz Binary files differindex d8168fe51..d2aa8840d 100644 --- a/ppd/hpijs/hp-photosmart_470_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_470_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_5510_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_5510_series-hpijs.ppd.gz Binary files differindex 0158eff21..4a2f9aef7 100644 --- a/ppd/hpijs/hp-photosmart_5510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_5510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_5510d_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_5510d_series-hpijs.ppd.gz Binary files differindex 363e30410..4dc57de5d 100644 --- a/ppd/hpijs/hp-photosmart_5510d_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_5510d_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_6510_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_6510_series-hpijs.ppd.gz Binary files differindex 60e10ce7c..35931aee3 100644 --- a/ppd/hpijs/hp-photosmart_6510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_6510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7150-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7150-hpijs.ppd.gz Binary files differindex 796da436d..59140599e 100644 --- a/ppd/hpijs/hp-photosmart_7150-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7150-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7200_series-hpijs.ppd.gz Binary files differindex 1959b7d52..b1d14eb8e 100644 --- a/ppd/hpijs/hp-photosmart_7200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7345-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7345-hpijs.ppd.gz Binary files differindex 640c4471a..b86d3061e 100644 --- a/ppd/hpijs/hp-photosmart_7345-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7345-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7350-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7350-hpijs.ppd.gz Binary files differindex 49ec30f37..ecc219f62 100644 --- a/ppd/hpijs/hp-photosmart_7350-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7350-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7400_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7400_series-hpijs.ppd.gz Binary files differindex 13db12f66..2a654e042 100644 --- a/ppd/hpijs/hp-photosmart_7400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7510_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7510_series-hpijs.ppd.gz Binary files differindex 6abbe6129..69c2a4158 100644 --- a/ppd/hpijs/hp-photosmart_7510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7550-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7550-hpijs.ppd.gz Binary files differindex cebd38561..85736dea7 100644 --- a/ppd/hpijs/hp-photosmart_7550-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7550-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7600_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7600_series-hpijs.ppd.gz Binary files differindex 13765c368..d2ae93b08 100644 --- a/ppd/hpijs/hp-photosmart_7600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7700_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7700_series-hpijs.ppd.gz Binary files differindex 3d599122e..98bdb99a0 100644 --- a/ppd/hpijs/hp-photosmart_7700_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7700_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7800_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7800_series-hpijs.ppd.gz Binary files differindex 30dfd8e0a..d5afe2044 100644 --- a/ppd/hpijs/hp-photosmart_7800_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7800_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_7900_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_7900_series-hpijs.ppd.gz Binary files differindex 4675ab718..686700754 100644 --- a/ppd/hpijs/hp-photosmart_7900_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_7900_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_8000_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_8000_series-hpijs.ppd.gz Binary files differindex 97422de60..2fe4ae58e 100644 --- a/ppd/hpijs/hp-photosmart_8000_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_8000_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_8100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_8100_series-hpijs.ppd.gz Binary files differindex 6d6709402..6e8b9b101 100644 --- a/ppd/hpijs/hp-photosmart_8100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_8100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz Binary files differindex e9ea27dab..3143c6bd5 100644 --- a/ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_8200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_8400_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_8400_series-hpijs.ppd.gz Binary files differindex d4ac35c68..120a461b7 100644 --- a/ppd/hpijs/hp-photosmart_8400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_8400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_8700_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_8700_series-hpijs.ppd.gz Binary files differindex 94202dc74..394f507ec 100644 --- a/ppd/hpijs/hp-photosmart_8700_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_8700_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a310_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a310_series-hpijs.ppd.gz Binary files differindex fe351e7bd..b28577081 100644 --- a/ppd/hpijs/hp-photosmart_a310_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a310_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a320_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a320_series-hpijs.ppd.gz Binary files differindex b5ed2dafa..25b90ba3d 100644 --- a/ppd/hpijs/hp-photosmart_a320_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a320_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a430_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a430_series-hpijs.ppd.gz Binary files differindex f2ca83298..d80c0fc48 100644 --- a/ppd/hpijs/hp-photosmart_a430_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a430_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a440_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a440_series-hpijs.ppd.gz Binary files differindex b22f6a24b..4e4e7396b 100644 --- a/ppd/hpijs/hp-photosmart_a440_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a440_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a510_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a510_series-hpijs.ppd.gz Binary files differindex 15fa6ac3c..4e1f34c89 100644 --- a/ppd/hpijs/hp-photosmart_a510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a520_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a520_series-hpijs.ppd.gz Binary files differindex a1b374bb1..1894a0770 100644 --- a/ppd/hpijs/hp-photosmart_a520_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a520_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a530_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a530_series-hpijs.ppd.gz Binary files differindex 147e51e92..30d5335be 100644 --- a/ppd/hpijs/hp-photosmart_a530_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a530_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a610_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a610_series-hpijs.ppd.gz Binary files differindex 84b9224ce..5ad2ad129 100644 --- a/ppd/hpijs/hp-photosmart_a610_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a610_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a620_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a620_series-hpijs.ppd.gz Binary files differindex 16c018a60..7bdf70e0d 100644 --- a/ppd/hpijs/hp-photosmart_a620_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a620_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a630_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a630_series-hpijs.ppd.gz Binary files differindex f9f76051d..3bb30716a 100644 --- a/ppd/hpijs/hp-photosmart_a630_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a630_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a640_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a640_series-hpijs.ppd.gz Binary files differindex 5d2d3e967..aba45e734 100644 --- a/ppd/hpijs/hp-photosmart_a640_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a640_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a710_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a710_series-hpijs.ppd.gz Binary files differindex bf69214d6..bb0036d69 100644 --- a/ppd/hpijs/hp-photosmart_a710_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a710_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_a820_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_a820_series-hpijs.ppd.gz Binary files differindex 8504c3bf9..80a4dae63 100644 --- a/ppd/hpijs/hp-photosmart_a820_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_a820_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_b010_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_b010_series-hpijs.ppd.gz Binary files differindex ad8103106..f4e47e93c 100644 --- a/ppd/hpijs/hp-photosmart_b010_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_b010_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_b109a-m-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_b109a-m-hpijs.ppd.gz Binary files differindex 3fb243ae7..39588b6be 100644 --- a/ppd/hpijs/hp-photosmart_b109a-m-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_b109a-m-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_b109a_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_b109a_series-hpijs.ppd.gz Binary files differindex a71a2f944..1774fe351 100644 --- a/ppd/hpijs/hp-photosmart_b109a_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_b109a_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_b110_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_b110_series-hpijs.ppd.gz Binary files differindex 157c002b6..41985722a 100644 --- a/ppd/hpijs/hp-photosmart_b110_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_b110_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_b8500_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_b8500_series-hpijs.ppd.gz Binary files differindex cb03214e5..0d46cd088 100644 --- a/ppd/hpijs/hp-photosmart_b8500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_b8500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c309a_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c309a_series-hpijs.ppd.gz Binary files differindex de847c11b..916fd1064 100644 --- a/ppd/hpijs/hp-photosmart_c309a_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c309a_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz Binary files differindex 32bafc87c..fa7b3d3fd 100644 --- a/ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c3100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4100_series-hpijs.ppd.gz Binary files differindex c7df24eb1..1918a4635 100644 --- a/ppd/hpijs/hp-photosmart_c4100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz Binary files differindex e69920963..ecee6d0ca 100644 --- a/ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4340_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4340_series-hpijs.ppd.gz Binary files differindex 38198aa7f..68bf16dde 100644 --- a/ppd/hpijs/hp-photosmart_c4340_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4340_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4380_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4380_series-hpijs.ppd.gz Binary files differindex 1de297baa..96d53b3c2 100644 --- a/ppd/hpijs/hp-photosmart_c4380_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4380_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4400_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4400_series-hpijs.ppd.gz Binary files differindex 705374ace..cf6f14844 100644 --- a/ppd/hpijs/hp-photosmart_c4400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4500_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4500_series-hpijs.ppd.gz Binary files differindex f0211c89f..a494633c6 100644 --- a/ppd/hpijs/hp-photosmart_c4500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4600_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4600_series-hpijs.ppd.gz Binary files differindex 8dd6021df..fb8e5e77e 100644 --- a/ppd/hpijs/hp-photosmart_c4600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c4700_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c4700_series-hpijs.ppd.gz Binary files differindex 816c82299..648ac5659 100644 --- a/ppd/hpijs/hp-photosmart_c4700_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c4700_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c5100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c5100_series-hpijs.ppd.gz Binary files differindex 8e35520df..bec694019 100644 --- a/ppd/hpijs/hp-photosmart_c5100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c5100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz Binary files differindex 2b8129898..99f9179f5 100644 --- a/ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c5200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c5300_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c5300_series-hpijs.ppd.gz Binary files differindex 98ef8f13e..2b49dc243 100644 --- a/ppd/hpijs/hp-photosmart_c5300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c5300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c5500_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c5500_series-hpijs.ppd.gz Binary files differindex 1423f79b8..e0048df53 100644 --- a/ppd/hpijs/hp-photosmart_c5500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c5500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c6100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c6100_series-hpijs.ppd.gz Binary files differindex 118734380..03f2f0a5c 100644 --- a/ppd/hpijs/hp-photosmart_c6100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c6100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c6200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c6200_series-hpijs.ppd.gz Binary files differindex 0d10bb38b..128488656 100644 --- a/ppd/hpijs/hp-photosmart_c6200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c6200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c6300_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c6300_series-hpijs.ppd.gz Binary files differindex 0d0e31e7c..1cea1dae9 100644 --- a/ppd/hpijs/hp-photosmart_c6300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c6300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c7100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c7100_series-hpijs.ppd.gz Binary files differindex 5e48c9c52..f7b7dff50 100644 --- a/ppd/hpijs/hp-photosmart_c7100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c7100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c7200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c7200_series-hpijs.ppd.gz Binary files differindex 88a030fc8..2039c0175 100644 --- a/ppd/hpijs/hp-photosmart_c7200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c7200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_c8100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_c8100_series-hpijs.ppd.gz Binary files differindex 6d67bdadf..a5a690ba9 100644 --- a/ppd/hpijs/hp-photosmart_c8100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_c8100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz Binary files differindex ee35548ba..f0365da52 100644 --- a/ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d110_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d5060_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d5060_series-hpijs.ppd.gz Binary files differindex c902c36ed..4bbb196b9 100644 --- a/ppd/hpijs/hp-photosmart_d5060_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d5060_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d5100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d5100_series-hpijs.ppd.gz Binary files differindex 3e8eb93e0..014bbdc99 100644 --- a/ppd/hpijs/hp-photosmart_d5100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d5100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d5300_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d5300_series-hpijs.ppd.gz Binary files differindex cdec185d0..61d3fd6ac 100644 --- a/ppd/hpijs/hp-photosmart_d5300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d5300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d5400_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d5400_series-hpijs.ppd.gz Binary files differindex efa3ca28d..75b50ccf1 100644 --- a/ppd/hpijs/hp-photosmart_d5400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d5400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d6100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d6100_series-hpijs.ppd.gz Binary files differindex 47a89ed3a..1ccc9c59d 100644 --- a/ppd/hpijs/hp-photosmart_d6100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d6100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d7100_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d7100_series-hpijs.ppd.gz Binary files differindex 6b5eea72d..5af593d37 100644 --- a/ppd/hpijs/hp-photosmart_d7100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d7100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d7200_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d7200_series-hpijs.ppd.gz Binary files differindex 0f72f35e4..69ea811e0 100644 --- a/ppd/hpijs/hp-photosmart_d7200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d7200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d7300_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d7300_series-hpijs.ppd.gz Binary files differindex 3741a67ab..6626ce5fc 100644 --- a/ppd/hpijs/hp-photosmart_d7300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d7300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d7400_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d7400_series-hpijs.ppd.gz Binary files differindex 713acb91c..4d595919a 100644 --- a/ppd/hpijs/hp-photosmart_d7400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d7400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_d7500_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_d7500_series-hpijs.ppd.gz Binary files differindex 16f600d8f..405413e32 100644 --- a/ppd/hpijs/hp-photosmart_d7500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_d7500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_estn_c510_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_estn_c510_series-hpijs.ppd.gz Binary files differindex 76d1e634a..2b071c7f2 100644 --- a/ppd/hpijs/hp-photosmart_estn_c510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_estn_c510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_ink_adv_k510-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_ink_adv_k510-hpijs.ppd.gz Binary files differindex 3df706b3c..985d29c0e 100644 --- a/ppd/hpijs/hp-photosmart_ink_adv_k510-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_ink_adv_k510-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_p1000-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_p1000-hpijs.ppd.gz Binary files differindex f657757b7..a644e3566 100644 --- a/ppd/hpijs/hp-photosmart_p1000-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_p1000-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_p1100-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_p1100-hpijs.ppd.gz Binary files differindex a9f97dcbc..054d2673a 100644 --- a/ppd/hpijs/hp-photosmart_p1100-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_p1100-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_plus_b209a-m-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_plus_b209a-m-hpijs.ppd.gz Binary files differindex bc27d2aa6..0488259e6 100644 --- a/ppd/hpijs/hp-photosmart_plus_b209a-m-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_plus_b209a-m-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_plus_b210_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_plus_b210_series-hpijs.ppd.gz Binary files differindex 264fa9a93..74fde86c5 100644 --- a/ppd/hpijs/hp-photosmart_plus_b210_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_plus_b210_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_prem-web_c309n-s-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_prem-web_c309n-s-hpijs.ppd.gz Binary files differindex 1f69f7cf2..07db1635c 100644 --- a/ppd/hpijs/hp-photosmart_prem-web_c309n-s-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_prem-web_c309n-s-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_prem_c310_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_prem_c310_series-hpijs.ppd.gz Binary files differindex 0f523ee4e..a50b3143c 100644 --- a/ppd/hpijs/hp-photosmart_prem_c310_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_prem_c310_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_prem_c410_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_prem_c410_series-hpijs.ppd.gz Binary files differindex d36c4f221..b2b514f63 100644 --- a/ppd/hpijs/hp-photosmart_prem_c410_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_prem_c410_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_premium_c309g-m-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_premium_c309g-m-hpijs.ppd.gz Binary files differindex 2ac40fd46..bd7d16ae2 100644 --- a/ppd/hpijs/hp-photosmart_premium_c309g-m-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_premium_c309g-m-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_pro_b8300_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_pro_b8300_series-hpijs.ppd.gz Binary files differindex 5c111d483..65f05edb8 100644 --- a/ppd/hpijs/hp-photosmart_pro_b8300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_pro_b8300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_pro_b8800_series-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_pro_b8800_series-hpijs.ppd.gz Binary files differindex 27c32756b..addfa56be 100644 --- a/ppd/hpijs/hp-photosmart_pro_b8800_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_pro_b8800_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-photosmart_wireless_b109n-z-hpijs.ppd.gz b/ppd/hpijs/hp-photosmart_wireless_b109n-z-hpijs.ppd.gz Binary files differindex 7d8df7d22..9535f23ff 100644 --- a/ppd/hpijs/hp-photosmart_wireless_b109n-z-hpijs.ppd.gz +++ b/ppd/hpijs/hp-photosmart_wireless_b109n-z-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz b/ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz Binary files differindex 8c42260b9..9b24d43ae 100644 --- a/ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz +++ b/ppd/hpijs/hp-printer_scanner_copier_300-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1000_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1000_series-hpijs.ppd.gz Binary files differindex cfcd29752..e3e36c09b 100644 --- a/ppd/hpijs/hp-psc_1000_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1000_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1100_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1100_series-hpijs.ppd.gz Binary files differindex 72f98174f..712e5202f 100644 --- a/ppd/hpijs/hp-psc_1100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1200_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1200_series-hpijs.ppd.gz Binary files differindex a2f368ad1..99b42cc33 100644 --- a/ppd/hpijs/hp-psc_1200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1300_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1300_series-hpijs.ppd.gz Binary files differindex 745ae800e..f24245e22 100644 --- a/ppd/hpijs/hp-psc_1300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1310_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1310_series-hpijs.ppd.gz Binary files differindex b7278b582..aefd205b2 100644 --- a/ppd/hpijs/hp-psc_1310_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1310_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1358_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1358_series-hpijs.ppd.gz Binary files differindex 615bbd765..4f8747805 100644 --- a/ppd/hpijs/hp-psc_1358_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1358_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1400_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1400_series-hpijs.ppd.gz Binary files differindex 5a6cdfa4f..00375e27f 100644 --- a/ppd/hpijs/hp-psc_1400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1500_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1500_series-hpijs.ppd.gz Binary files differindex 5e2707e43..b49397d81 100644 --- a/ppd/hpijs/hp-psc_1500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1510_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1510_series-hpijs.ppd.gz Binary files differindex 6ecdbd171..56e857fc0 100644 --- a/ppd/hpijs/hp-psc_1510_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1510_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_1600_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_1600_series-hpijs.ppd.gz Binary files differindex eecaea86d..46f611173 100644 --- a/ppd/hpijs/hp-psc_1600_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_1600_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2100_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2100_series-hpijs.ppd.gz Binary files differindex 2b57f7692..be7a966d5 100644 --- a/ppd/hpijs/hp-psc_2100_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2100_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz Binary files differindex 555851b42..9a5c806db 100644 --- a/ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2150_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2170_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2170_series-hpijs.ppd.gz Binary files differindex 376dcf839..b74d0f86b 100644 --- a/ppd/hpijs/hp-psc_2170_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2170_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2200_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2200_series-hpijs.ppd.gz Binary files differindex 788838a73..9e6d04269 100644 --- a/ppd/hpijs/hp-psc_2200_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2200_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2210_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2210_series-hpijs.ppd.gz Binary files differindex bf2355862..b0fee6ba3 100644 --- a/ppd/hpijs/hp-psc_2210_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2210_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2300_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2300_series-hpijs.ppd.gz Binary files differindex fbf350ddf..41e46515d 100644 --- a/ppd/hpijs/hp-psc_2300_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2300_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2350_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2350_series-hpijs.ppd.gz Binary files differindex 74c66277b..9f6128ccd 100644 --- a/ppd/hpijs/hp-psc_2350_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2350_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2400_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2400_series-hpijs.ppd.gz Binary files differindex 2855a740f..ba22dea16 100644 --- a/ppd/hpijs/hp-psc_2400_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2400_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_2500_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_2500_series-hpijs.ppd.gz Binary files differindex b0cd22a23..2bdcf1b17 100644 --- a/ppd/hpijs/hp-psc_2500_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_2500_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_500-hpijs.ppd.gz b/ppd/hpijs/hp-psc_500-hpijs.ppd.gz Binary files differindex 762e8b8db..d9d7e8e3f 100644 --- a/ppd/hpijs/hp-psc_500-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_500-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_720-hpijs.ppd.gz b/ppd/hpijs/hp-psc_720-hpijs.ppd.gz Binary files differindex 293940d58..ab932fbdb 100644 --- a/ppd/hpijs/hp-psc_720-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_720-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_750-hpijs.ppd.gz b/ppd/hpijs/hp-psc_750-hpijs.ppd.gz Binary files differindex a57361a10..b6eeda8a0 100644 --- a/ppd/hpijs/hp-psc_750-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_750-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_750xi-hpijs.ppd.gz b/ppd/hpijs/hp-psc_750xi-hpijs.ppd.gz Binary files differindex 52ce6e6aa..c23cd72e4 100644 --- a/ppd/hpijs/hp-psc_750xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_750xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_760-hpijs.ppd.gz b/ppd/hpijs/hp-psc_760-hpijs.ppd.gz Binary files differindex ac0baf766..712338b44 100644 --- a/ppd/hpijs/hp-psc_760-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_760-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_780-hpijs.ppd.gz b/ppd/hpijs/hp-psc_780-hpijs.ppd.gz Binary files differindex 2730e5102..c2b3ba4cb 100644 --- a/ppd/hpijs/hp-psc_780-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_780-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz b/ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz Binary files differindex 377c685c1..d5d80a9f9 100644 --- a/ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_780xi-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_900_series-hpijs.ppd.gz b/ppd/hpijs/hp-psc_900_series-hpijs.ppd.gz Binary files differindex b248f2e3b..4773e4141 100644 --- a/ppd/hpijs/hp-psc_900_series-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_900_series-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_920-hpijs.ppd.gz b/ppd/hpijs/hp-psc_920-hpijs.ppd.gz Binary files differindex 2caab5d46..fa4b246ea 100644 --- a/ppd/hpijs/hp-psc_920-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_920-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_950-hpijs.ppd.gz b/ppd/hpijs/hp-psc_950-hpijs.ppd.gz Binary files differindex a863fc55a..52e39db80 100644 --- a/ppd/hpijs/hp-psc_950-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_950-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz b/ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz Binary files differindex a4622d541..89dcb603a 100644 --- a/ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_950vr-hpijs.ppd.gz diff --git a/ppd/hpijs/hp-psc_950xi-hpijs.ppd.gz b/ppd/hpijs/hp-psc_950xi-hpijs.ppd.gz Binary files differindex 015338764..68bc4914d 100644 --- a/ppd/hpijs/hp-psc_950xi-hpijs.ppd.gz +++ b/ppd/hpijs/hp-psc_950xi-hpijs.ppd.gz diff --git a/prnt/cups.py b/prnt/cups.py index 421942d47..cb202f07e 100644 --- a/prnt/cups.py +++ b/prnt/cups.py @@ -734,6 +734,11 @@ def delPrinter(printer_name): setPasswordPrompt("You do not have permission to delete a printer.") return cupsext.delPrinter(printer_name) +def enablePrinter(printer_name): + setPasswordPrompt("You do not have permission to enable a printer.") + cmd= "cupsenable %s"%printer_name + return os.system(cmd) + def getGroupList(): return cupsext.getGroupList() diff --git a/prnt/drv/hpcups.drv.in b/prnt/drv/hpcups.drv.in index 766a751a7..b157a3cde 100644 --- a/prnt/drv/hpcups.drv.in +++ b/prnt/drv/hpcups.drv.in @@ -238,6 +238,13 @@ // 13 September 2011 Goutam // Added AutoDuplex PaperSizes in Copperhead techclass + +// 10 Jan 2012 Sanjay +// Added the new tech class : Saipan + +// 20 Feb 2012 +// Added New Tech Class PyramidPlus + // Include necessary files... @@ -4807,7 +4814,258 @@ Manufacturer "HP" } // End Copperhead -//Added by Goutam Kodu + +//////// Saipan +{ + + Attribute "hpPrinterLanguage" "" "pcl3gui2" + Attribute "HPMechOffset" "" "130" + + Group "General/General" + + Option "ColorModel/Output Mode" PickOne AnySetup 10.0 + *Choice "RGB/Color" "<</cupsColorSpace 17/cupsBitsPerColor 8/cupsRowStep 0>>setpagedevice" + Choice "CMYGray/High Quality Grayscale" "<</cupsColorSpace 1/cupsBitsPerColor 8/cupsRowStep 1>>setpagedevice" + Choice "KGray/Black Only Grayscale" "<</cupsColorSpace 1/cupsBitsPerColor 8/cupsRowStep 2>>setpagedevice" + + // cupsMediaType values map to MEDIATYPE from global_types.h + Option "MediaType/Media Type" PickOne AnySetup 10.0 + *Choice "Plain/Plain Paper" "<</MediaType(Plain)/cupsMediaType 0>>setpagedevice" + Choice "Glossy/Photo Paper" "<</MediaType(Glossy)/cupsMediaType 3>>setpagedevice" + Choice "TransparencyFilm/Transparency Film" "<</MediaType(TransparencyFilm)/cupsMediaType 4>>setpagedevice" + + + // cupsCompression values map to QUALITY_MODE from global_types.h + Option "OutputMode/Print Quality" PickOne AnySetup 10.0 + *Choice "Normal/Normal" "<</OutputType(0)/HWResolution[600 600]>>setpagedevice" + Choice "Draft/Draft" "<</OutputType(-2)/HWResolution[300 300]>>setpagedevice" + Choice "Best/Best" "<</OutputType(1)/HWResolution[600 600]>>setpagedevice" + Choice "Photo/High-Resolution Photo" "<</OutputType(2)/HWResolution[1200 1200]>>setpagedevice" + + + Option "InputSlot/Media Source" PickOne AnySetup 10.0 + *Choice "Tray1/Tray 1" "<</MediaPosition 1>>setpagedevice" + + //Constraints + //MediaType & OutputMode + UIConstraints "*MediaType Plain *OutputMode MaxDPI" + UIConstraints "*MediaType Glossy *OutputMode FastDraft" + UIConstraints "*MediaType Glossy *OutputMode MaxDPI" + UIConstraints "*MediaType TransparencyFilm *OutputMode FastDraft" + UIConstraints "*MediaType TransparencyFilm *OutputMode Best" + UIConstraints "*MediaType TransparencyFilm *OutputMode MaxDPI" + + // 4x6 or smaller + CustomMedia "Card3x5/Index Card 3x5in" 216 360 9.36 9.36 9.36 9.36 "<</cupsInteger0 78/PageSize [216 360]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 78/PageSize[216 360]/ImagingBBox null>>setpagedevice" + CustomMedia "Card4x6/Index Card 4x6in" 288 432 9.36 9.36 9.36 9.36 "<</cupsInteger0 74/PageSize [288 432]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 74/PageSize[288 432]/ImagingBBox null>>setpagedevice" + CustomMedia "L/L 89x127mm" 252.288 360 9.36 9.36 9.36 9.36 "<</cupsInteger0 121/PageSize[252.288 360]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 121/PageSize[252.288 360]/ImagingBBox null>>setpagedevice" + CustomMedia "L.FB/Borderless Photo L 89x127mm" 265.032 374.112 0 0 0 0 "<</cupsInteger0 121/cupsReal0 .079/cupsReal1 .098/PageSize [265.032 374.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 121/cupsReal0 .079/cupsReal1 .098/PageSize[265.032 374.112]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo4x6/Photo 4x6in" 288 432 9.36 9.36 9.36 9.36 "<</cupsInteger0 74/PageSize[288 432]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 74/PageSize[288 432]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo4x6.FB/Borderless Photo 4x6in" 303.552 446.112 0 0 0 0 "<</cupsInteger0 74/cupsReal0 .098/cupsReal1 .098/PageSize[303.552 446.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 74/cupsReal0 .098/cupsReal1 .098/PageSize[303.552 446.112]/ImagingBBox null>>setpagedevice" + CustomMedia "A6/A6 105x148mm" 297.65 419.54 9.36 9.36 9.36 9.36 "<</cupsInteger0 73/PageSize[297.65 419.54]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 73/PageSize[297.65 419.54]/ImagingBBox null>>setpagedevice" + CustomMedia "A6.FB/A6 Borderless 105x148mm" 310.392 433.656 0 0 0 0 "<</cupsInteger0 73/PageSize[310.392 433.656]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 73/cupsReal0 .079/cupsReal1 .098/PageSize[310.392 433.656]/ImagingBBox null>>setpagedevice" + CustomMedia "Hagaki/Hagaki card 100x148mm" 283.46 419.54 9.36 9.36 9.36 9.36 "<</cupsInteger0 71/PageSize[283.46 419.54]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 71/PageSize[283.46 419.54]/ImagingBBox null>>setpagedevice" + CustomMedia "Hagaki.FB/Hagaki Borderless 100x148mm" 297.864 433.656 0 0 0 0 "<</cupsInteger0 71/PageSize[297.864 433.656]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 71/PageSize[297.864 433.656]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo3x5/Photo 3x5in" 216 360 9.36 9.36 9.36 9.36 "<</cupsInteger0 78/PageSize [216 360]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 78/PageSize[216 360]/ImagingBBox null>>setpagedevice" + + // 5x7 + CustomMedia "Photo5x7/Photo 5x7in" 360 504 9.36 9.36 9.36 9.36 "<</cupsInteger0 122/PageSize[360 504]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 122/PageSize[360 504]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo13x18/Photo 13x18cm" 360 504 9.36 9.36 9.36 9.36 "<</cupsInteger0 122/PageSize[360 504]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 122/PageSize[360 504]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo5x7.FB/Photo Borderless 5x7in" 372.816 518.112 0 0 0 0 "<</cupsInteger0 122/PageSize[372.816 518.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 122/PageSize[372.816 518.112]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo13x18.FB/Photo Borderless 13x18cm" 372.816 518.112 0 0 0 0 "<</cupsInteger0 122/PageSize[372.816 518.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 122/PageSize[372.816 518.112]/ImagingBBox null>>setpagedevice" + CustomMedia "Card5x8/Index Card 5x8in" 360 576 9.36 9.36 9.36 9.36 "<</cupsInteger0 75/PageSize[360 576]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 75/PageSize[360 576]/ImagingBBox null>>setpagedevice" + CustomMedia "A5/A5 148x210mm" 419.544 595.296 9.36 9.36 9.36 9.36 "<</cupsInteger0 25/PageSize[419.544 595.296]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 25/PageSize[419.544 595.296]/ImagingBBox null>>setpagedevice" + CustomMedia "A5.FB/A5 Borderless 148x210mm" 435.096 609.408 0 0 0 0 "<</cupsInteger0 25/PageSize[435.096 609.408]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 25/cupsReal0 .098/cupsReal1 .098/PageSize[435.096 609.408]/ImagingBBox null>>setpagedevice" + CustomMedia "Ofuku/Ofuku-Hagaki 200x148mm" 566.92 419.54 9.36 9.36 9.36 9.36 "<</cupsInteger0 72/PageSize[566.92 419.54]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 72/PageSize[566.92 419.54]/ImagingBBox null>>setpagedevice" + + // Standard + CustomMedia "Photo2L.FB/2L Borderless 127x178mm" 372.81 518.328 0 0 0 0 "<</cupsInteger0 122/PageSize[372.81 518.328]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 122/cupsReal0 .089/cupsReal1 .098/PageSize[372.81 518.328]/ImagingBBox null>>setpagedevice" + CustomMedia "6x8/6x8in" 432 576 9.36 9.36 9.36 9.36 "<</cupsInteger0 101/PageSize[432 576]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 101/PageSize[432 576]/ImagingBBox null>>setpagedevice" + CustomMedia "JB5/JB5 182x257mm" 515.88 728.49 9.36 9.36 9.36 9.36 "<</cupsInteger0 45/PageSize[515.88 728.49]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 45/PageSize [515.88 728.49]/ImagingBBox null>>setpagedevice" + CustomMedia "B5.FB/B5 Borderless 176x250mm" 531.432 742.608 0 0 0 0 "<</cupsInteger0 65/PageSize[531.432 742.608]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 65/cupsReal0 .098/cupsReal1 .098/PageSize[531.432 742.608]/ImagingBBox null>>setpagedevice" + CustomMedia "Executive/Executive 7.25x10.5in" 522 756 9.36 9.36 9.36 9.36 "<</cupsInteger0 1/PageSize[522 756]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 1/PageSize[522 756]/ImagingBBox null>>setpagedevice" + CustomMedia "Statement/Statement 5.5x8.5in" 396 612 9.36 9.36 9.36 9.36 "<</cupsInteger0 15/PageSize[396 612]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 15/PageSize[396 612]/ImagingBBox null>>setpagedevice" + *CustomMedia "Letter/Letter 8.5x11in" 612 792 9.36 9.36 9.36 9.36 "<</cupsInteger0 2/PageSize[612 792]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 2/PageSize[612 792]/ImagingBBox null>>setpagedevice" + CustomMedia "Letter.FB/Letter Borderless 8.5x11in" 627.552 806.112 0 0 0 0 "<</cupsInteger0 2/PageSize[627.552 806.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 2/cupsReal0 .098/cupsReal1 .098/PageSize[627.552 806.112]/ImagingBBox null>>setpagedevice" + CustomMedia "CardLetter/Index Card Letter 8.5x11in" 612 792 9.36 9.36 9.36 9.36 "<</cupsInteger0 2/PageSize[612 792]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 2/PageSize[612 792]/ImagingBBox null>>setpagedevice" + CustomMedia "A4/A4 210x297mm" 595.29 841.89 9.36 9.36 9.36 9.36 "<</cupsInteger0 26/PageSize[595.29 841.89]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 26/PageSize[595.29 841.89]/ImagingBBox null>>setpagedevice" + CustomMedia "A4.FB/A4 Borderless 210x297mm" 610.848 856.008 0 0 0 0 "<</cupsInteger0 26/PageSize[610.848 856.008]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 26/cupsReal0 .098/cupsReal1 .098/PageSize[610.848 856.008]/ImagingBBox null>>setpagedevice" + CustomMedia "CardA4/Index Card A4 210x297mm" 595.44 841.68 9.36 9.36 9.36 9.36 "<</cupsInteger0 26/PageSize[595.44 841.68]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 26/PageSize[595.44 841.68]/ImagingBBox null>>setpagedevice" + CustomMedia "Legal/Legal 8.5x14in" 612 1008 9.36 9.36 9.36 9.36 "<</cupsInteger0 3/PageSize[612 1008]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 3/PageSize[612 1008]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo10x15/Photo 10x15cm" 288 432 9.36 9.36 9.36 9.36 "<</cupsInteger0 74/PageSize[288 432]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 74/PageSize[288 432]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo10x15.FB/Borderless Photo 10x15cm" 303.552 446.112 0 0 0 0 "<</cupsInteger0 74/cupsReal0 .098/cupsReal1 .098/PageSize[303.552 446.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 74/cupsReal0 .098/cupsReal1 .098/PageSize[303.552 446.112]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo2L/Photo 2L 127x178mm" 360 504.216 9.36 9.36 9.36 9.36 "<</cupsInteger0 122/PageSize[360 504.216]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 122/PageSize[360 504.216]/ImagingBBox null>>setpagedevice" + CustomMedia "Photo8x10/Photo 8x10in" 576 720 9.36 9.36 9.36 9.36 "<</cupsInteger0 7/PageSize[576 720]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 7/PageSize[576 720]/ImagingBBox null>>setpagedevice" + CustomMedia "8x10.FB/Borderless 8x10in" 591.552 734.112 0 0 0 0 "<</cupsInteger0 7/PageSize[591.552 734.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 7/cupsReal0 .098/cupsReal1 .098/PageSize[591.552 734.112]/ImagingBBox null>>setpagedevice" + CustomMedia "8.5x13/8.5x13in" 612 936 9.36 9.36 9.36 9.36 "<</cupsInteger0 101/PageSize[612 936]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 101/PageSize[612 936]/ImagingBBox null>>setpagedevice" + + // Envelope + CustomMedia "EnvA2/A2 Envelope 4.37x5.75in" 314.64 413.856 9.36 46.8 9.36 46.8 "<</cupsInteger0 109/PageSize[314.64 413.856]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 109/PageSize[314.64 413.856]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvC6/C6 Envelope 114x162mm" 323.136 459.216 9.36 46.8 9.36 46.8 "<</cupsInteger0 92/PageSize[323.136 459.216]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 92/PageSize[323.136 459.216]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvChou4/#4 Japanese Envelope 90x205mm" 255.096 581.112 9.36 46.8 9.36 46.8 "<</cupsInteger0 111/PageSize[255.096 581.112]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 111/PageSize[255.096 581.112]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvCard/Card Envelope 4.4x6in" 316.8 432 9.36 46.8 9.36 46.8 "<</cupsInteger0 114/PageSize[316.8 432]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 114/PageSize[316.8 432]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvMonarch/Monarch Envelope 3.875x7.5in" 279.36 540 9.36 46.8 9.36 46.8 "<</cupsInteger0 80/PageSize[279.36 540]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 80/PageSize[279.36 540]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvDL/DL Envelope 110x220mm" 311.832 623.592 9.36 46.8 9.36 46.8 "<</cupsInteger0 90/PageSize[311.832 623.592]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 90/PageSize[311.832 623.592]/ImagingBBox null>>setpagedevice" + CustomMedia "Env10/#10 Envelope 4.125x9.5in" 297.36 684 9.36 46.8 9.36 46.8 "<</cupsInteger0 81/PageSize[297.36 684]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 81/PageSize[297.36 684]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvChou3/#3 Japanese Envelope 120x235mm" 340.128 666.144 9.36 46.8 9.36 46.8 "<</cupsInteger0 110/PageSize[340.128 666.144]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 110/PageSize[340.128 666.144]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvC5/C5 Envelope 162x229mm" 459.216 649.152 9.36 46.8 9.36 46.8 "<</cupsInteger0 91/PageSize[459.216 649.152]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 91/PageSize[459.216 649.152]/ImagingBBox null>>setpagedevice" + + // Custom page sizes from 1x4in to legal + HWMargins 9.36 9.36 9.36 9.36 + VariablePaperSize Yes + MinSize 3in 5in + MaxSize 8.5in 14in + + // <%Saipan:Normal%> + { + ModelName "HP Officejet 6100" + Attribute "NickName" "" "HP Officejet 6100, $Version" + Attribute "ShortNickName" "" "HP Officejet 6100" + Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6100;DES:officejet 6100;" + PCFileName "hp-officejet_6100.ppd" + Attribute "Product" "" "(HP Officejet 6100 Eprinter h611a)" + } + { + ModelName "HP Officejet 6600" + Attribute "NickName" "" "HP Officejet 6600, $Version" + Attribute "ShortNickName" "" "HP Officejet 6600" + Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6600;DES:officejet 6600;" + PCFileName "hp-officejet_6600.ppd" + Attribute "Product" "" "(HP Officejet 6600 E-all-in-one Printer - h711a)" + } + // End Supported media sizes with full bleed. + + //Saipan Auto Duplex PaperSizes + { + Attribute "cupsEvenDuplex" "" "True" + Attribute "cupsBackSide" "" "Rotated" + Attribute "cupsFlipDuplex" "" "True" + + // Duplexer is optional... + Installable "OptionDuplex/Duplexer Installed" + + Option "Duplex/Double-Sided Printing" PickOne AnySetup 10.0 + Choice "DuplexNoTumble/Long Edge (Standard)" "<</Duplex true/Tumble false>>setpagedevice" + Choice "DuplexTumble/Short Edge (Flip)" "<</Duplex true/Tumble true>>setpagedevice" + *Choice "None/Off" "<</Duplex false/Tumble false>>setpagedevice" + + // Non duplex media against duplex + UIConstraints "*PageSize Card3x5 *Duplex" + UIConstraints "*PageSize L *Duplex" + UIConstraints "*PageSize L.FB *Duplex" + UIConstraints "*PageSize Hagaki *Duplex" + UIConstraints "*PageSize Hagaki.FB *Duplex" + UIConstraints "*PageSize Card4x6 *Duplex" + UIConstraints "*PageSize Photo4x6 *Duplex" + UIConstraints "*PageSize Photo4x6.FB *Duplex" + UIConstraints "*PageSize A6 *Duplex" + UIConstraints "*PageSize A6.FB *Duplex" + UIConstraints "*PageSize Photo5x7 *Duplex" + UIConstraints "*PageSize Photo5x7.FB *Duplex" + UIConstraints "*PageSize Photo2L *Duplex" + UIConstraints "*PageSize Photo2L.FB *Duplex" + UIConstraints "*PageSize Card5x8 *Duplex" + UIConstraints "*PageSize Oufuku *Duplex" + UIConstraints "*PageSize A5 *Duplex" + UIConstraints "*PageSize A5.FB *Duplex" + UIConstraints "*PageSize B5 *Duplex" + UIConstraints "*PageSize B5.FB *Duplex" + UIConstraints "*PageSize JB5 *Duplex" + UIConstraints "*PageSize JB5.FB *Duplex" + UIConstraints "*PageSize Executive *Duplex" + UIConstraints "*PageSize 8x10 *Duplex" + UIConstraints "*PageSize 8x10.FB *Duplex" + UIConstraints "*PageSize Letter.FB *Duplex" + UIConstraints "*PageSize A4.FB *Duplex" + UIConstraints "*PageSize Legal *Duplex" + UIConstraints "*PageSize EnvA2 *Duplex" + UIConstraints "*PageSize EnvC6 *Duplex" + UIConstraints "*PageSize EnvChou4 *Duplex" + UIConstraints "*PageSize EnvCard *Duplex" + UIConstraints "*PageSize EnvMonarch *Duplex" + UIConstraints "*PageSize EnvDL *Duplex" + UIConstraints "*PageSize Env10 *Duplex" + UIConstraints "*PageSize EnvChou3 *Duplex" + UIConstraints "*PageSize EnvC5 *Duplex" + UIConstraints "*PageSize Statement *Duplex" + UIConstraints "*PageSize Photo10x15 *Duplex" + UIConstraints "*PageSize Photo10x15.FB *Duplex" + UIConstraints "*PageSize Photo13x18 *Duplex" + UIConstraints "*PageSize Photo13x18.FB *Duplex" + UIConstraints "*PageSize 6X8 *Duplex" + UIConstraints "*PageSize 8.5X13 *Duplex" + + CustomMedia "A4.Duplex/A4 AutoDuplex 210x297mm" 595.29 799.34 9.36 33.192 9.36 9.36 "<</cupsInteger0 26/PageSize[595.29 799.34]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 26/PageSize[595.29 799.34]/ImagingBBox null>>setpagedevice" + CustomMedia "Letter.Duplex/Letter AutoDuplex 8.5x11in" 612 749.44 9.36 33.192 9.36 9.36 "<</cupsInteger0 2/PageSize[612 749.44]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 2/PageSize[612 749.44]/ImagingBBox null>>setpagedevice" + CustomMedia "CardA4/Index Card A4 210x297mm AutoDuplex" 595.44 799.13 9.36 33.192 9.36 9.36 "<</cupsInteger0 26/PageSize[595.44 799.13]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 26/PageSize[595.44 799.13]/ImagingBBox null>>setpagedevice" + CustomMedia "CardLetter/Index Card Letter 8.5x11in AutoDuplex" 612 749.44 9.36 33.192 9.36 9.36 "<</cupsInteger0 2/PageSize[612 749.44]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 2/PageSize[612 749.44]/ImagingBBox null>>setpagedevice" + + // <%Saipan:AutoDuplex%> + { + ModelName "HP Officejet 6700" + Attribute "NickName" "" "HP Officejet 6700, $Version" + Attribute "ShortNickName" "" "HP Officejet 6700" + Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6700;DES:officejet 6700;" + PCFileName "hp-officejet_6700.ppd" + Attribute "Product" "" "(HP Officejet 6700 E-all-in-one Printer - h711n)" + } + } + +} // End Saipan + + + //////// Python11 { Attribute "cupsEvenDuplex" "" "True" @@ -8216,6 +8474,8 @@ Manufacturer "HP" "<</cupsInteger0 83/PageSize[261.36 468]/ImagingBBox null>>setpagedevice" CustomMedia "EnvCard/Card Envelope 4.4x6in" 315 432 9 40.536 9 9 "<</cupsInteger0 114/PageSize[315 432]/ImagingBBox null>>setpagedevice" "<</cupsInteger0 114/PageSize[315 432]/ImagingBBox null>>setpagedevice" + CustomMedia "EnvC5/C5 Envelope 162x229mm" 457.92 649.44 9 42.19 9 9 "<</cupsInteger0 91/PageSize[457.92 649.44]/ImagingBBox null>>setpagedevice" + "<</cupsInteger0 91/PageSize[457.92 649.44]/ImagingBBox null>>setpagedevice" { UIConstraints "*PageSize L.FB *OutputMode FastDraft" @@ -8463,6 +8723,7 @@ Manufacturer "HP" } // End Pyramid without AutoDuplex and CD-DVD + //////// OJ7000 { Attribute "hpPrinterLanguage" "" "pcl3gui2" @@ -13629,14 +13890,6 @@ Group "RLT/HP Real Life Technologies" Attribute "Product" "" "(HP Printer Scanner Copier 300)" } { - ModelName "HP Officejet Series 500" - Attribute "NickName" "" "HP Officejet Series 500, $Version" - Attribute "ShortNickName" "" "HP Officejet Series 500" - Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet series 500;DES:officejet series 500;" - PCFileName "hp-officejet_series_500.ppd" - Attribute "Product" "" "(HP Officejet 500 All-in-one Printer)" - } - { ModelName "HP Officejet Series 520" Attribute "NickName" "" "HP Officejet Series 520, $Version" Attribute "ShortNickName" "" "HP Officejet Series 520" @@ -14992,14 +15245,6 @@ Group "RLT/HP Real Life Technologies" // <%LJZjsMono:NoAutoDuplex%> { - ModelName "HP LaserJet Professional p1102s" - Attribute "NickName" "" "HP LaserJet Professional p1102s, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet Professional p1102s" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet professional p1102s;DES:hp laserjet professional p1102s;" - PCFileName "hp-laserjet_professional_p1102s.ppd" - Attribute "Product" "" "(HP LaserJet Professional p1102s Printer)" - } - { ModelName "HP LaserJet Professional p1102w" Attribute "NickName" "" "HP LaserJet Professional p1102w, $Version, requires proprietary plugin" Attribute "ShortNickName" "" "HP LaserJet Professional p1102w" @@ -15014,6 +15259,7 @@ Group "RLT/HP Real Life Technologies" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet professional p1102;DES:hp laserjet professional p1102;" PCFileName "hp-laserjet_professional_p1102.ppd" Attribute "Product" "" "(HP LaserJet Professional p1102 Printer)" + Attribute "Product" "" "(HP LaserJet Professional p1102s Printer)" } { ModelName "HP LaserJet Professional P 1102w" @@ -15046,6 +15292,7 @@ Group "RLT/HP Real Life Technologies" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet professional m1132 mfp;DES:hp laserjet professional m1132 mfp;" PCFileName "hp-laserjet_professional_m1132_mfp.ppd" Attribute "Product" "" "(HP LaserJet Professional m1132 Multifunction Printer)" + Attribute "Product" "" "(HP LaserJet Professional m1132s Multifunction Printer)" } { ModelName "HP LaserJet Professional m1136 MFP" @@ -15403,36 +15650,12 @@ Group "RLT/HP Real Life Technologies" Attribute "hpLJZjsColorVersion" "" "2" // <%LJZjsColor:Advanced%> { - ModelName "HP LaserJet cp1021" - Attribute "NickName" "" "HP LaserJet cp1021, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1021" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1021;DES:hp laserjet cp1021;" - PCFileName "hp-laserjet_cp1021.ppd" - Attribute "Product" "" "(HP LaserJet cp1021)" - } - { - ModelName "HP LaserJet cp1022" - Attribute "NickName" "" "HP LaserJet cp1022, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1022" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1022;DES:hp laserjet cp1022;" - PCFileName "hp-laserjet_cp1022.ppd" - Attribute "Product" "" "(HP LaserJet cp1022)" - } - { - ModelName "HP LaserJet cp1023" - Attribute "NickName" "" "HP LaserJet cp1023, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1023" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1023;DES:hp laserjet cp1023;" - PCFileName "hp-laserjet_cp1023.ppd" - Attribute "Product" "" "(HP LaserJet cp1023)" - } - { ModelName "HP LaserJet cp1025nw" Attribute "NickName" "" "HP LaserJet cp1025nw, $Version, requires proprietary plugin" Attribute "ShortNickName" "" "HP LaserJet cp1025nw" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1025nw;DES:hp laserjet cp1025nw;" PCFileName "hp-laserjet_cp1025nw.ppd" - Attribute "Product" "" "(HP LaserJet cp1025nw)" + Attribute "Product" "" "(HP LaserJet Pro cp1025nw Color Printer Series)" } { ModelName "HP LaserJet cp1025" @@ -15440,23 +15663,23 @@ Group "RLT/HP Real Life Technologies" Attribute "ShortNickName" "" "HP LaserJet cp1025" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1025;DES:hp laserjet cp1025;" PCFileName "hp-laserjet_cp1025.ppd" - Attribute "Product" "" "(HP LaserJet cp1025)" + Attribute "Product" "" "(HP LaserJet Pro cp1025 Color Printer Series)" } { - ModelName "HP LaserJet cp1027nw" - Attribute "NickName" "" "HP LaserJet cp1027nw, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1027nw" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1027nw;DES:hp laserjet cp1027nw;" - PCFileName "hp-laserjet_cp1027nw.ppd" - Attribute "Product" "" "(HP LaserJet cp1027nw)" + ModelName "HP LaserJet Cp 1025nw" + Attribute "NickName" "" "HP LaserJet Cp 1025nw, $Version, requires proprietary plugin" + Attribute "ShortNickName" "" "HP LaserJet Cp 1025nw" + Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp 1025nw;DES:hp laserjet cp 1025nw;" + PCFileName "hp-laserjet_cp_1025nw.ppd" + Attribute "Product" "" "(HP LaserJet Pro Cp 1025nw Color Printer Series)" } { - ModelName "HP LaserJet cp1028nw" - Attribute "NickName" "" "HP LaserJet cp1028nw, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1028nw" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1028nw;DES:hp laserjet cp1028nw;" - PCFileName "hp-laserjet_cp1028nw.ppd" - Attribute "Product" "" "(HP LaserJet cp1028nw)" + ModelName "HP LaserJet Cp 1025" + Attribute "NickName" "" "HP LaserJet Cp 1025, $Version, requires proprietary plugin" + Attribute "ShortNickName" "" "HP LaserJet Cp 1025" + Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp 1025;DES:hp laserjet cp 1025;" + PCFileName "hp-laserjet_cp_1025.ppd" + Attribute "Product" "" "(HP LaserJet Pro Cp 1025 Color Printer Series)" } } } // End LJZjsColor (for proprietary plugin) diff --git a/prnt/drv/hpijs.drv.in b/prnt/drv/hpijs.drv.in index a6423399a..22a514f5d 100644 --- a/prnt/drv/hpijs.drv.in +++ b/prnt/drv/hpijs.drv.in @@ -9965,14 +9965,6 @@ r="HEWLETT-PACKARD" -sDeviceModel="DESKJET 660"" Attribute "Product" "" "(HP Printer Scanner Copier 300)" } { - ModelName "HP Officejet Series 500 hpijs" - Attribute "NickName" "" "HP Officejet Series 500 hpijs, $Version" - Attribute "ShortNickName" "" "HP Officejet Series 500 hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet series 500;DES:officejet series 500;" - PCFileName "hp-officejet_series_500-hpijs.ppd" - Attribute "Product" "" "(HP Officejet 500 All-in-one Printer)" - } - { ModelName "HP Officejet Series 520 hpijs" Attribute "NickName" "" "HP Officejet Series 520 hpijs, $Version" Attribute "ShortNickName" "" "HP Officejet Series 520 hpijs" @@ -11457,14 +11449,6 @@ Transparency" CustomMedia "w612h935/Executive (JIS)" 612.00 935.00 18.00 14.40 18.00 14.40 "%% FoomaticRIPOptionSetting: PageSize=w612h935" "%% FoomaticRIPOptionSetting: PageSize=w612h935" // <%LJZjsMono:NoAutoDuplex%> { - ModelName "HP LaserJet Professional p1102s hpijs" - Attribute "NickName" "" "HP LaserJet Professional p1102s hpijs, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LJ Professional p1102s hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet professional p1102s;DES:hp laserjet professional p1102s;" - PCFileName "hp-laserjet_professional_p1102s-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet Professional p1102s Printer)" - } - { ModelName "HP LaserJet Professional p1102w hpijs" Attribute "NickName" "" "HP LaserJet Professional p1102w hpijs, $Version, requires proprietary plugin" Attribute "ShortNickName" "" "HP LJ Professional p1102w hpijs" @@ -11479,6 +11463,7 @@ Transparency" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet professional p1102;DES:hp laserjet professional p1102;" PCFileName "hp-laserjet_professional_p1102-hpijs.ppd" Attribute "Product" "" "(HP LaserJet Professional p1102 Printer)" + Attribute "Product" "" "(HP LaserJet Professional p1102s Printer)" } { ModelName "HP LaserJet Professional P 1102w hpijs" @@ -11511,6 +11496,7 @@ Transparency" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet professional m1132 mfp;DES:hp laserjet professional m1132 mfp;" PCFileName "hp-laserjet_professional_m1132_mfp-hpijs.ppd" Attribute "Product" "" "(HP LaserJet Professional m1132 Multifunction Printer)" + Attribute "Product" "" "(HP LaserJet Professional m1132s Multifunction Printer)" } { ModelName "HP LaserJet Professional m1136 MFP hpijs" @@ -12236,36 +12222,12 @@ Transparency" Attribute "hpLJZjsColorVersion" "" "2" // <%LJZjsColor:Advanced%> { - ModelName "HP LaserJet cp1021 hpijs" - Attribute "NickName" "" "HP LaserJet cp1021 hpijs, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1021 hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1021;DES:hp laserjet cp1021;" - PCFileName "hp-laserjet_cp1021-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1021)" - } - { - ModelName "HP LaserJet cp1022 hpijs" - Attribute "NickName" "" "HP LaserJet cp1022 hpijs, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1022 hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1022;DES:hp laserjet cp1022;" - PCFileName "hp-laserjet_cp1022-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1022)" - } - { - ModelName "HP LaserJet cp1023 hpijs" - Attribute "NickName" "" "HP LaserJet cp1023 hpijs, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1023 hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1023;DES:hp laserjet cp1023;" - PCFileName "hp-laserjet_cp1023-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1023)" - } - { ModelName "HP LaserJet cp1025nw hpijs" Attribute "NickName" "" "HP LaserJet cp1025nw hpijs, $Version, requires proprietary plugin" Attribute "ShortNickName" "" "HP LaserJet cp1025nw hpijs" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1025nw;DES:hp laserjet cp1025nw;" PCFileName "hp-laserjet_cp1025nw-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1025nw)" + Attribute "Product" "" "(HP LaserJet Pro cp1025nw Color Printer Series)" } { ModelName "HP LaserJet cp1025 hpijs" @@ -12273,23 +12235,23 @@ Transparency" Attribute "ShortNickName" "" "HP LaserJet cp1025 hpijs" Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1025;DES:hp laserjet cp1025;" PCFileName "hp-laserjet_cp1025-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1025)" + Attribute "Product" "" "(HP LaserJet Pro cp1025 Color Printer Series)" } { - ModelName "HP LaserJet cp1027nw hpijs" - Attribute "NickName" "" "HP LaserJet cp1027nw hpijs, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1027nw hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1027nw;DES:hp laserjet cp1027nw;" - PCFileName "hp-laserjet_cp1027nw-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1027nw)" + ModelName "HP LaserJet Cp 1025nw hpijs" + Attribute "NickName" "" "HP LaserJet Cp 1025nw hpijs, $Version, requires proprietary plugin" + Attribute "ShortNickName" "" "HP LaserJet Cp 1025nw hpijs" + Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp 1025nw;DES:hp laserjet cp 1025nw;" + PCFileName "hp-laserjet_cp_1025nw-hpijs.ppd" + Attribute "Product" "" "(HP LaserJet Pro Cp 1025nw Color Printer Series)" } { - ModelName "HP LaserJet cp1028nw hpijs" - Attribute "NickName" "" "HP LaserJet cp1028nw hpijs, $Version, requires proprietary plugin" - Attribute "ShortNickName" "" "HP LaserJet cp1028nw hpijs" - Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp1028nw;DES:hp laserjet cp1028nw;" - PCFileName "hp-laserjet_cp1028nw-hpijs.ppd" - Attribute "Product" "" "(HP LaserJet cp1028nw)" + ModelName "HP LaserJet Cp 1025 hpijs" + Attribute "NickName" "" "HP LaserJet Cp 1025 hpijs, $Version, requires proprietary plugin" + Attribute "ShortNickName" "" "HP LaserJet Cp 1025 hpijs" + Attribute "1284DeviceID" "" "MFG:HP;MDL:hp laserjet cp 1025;DES:hp laserjet cp 1025;" + PCFileName "hp-laserjet_cp_1025-hpijs.ppd" + Attribute "Product" "" "(HP LaserJet Pro Cp 1025 Color Printer Series)" } } } // end LJZjsColor (for proprietary plugin) @@ -13243,6 +13205,253 @@ lity:PenSet=2,Quality:FullBleed=1" } // end Copperhead +////////// Saipan +{ + Attribute "DefaultResolution" "" "1200dpi" + + // Custom page sizes from 1x4in to Legal + HWMargins 18 36 18 9 + VariablePaperSize Yes + MinSize 1in 4in + MaxSize 8.5in 14in + Attribute "FoomaticRIPOptionSetting" "PageSize=Custom" " -dDEVICEWIDTHPOINTS=0 -dD&& +EVICEHEIGHTPOINTS=0" + + Attribute "FoomaticIDs" "" "HP-DeskJet_5550 hpijs" + Attribute "FoomaticRIPCommandLine" "" "gs -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPA&& +USE -sDEVICE=ijs -sIjsServer=hpijs%A%B%C -dIjsUseOutputFD%Z -sOutputFi&& +le=- -" + Attribute "FoomaticRIPOption" "Model" "enum CmdLine A 100" + Attribute "FoomaticRIPOptionSetting" "Model=HP-DeskJet_5550" " -sDeviceManufacture&& +r="HEWLETT-PACKARD" -sDeviceModel="deskjet 5550"" + Attribute "FoomaticRIPOption" "PrintoutMode" "enum Composite B" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Draft" "Quality=300FastDraftCol&& +orCMYK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Draft.Gray" "Quality=300FastDra&& +ftGrayscaleK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Normal" "Quality=300ColorCMYK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Normal.Gray" "Quality=300Graysc&& +aleK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=High" "Quality=600ColorCMYK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=High.Gray" "Quality=600Grayscal&& +eK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Photo" "Quality=1200PhotoCMYKFu&& +llBleed" + Attribute "FoomaticRIPOption" "InputSlot" "enum CmdLine C" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Default" ",PS:MediaPosition=7" + Attribute "FoomaticRIPOptionSetting" "InputSlot=PhotoTray" ",PS:MediaPosition=6" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Upper" ",PS:MediaPosition=1" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Lower" ",PS:MediaPosition=4" + Attribute "FoomaticRIPOptionSetting" "InputSlot=CDDVDTray" ",PS:MediaPosition=14" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Envelope" ",PS:MediaPosition=3" + Attribute "FoomaticRIPOptionSetting" "InputSlot=LargeCapacity" ",PS:MediaPosition=&& +5" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Manual" ",PS:MediaPosition=2" + Attribute "FoomaticRIPOptionSetting" "InputSlot=MPTray" ",PS:MediaPosition=8" + Attribute "FoomaticRIPOption" "PageSize" "enum CmdLine A" + Attribute "FoomaticRIPOptionSetting" "PageSize=Letter" " -dDEVICEWIDTHPOINTS=612 -&& +dDEVICEHEIGHTPOINTS=792" + Attribute "FoomaticRIPOptionSetting" "PageSize=A4" " -dDEVICEWIDTHPOINTS=595 -dDEV&& +ICEHEIGHTPOINTS=842" + Attribute "FoomaticRIPOptionSetting" "PageSize=Photo" " -dDEVICEWIDTHPOINTS=288 -d&& +DEVICEHEIGHTPOINTS=432" + Attribute "FoomaticRIPOptionSetting" "PageSize=Photo5x7" " -dDEVICEWIDTHPOINTS=360&& + -dDEVICEHEIGHTPOINTS=504" + Attribute "FoomaticRIPOptionSetting" "PageSize=PhotoTearOff" " -dDEVICEWIDTHPOINTS&& +=288 -dDEVICEHEIGHTPOINTS=432" + Attribute "FoomaticRIPOptionSetting" "PageSize=3x5" " -dDEVICEWIDTHPOINTS=216 -dDE&& +VICEHEIGHTPOINTS=360" + Attribute "FoomaticRIPOptionSetting" "PageSize=5x8" " -dDEVICEWIDTHPOINTS=360 -dDE&& +VICEHEIGHTPOINTS=576" + Attribute "FoomaticRIPOptionSetting" "PageSize=A5" " -dDEVICEWIDTHPOINTS=420 -dDEV&& +ICEHEIGHTPOINTS=595" + Attribute "FoomaticRIPOptionSetting" "PageSize=A6" " -dDEVICEWIDTHPOINTS=297 -dDEV&& +ICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=A6TearOff" " -dDEVICEWIDTHPOINTS=29&& +7 -dDEVICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=B5JIS" " -dDEVICEWIDTHPOINTS=516 -d&& +DEVICEHEIGHTPOINTS=729" + Attribute "FoomaticRIPOptionSetting" "PageSize=CDDVD80" " -dDEVICEWIDTHPOINTS=237 && +-dDEVICEHEIGHTPOINTS=237" + Attribute "FoomaticRIPOptionSetting" "PageSize=CDDVD120" " -dDEVICEWIDTHPOINTS=360&& + -dDEVICEHEIGHTPOINTS=360" + Attribute "FoomaticRIPOptionSetting" "PageSize=Env10" " -dDEVICEWIDTHPOINTS=297 -d&& +DEVICEHEIGHTPOINTS=684" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvC5" " -dDEVICEWIDTHPOINTS=459 -d&& +DEVICEHEIGHTPOINTS=649" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvC6" " -dDEVICEWIDTHPOINTS=323 -d&& +DEVICEHEIGHTPOINTS=459" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvDL" " -dDEVICEWIDTHPOINTS=312 -d&& +DEVICEHEIGHTPOINTS=624" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvISOB5" " -dDEVICEWIDTHPOINTS=499&& + -dDEVICEHEIGHTPOINTS=709" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvMonarch" " -dDEVICEWIDTHPOINTS=2&& +79 -dDEVICEHEIGHTPOINTS=540" + Attribute "FoomaticRIPOptionSetting" "PageSize=Executive" " -dDEVICEWIDTHPOINTS=52&& +2 -dDEVICEHEIGHTPOINTS=756" + Attribute "FoomaticRIPOptionSetting" "PageSize=FLSA" " -dDEVICEWIDTHPOINTS=612 -dD&& +EVICEHEIGHTPOINTS=936" + Attribute "FoomaticRIPOptionSetting" "PageSize=Hagaki" " -dDEVICEWIDTHPOINTS=283 -&& +dDEVICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=Legal" " -dDEVICEWIDTHPOINTS=612 -d&& +DEVICEHEIGHTPOINTS=1008" + Attribute "FoomaticRIPOptionSetting" "PageSize=Oufuku" " -dDEVICEWIDTHPOINTS=567 -&& +dDEVICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=w558h774" " -dDEVICEWIDTHPOINTS=558&& + -dDEVICEHEIGHTPOINTS=774" + Attribute "FoomaticRIPOptionSetting" "PageSize=w612h935" " -dDEVICEWIDTHPOINTS=612&& + -dDEVICEHEIGHTPOINTS=935" + Attribute "FoomaticRIPOption" "Duplex" "enum CmdLine A" + Attribute "FoomaticRIPOptionSetting" "Duplex=DuplexNoTumble" " -dDuplex=true -dTum&& +ble=false" + Attribute "FoomaticRIPOptionSetting" "Duplex=DuplexTumble" " -dDuplex=true -dTumbl&& +e=true" + Attribute "FoomaticRIPOptionSetting" "Duplex=None" " -dDuplex=false" + Attribute "FoomaticRIPOption" "DryTime" "enum CmdLine B" + Attribute "FoomaticRIPOptionSetting" "DryTime=Zero" "" + Attribute "FoomaticRIPOptionSetting" "DryTime=Five" ",DryTime=5" + Attribute "FoomaticRIPOptionSetting" "DryTime=Ten" ",DryTime=10" + Attribute "FoomaticRIPOptionSetting" "DryTime=Fifteen" ",DryTime=15" + Attribute "FoomaticRIPOptionSetting" "DryTime=Twenty" ",DryTime=20" + Attribute "FoomaticRIPOptionSetting" "DryTime=TwentyFive" ",DryTime=25" + Attribute "FoomaticRIPOptionSetting" "DryTime=Thirty" ",DryTime=30" + Attribute "FoomaticRIPOption" "Quality" "enum CmdLine B" + Attribute "FoomaticRIPOptionSetting" "Quality=300ColorCMYK" " -r300 -sIjsParams=Qu&& +ality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quality:PenSet&& +=2" + Attribute "FoomaticRIPOptionSetting" "Quality=300ColorCMYKFullBleed" " -r300 -sIjs&& +Params=Quality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quali&& +ty:PenSet=2,Quality:FullBleed=1" + Attribute "FoomaticRIPOptionSetting" "Quality=300DraftColorCMYK" " -r300 -sIjsPara&& +ms=Quality:Quality=1,Quality:ColorMode=2,Quality:MediaType=0,Quality:P&& +enSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=300DraftGrayscaleK" " -r300 -sIjs&& +Params=Quality:Quality=1,Quality:ColorMode=0,Quality:MediaType=0,Quali&& +ty:PenSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=300FastDraftColorCMYK" " -r300 -sIjs&& +Params=Quality:Quality=4,Quality:ColorMode=2,Quality:MediaType=0,Quali&& +ty:PenSet=2,Quality:SpeedMech=1" + Attribute "FoomaticRIPOptionSetting" "Quality=300FastDraftGrayscaleK" " -r300 -&& +sIjsParams=Quality:Quality=4,Quality:ColorMode=0,Quality:MediaType=0,Q&& +uality:PenSet=2,Quality:SpeedMech=1" + Attribute "FoomaticRIPOptionSetting" "Quality=300GrayscaleK" " -r300 -sIjsParam&& +s=Quality:Quality=0,Quality:ColorMode=0,Quality:MediaType=0,Quality:Pe&& +nSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=600ColorCMYK" " -r600 -sIjsParams=Qu&& +ality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quality:PenSet&& +=2" + Attribute "FoomaticRIPOptionSetting" "Quality=600ColorCMYKFullBleed" " -r600 -sIjs&& +Params=Quality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quali&& +ty:PenSet=2,Quality:FullBleed=1" + Attribute "FoomaticRIPOptionSetting" "Quality=600GrayscaleK" " -r600 -sIjsParam&& +s=Quality:Quality=0,Quality:ColorMode=0,Quality:MediaType=0,Quality:Pe&& +nSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=1200PhotoCMYK" " -r1200 -sIjsParams=&& +Quality:Quality=3,Quality:ColorMode=2,Quality:MediaType=2,Quality:PenS&& +et=2" + Attribute "FoomaticRIPOptionSetting" "Quality=1200PhotoCMYKFullBleed" " -r1200 -sI&& +jsParams=Quality:Quality=3,Quality:ColorMode=2,Quality:MediaType=2,Qua&& +lity:PenSet=2,Quality:FullBleed=1" + Group "General/General" + Option "PrintoutMode/Printout Mode" PickOne AnySetup 10.0 + Choice "Draft/Draft (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Draft" + Choice "Draft.Gray/Draft Grayscale (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Draft.Gray" + *Choice "Normal/Normal (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Normal" + Choice "Normal.Gray/Normal Grayscale (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Normal.Gray" + Choice "High/High Quality (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=High" + Choice "High.Gray/High Quality Grayscale (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=High.Gray" + Choice "Photo/Photo (on photo paper)" "%% FoomaticRIPOptionSetting: PrintoutMode=Photo" + Option "InputSlot/Media Source" PickOne AnySetup 100.0 + *Choice "Default/Printer default" "%% FoomaticRIPOptionSetting: InputSlot=Default" + Choice "PhotoTray/Photo Tray" "%% FoomaticRIPOptionSetting: InputSlot=PhotoTray" + Choice "Upper/Upper Tray" "%% FoomaticRIPOptionSetting: InputSlot=Upper" + Choice "Lower/Lower Tray" "%% FoomaticRIPOptionSetting: InputSlot=Lower" + Choice "CDDVDTray/CD or DVD Tray" "%% FoomaticRIPOptionSetting: InputSlot=CDDVDTray" + Choice "Envelope/Envelope Feeder" "%% FoomaticRIPOptionSetting: InputSlot=Envelope" + Choice "LargeCapacity/Large Capacity Tray" "%% FoomaticRIPOptionSetting: InputSlot=LargeCapacity" + Choice "Manual/Manual Feeder" "%% FoomaticRIPOptionSetting: InputSlot=Manual" + Choice "MPTray/Multi Purpose Tray" "%% FoomaticRIPOptionSetting: InputSlot=MPTray" + Option "Duplex/Double-Sided Printing" PickOne AnySetup 120.0 + Choice "DuplexNoTumble/Long Edge (Standard)" "%% FoomaticRIPOptionSetting: Duplex=DuplexNoTumble" + Choice "DuplexTumble/Short Edge (Flip)" "%% FoomaticRIPOptionSetting: Duplex=DuplexTumble" + *Choice "None/Off" "%% FoomaticRIPOptionSetting: Duplex=None" + Option "DryTime/Additional Dry Time" PickOne AnySetup 120.0 + *Choice "Zero/Printer Default" "%% FoomaticRIPOptionSetting: DryTime=Zero" + Choice "Five/5 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Five" + Choice "Ten/10 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Ten" + Choice "Fifteen/15 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Fifteen" + Choice "Twenty/20 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Twenty" + Choice "TwentyFive/25 Seconds" "%% FoomaticRIPOptionSetting: DryTime=TwentyFive" + Choice "Thirty/30 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Thirty" + Group "PrintoutMode/Printout Mode" + Option "Quality/Resolution, Quality, Ink Type, Media Type" PickOne AnySetup 100.0 + *Choice "FromPrintoutMode/Controlled by 'Printout Mode'" "%% FoomaticRIPOptionSetting: Quality=@PrintoutMode" + Choice "300ColorCMYK/300 dpi, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300ColorCMYK" + Choice "300ColorCMYKFullBleed/300 dpi, Color, Full Bleed, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300ColorCMYKFullBleed" + Choice "300DraftColorCMYK/300 dpi, Draft, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300DraftColorCMYK" + Choice "300DraftGrayscaleK/300 dpi, Draft, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=300DraftGrayscaleK" + Choice "300FastDraftColorCMYK/300 dpi, FastDraft, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300FastDraftColorCMYK" + Choice "300FastDraftGrayscaleK/300 dpi, FastDraft, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=300FastDraftGrayscaleK" + Choice "300GrayscaleK/300 dpi, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=300GrayscaleK" + Choice "600ColorCMYK/600 dpi, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=600ColorCMYK" + Choice "600ColorCMYKFullBleed/600 dpi, Color, Full Bleed, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=600ColorCMYKFullBleed" + Choice "600GrayscaleK/600 dpi, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=600GrayscaleK" + Choice "1200PhotoCMYK/1200 dpi, Photo, Black + Color Cartr., Photo Paper" "%% FoomaticRIPOptionSetting: Quality=1200PhotoCMYK" + Choice "1200PhotoCMYKFullBleed/1200 dpi, Photo, Full Bleed, Black + Color Cartr., Photo Paper" "%% FoomaticRIPOptionSetting: Quality=1200PhotoCMYKFullBleed" + *CustomMedia "Letter/Letter" 612.00 792.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=Letter" "%% FoomaticRIPOptionSetting: PageSize=Letter" + CustomMedia "A4/A4" 595.00 842.00 9.72 36.00 9.72 9.00 "%% FoomaticRIPOptionSetting: PageSize=A4" "%% FoomaticRIPOptionSetting: PageSize=A4" + CustomMedia "Photo/Photo or 4x6 inch index card" 288.00 432.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Photo" "%% FoomaticRIPOptionSetting: PageSize=Photo" + CustomMedia "Photo5x7/Photo or 5x7 inch index card" 360.00 504.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Photo5x7" "%% FoomaticRIPOptionSetting: PageSize=Photo5x7" + CustomMedia "PhotoTearOff/Photo with tear-off tab" 288.00 432.00 0.00 0.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=PhotoTearOff" "%% FoomaticRIPOptionSetting: PageSize=PhotoTearOff" + CustomMedia "3x5/3x5 inch index card" 216.00 360.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=3x5" "%% FoomaticRIPOptionSetting: PageSize=3x5" + CustomMedia "5x8/5x8 inch index card" 360.00 576.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=5x8" "%% FoomaticRIPOptionSetting: PageSize=5x8" + CustomMedia "A5/A5" 420.00 595.00 9.00 36.00 9.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=A5" "%% FoomaticRIPOptionSetting: PageSize=A5" + CustomMedia "A6/A6" 297.00 420.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=A6" "%% FoomaticRIPOptionSetting: PageSize=A6" + CustomMedia "A6TearOff/A6 with tear-off tab" 297.00 420.00 0.00 0.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=A6TearOff" "%% FoomaticRIPOptionSetting: PageSize=A6TearOff" + CustomMedia "B5JIS/B5 (JIS)" 516.00 729.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=B5JIS" "%% FoomaticRIPOptionSetting: PageSize=B5JIS" + CustomMedia "CDDVD80/CD or DVD 80 mm" 237.00 237.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=CDDVD80" "%% FoomaticRIPOptionSetting: PageSize=CDDVD80" + CustomMedia "CDDVD120/CD or DVD 120 mm" 360.00 360.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=CDDVD120" "%% FoomaticRIPOptionSetting: PageSize=CDDVD120" + CustomMedia "Env10/Envelope #10" 297.00 684.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Env10" "%% FoomaticRIPOptionSetting: PageSize=Env10" + CustomMedia "EnvC5/Envelope C5" 459.00 649.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=EnvC5" "%% FoomaticRIPOptionSetting: PageSize=EnvC5" + CustomMedia "EnvC6/Envelope C6" 323.00 459.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=EnvC6" "%% FoomaticRIPOptionSetting: PageSize=EnvC6" + CustomMedia "EnvDL/Envelope DL" 312.00 624.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=EnvDL" "%% FoomaticRIPOptionSetting: PageSize=EnvDL" + CustomMedia "EnvISOB5/Envelope B5" 499.00 709.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=EnvISOB5" "%% FoomaticRIPOptionSetting: PageSize=EnvISOB5" + CustomMedia "EnvMonarch/Envelope Monarch" 279.00 540.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=EnvMonarch" "%% FoomaticRIPOptionSetting: PageSize=EnvMonarch" + CustomMedia "Executive/Executive" 522.00 756.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=Executive" "%% FoomaticRIPOptionSetting: PageSize=Executive" + CustomMedia "FLSA/American Foolscap" 612.00 936.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=FLSA" "%% FoomaticRIPOptionSetting: PageSize=FLSA" + CustomMedia "Hagaki/Hagaki" 283.00 420.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Hagaki" "%% FoomaticRIPOptionSetting: PageSize=Hagaki" + CustomMedia "Legal/Legal" 612.00 1008.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=Legal" "%% FoomaticRIPOptionSetting: PageSize=Legal" + CustomMedia "Oufuku/Oufuku-Hagaki" 567.00 420.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Oufuku" "%% FoomaticRIPOptionSetting: PageSize=Oufuku" + CustomMedia "w558h774/16K" 558.00 774.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=w558h774" "%% FoomaticRIPOptionSetting: PageSize=w558h774" + CustomMedia "w612h935/Executive (JIS)" 612.00 935.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=w612h935" "%% FoomaticRIPOptionSetting: PageSize=w612h935" + // <%Saipan:Normal%> + { + ModelName "HP Officejet 6100 hpijs" + Attribute "NickName" "" "HP Officejet 6100 hpijs, $Version" + Attribute "ShortNickName" "" "HP Officejet 6100 hpijs" + Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6100;DES:officejet 6100;" + PCFileName "hp-officejet_6100-hpijs.ppd" + Attribute "Product" "" "(HP Officejet 6100 Eprinter h611a)" + } + { + ModelName "HP Officejet 6600 hpijs" + Attribute "NickName" "" "HP Officejet 6600 hpijs, $Version" + Attribute "ShortNickName" "" "HP Officejet 6600 hpijs" + Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6600;DES:officejet 6600;" + PCFileName "hp-officejet_6600-hpijs.ppd" + Attribute "Product" "" "(HP Officejet 6600 E-all-in-one Printer - h711a)" + } + // <%Saipan:AutoDuplex%> + { + ModelName "HP Officejet 6700 hpijs" + Attribute "NickName" "" "HP Officejet 6700 hpijs, $Version" + Attribute "ShortNickName" "" "HP Officejet 6700 hpijs" + Attribute "1284DeviceID" "" "MFG:HP;MDL:officejet 6700;DES:officejet 6700;" + PCFileName "hp-officejet_6700-hpijs.ppd" + Attribute "Product" "" "(HP Officejet 6700 E-all-in-one Printer - h711n)" + } +} // end Saipan + ////////// Python11 { Attribute "DefaultResolution" "" "1200dpi" @@ -15869,5 +16078,7 @@ lity:PenSet=2,Quality:FullBleed=1" } // End Pyramid + + } // end Manufacturer "HP" diff --git a/prnt/drv/hpijs.drv.in.template b/prnt/drv/hpijs.drv.in.template index 2b12412aa..27f114e38 100644 --- a/prnt/drv/hpijs.drv.in.template +++ b/prnt/drv/hpijs.drv.in.template @@ -7028,6 +7028,229 @@ lity:PenSet=2,Quality:FullBleed=1" } // end Copperhead +////////// Saipan +{ + Attribute "DefaultResolution" "" "1200dpi" + + // Custom page sizes from 1x4in to Legal + HWMargins 18 36 18 9 + VariablePaperSize Yes + MinSize 1in 4in + MaxSize 8.5in 14in + Attribute "FoomaticRIPOptionSetting" "PageSize=Custom" " -dDEVICEWIDTHPOINTS=0 -dD&& +EVICEHEIGHTPOINTS=0" + + Attribute "FoomaticIDs" "" "HP-DeskJet_5550 hpijs" + Attribute "FoomaticRIPCommandLine" "" "gs -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPA&& +USE -sDEVICE=ijs -sIjsServer=hpijs%A%B%C -dIjsUseOutputFD%Z -sOutputFi&& +le=- -" + Attribute "FoomaticRIPOption" "Model" "enum CmdLine A 100" + Attribute "FoomaticRIPOptionSetting" "Model=HP-DeskJet_5550" " -sDeviceManufacture&& +r="HEWLETT-PACKARD" -sDeviceModel="deskjet 5550"" + Attribute "FoomaticRIPOption" "PrintoutMode" "enum Composite B" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Draft" "Quality=300FastDraftCol&& +orCMYK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Draft.Gray" "Quality=300FastDra&& +ftGrayscaleK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Normal" "Quality=300ColorCMYK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Normal.Gray" "Quality=300Graysc&& +aleK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=High" "Quality=600ColorCMYK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=High.Gray" "Quality=600Grayscal&& +eK" + Attribute "FoomaticRIPOptionSetting" "PrintoutMode=Photo" "Quality=1200PhotoCMYKFu&& +llBleed" + Attribute "FoomaticRIPOption" "InputSlot" "enum CmdLine C" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Default" ",PS:MediaPosition=7" + Attribute "FoomaticRIPOptionSetting" "InputSlot=PhotoTray" ",PS:MediaPosition=6" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Upper" ",PS:MediaPosition=1" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Lower" ",PS:MediaPosition=4" + Attribute "FoomaticRIPOptionSetting" "InputSlot=CDDVDTray" ",PS:MediaPosition=14" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Envelope" ",PS:MediaPosition=3" + Attribute "FoomaticRIPOptionSetting" "InputSlot=LargeCapacity" ",PS:MediaPosition=&& +5" + Attribute "FoomaticRIPOptionSetting" "InputSlot=Manual" ",PS:MediaPosition=2" + Attribute "FoomaticRIPOptionSetting" "InputSlot=MPTray" ",PS:MediaPosition=8" + Attribute "FoomaticRIPOption" "PageSize" "enum CmdLine A" + Attribute "FoomaticRIPOptionSetting" "PageSize=Letter" " -dDEVICEWIDTHPOINTS=612 -&& +dDEVICEHEIGHTPOINTS=792" + Attribute "FoomaticRIPOptionSetting" "PageSize=A4" " -dDEVICEWIDTHPOINTS=595 -dDEV&& +ICEHEIGHTPOINTS=842" + Attribute "FoomaticRIPOptionSetting" "PageSize=Photo" " -dDEVICEWIDTHPOINTS=288 -d&& +DEVICEHEIGHTPOINTS=432" + Attribute "FoomaticRIPOptionSetting" "PageSize=Photo5x7" " -dDEVICEWIDTHPOINTS=360&& + -dDEVICEHEIGHTPOINTS=504" + Attribute "FoomaticRIPOptionSetting" "PageSize=PhotoTearOff" " -dDEVICEWIDTHPOINTS&& +=288 -dDEVICEHEIGHTPOINTS=432" + Attribute "FoomaticRIPOptionSetting" "PageSize=3x5" " -dDEVICEWIDTHPOINTS=216 -dDE&& +VICEHEIGHTPOINTS=360" + Attribute "FoomaticRIPOptionSetting" "PageSize=5x8" " -dDEVICEWIDTHPOINTS=360 -dDE&& +VICEHEIGHTPOINTS=576" + Attribute "FoomaticRIPOptionSetting" "PageSize=A5" " -dDEVICEWIDTHPOINTS=420 -dDEV&& +ICEHEIGHTPOINTS=595" + Attribute "FoomaticRIPOptionSetting" "PageSize=A6" " -dDEVICEWIDTHPOINTS=297 -dDEV&& +ICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=A6TearOff" " -dDEVICEWIDTHPOINTS=29&& +7 -dDEVICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=B5JIS" " -dDEVICEWIDTHPOINTS=516 -d&& +DEVICEHEIGHTPOINTS=729" + Attribute "FoomaticRIPOptionSetting" "PageSize=CDDVD80" " -dDEVICEWIDTHPOINTS=237 && +-dDEVICEHEIGHTPOINTS=237" + Attribute "FoomaticRIPOptionSetting" "PageSize=CDDVD120" " -dDEVICEWIDTHPOINTS=360&& + -dDEVICEHEIGHTPOINTS=360" + Attribute "FoomaticRIPOptionSetting" "PageSize=Env10" " -dDEVICEWIDTHPOINTS=297 -d&& +DEVICEHEIGHTPOINTS=684" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvC5" " -dDEVICEWIDTHPOINTS=459 -d&& +DEVICEHEIGHTPOINTS=649" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvC6" " -dDEVICEWIDTHPOINTS=323 -d&& +DEVICEHEIGHTPOINTS=459" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvDL" " -dDEVICEWIDTHPOINTS=312 -d&& +DEVICEHEIGHTPOINTS=624" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvISOB5" " -dDEVICEWIDTHPOINTS=499&& + -dDEVICEHEIGHTPOINTS=709" + Attribute "FoomaticRIPOptionSetting" "PageSize=EnvMonarch" " -dDEVICEWIDTHPOINTS=2&& +79 -dDEVICEHEIGHTPOINTS=540" + Attribute "FoomaticRIPOptionSetting" "PageSize=Executive" " -dDEVICEWIDTHPOINTS=52&& +2 -dDEVICEHEIGHTPOINTS=756" + Attribute "FoomaticRIPOptionSetting" "PageSize=FLSA" " -dDEVICEWIDTHPOINTS=612 -dD&& +EVICEHEIGHTPOINTS=936" + Attribute "FoomaticRIPOptionSetting" "PageSize=Hagaki" " -dDEVICEWIDTHPOINTS=283 -&& +dDEVICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=Legal" " -dDEVICEWIDTHPOINTS=612 -d&& +DEVICEHEIGHTPOINTS=1008" + Attribute "FoomaticRIPOptionSetting" "PageSize=Oufuku" " -dDEVICEWIDTHPOINTS=567 -&& +dDEVICEHEIGHTPOINTS=420" + Attribute "FoomaticRIPOptionSetting" "PageSize=w558h774" " -dDEVICEWIDTHPOINTS=558&& + -dDEVICEHEIGHTPOINTS=774" + Attribute "FoomaticRIPOptionSetting" "PageSize=w612h935" " -dDEVICEWIDTHPOINTS=612&& + -dDEVICEHEIGHTPOINTS=935" + Attribute "FoomaticRIPOption" "Duplex" "enum CmdLine A" + Attribute "FoomaticRIPOptionSetting" "Duplex=DuplexNoTumble" " -dDuplex=true -dTum&& +ble=false" + Attribute "FoomaticRIPOptionSetting" "Duplex=DuplexTumble" " -dDuplex=true -dTumbl&& +e=true" + Attribute "FoomaticRIPOptionSetting" "Duplex=None" " -dDuplex=false" + Attribute "FoomaticRIPOption" "DryTime" "enum CmdLine B" + Attribute "FoomaticRIPOptionSetting" "DryTime=Zero" "" + Attribute "FoomaticRIPOptionSetting" "DryTime=Five" ",DryTime=5" + Attribute "FoomaticRIPOptionSetting" "DryTime=Ten" ",DryTime=10" + Attribute "FoomaticRIPOptionSetting" "DryTime=Fifteen" ",DryTime=15" + Attribute "FoomaticRIPOptionSetting" "DryTime=Twenty" ",DryTime=20" + Attribute "FoomaticRIPOptionSetting" "DryTime=TwentyFive" ",DryTime=25" + Attribute "FoomaticRIPOptionSetting" "DryTime=Thirty" ",DryTime=30" + Attribute "FoomaticRIPOption" "Quality" "enum CmdLine B" + Attribute "FoomaticRIPOptionSetting" "Quality=300ColorCMYK" " -r300 -sIjsParams=Qu&& +ality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quality:PenSet&& +=2" + Attribute "FoomaticRIPOptionSetting" "Quality=300ColorCMYKFullBleed" " -r300 -sIjs&& +Params=Quality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quali&& +ty:PenSet=2,Quality:FullBleed=1" + Attribute "FoomaticRIPOptionSetting" "Quality=300DraftColorCMYK" " -r300 -sIjsPara&& +ms=Quality:Quality=1,Quality:ColorMode=2,Quality:MediaType=0,Quality:P&& +enSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=300DraftGrayscaleK" " -r300 -sIjs&& +Params=Quality:Quality=1,Quality:ColorMode=0,Quality:MediaType=0,Quali&& +ty:PenSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=300FastDraftColorCMYK" " -r300 -sIjs&& +Params=Quality:Quality=4,Quality:ColorMode=2,Quality:MediaType=0,Quali&& +ty:PenSet=2,Quality:SpeedMech=1" + Attribute "FoomaticRIPOptionSetting" "Quality=300FastDraftGrayscaleK" " -r300 -&& +sIjsParams=Quality:Quality=4,Quality:ColorMode=0,Quality:MediaType=0,Q&& +uality:PenSet=2,Quality:SpeedMech=1" + Attribute "FoomaticRIPOptionSetting" "Quality=300GrayscaleK" " -r300 -sIjsParam&& +s=Quality:Quality=0,Quality:ColorMode=0,Quality:MediaType=0,Quality:Pe&& +nSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=600ColorCMYK" " -r600 -sIjsParams=Qu&& +ality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quality:PenSet&& +=2" + Attribute "FoomaticRIPOptionSetting" "Quality=600ColorCMYKFullBleed" " -r600 -sIjs&& +Params=Quality:Quality=0,Quality:ColorMode=2,Quality:MediaType=0,Quali&& +ty:PenSet=2,Quality:FullBleed=1" + Attribute "FoomaticRIPOptionSetting" "Quality=600GrayscaleK" " -r600 -sIjsParam&& +s=Quality:Quality=0,Quality:ColorMode=0,Quality:MediaType=0,Quality:Pe&& +nSet=2" + Attribute "FoomaticRIPOptionSetting" "Quality=1200PhotoCMYK" " -r1200 -sIjsParams=&& +Quality:Quality=3,Quality:ColorMode=2,Quality:MediaType=2,Quality:PenS&& +et=2" + Attribute "FoomaticRIPOptionSetting" "Quality=1200PhotoCMYKFullBleed" " -r1200 -sI&& +jsParams=Quality:Quality=3,Quality:ColorMode=2,Quality:MediaType=2,Qua&& +lity:PenSet=2,Quality:FullBleed=1" + Group "General/General" + Option "PrintoutMode/Printout Mode" PickOne AnySetup 10.0 + Choice "Draft/Draft (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Draft" + Choice "Draft.Gray/Draft Grayscale (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Draft.Gray" + *Choice "Normal/Normal (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Normal" + Choice "Normal.Gray/Normal Grayscale (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=Normal.Gray" + Choice "High/High Quality (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=High" + Choice "High.Gray/High Quality Grayscale (auto-detect paper type)" "%% FoomaticRIPOptionSetting: PrintoutMode=High.Gray" + Choice "Photo/Photo (on photo paper)" "%% FoomaticRIPOptionSetting: PrintoutMode=Photo" + Option "InputSlot/Media Source" PickOne AnySetup 100.0 + *Choice "Default/Printer default" "%% FoomaticRIPOptionSetting: InputSlot=Default" + Choice "PhotoTray/Photo Tray" "%% FoomaticRIPOptionSetting: InputSlot=PhotoTray" + Choice "Upper/Upper Tray" "%% FoomaticRIPOptionSetting: InputSlot=Upper" + Choice "Lower/Lower Tray" "%% FoomaticRIPOptionSetting: InputSlot=Lower" + Choice "CDDVDTray/CD or DVD Tray" "%% FoomaticRIPOptionSetting: InputSlot=CDDVDTray" + Choice "Envelope/Envelope Feeder" "%% FoomaticRIPOptionSetting: InputSlot=Envelope" + Choice "LargeCapacity/Large Capacity Tray" "%% FoomaticRIPOptionSetting: InputSlot=LargeCapacity" + Choice "Manual/Manual Feeder" "%% FoomaticRIPOptionSetting: InputSlot=Manual" + Choice "MPTray/Multi Purpose Tray" "%% FoomaticRIPOptionSetting: InputSlot=MPTray" + Option "Duplex/Double-Sided Printing" PickOne AnySetup 120.0 + Choice "DuplexNoTumble/Long Edge (Standard)" "%% FoomaticRIPOptionSetting: Duplex=DuplexNoTumble" + Choice "DuplexTumble/Short Edge (Flip)" "%% FoomaticRIPOptionSetting: Duplex=DuplexTumble" + *Choice "None/Off" "%% FoomaticRIPOptionSetting: Duplex=None" + Option "DryTime/Additional Dry Time" PickOne AnySetup 120.0 + *Choice "Zero/Printer Default" "%% FoomaticRIPOptionSetting: DryTime=Zero" + Choice "Five/5 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Five" + Choice "Ten/10 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Ten" + Choice "Fifteen/15 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Fifteen" + Choice "Twenty/20 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Twenty" + Choice "TwentyFive/25 Seconds" "%% FoomaticRIPOptionSetting: DryTime=TwentyFive" + Choice "Thirty/30 Seconds" "%% FoomaticRIPOptionSetting: DryTime=Thirty" + Group "PrintoutMode/Printout Mode" + Option "Quality/Resolution, Quality, Ink Type, Media Type" PickOne AnySetup 100.0 + *Choice "FromPrintoutMode/Controlled by 'Printout Mode'" "%% FoomaticRIPOptionSetting: Quality=@PrintoutMode" + Choice "300ColorCMYK/300 dpi, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300ColorCMYK" + Choice "300ColorCMYKFullBleed/300 dpi, Color, Full Bleed, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300ColorCMYKFullBleed" + Choice "300DraftColorCMYK/300 dpi, Draft, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300DraftColorCMYK" + Choice "300DraftGrayscaleK/300 dpi, Draft, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=300DraftGrayscaleK" + Choice "300FastDraftColorCMYK/300 dpi, FastDraft, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=300FastDraftColorCMYK" + Choice "300FastDraftGrayscaleK/300 dpi, FastDraft, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=300FastDraftGrayscaleK" + Choice "300GrayscaleK/300 dpi, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=300GrayscaleK" + Choice "600ColorCMYK/600 dpi, Color, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=600ColorCMYK" + Choice "600ColorCMYKFullBleed/600 dpi, Color, Full Bleed, Black + Color Cartr." "%% FoomaticRIPOptionSetting: Quality=600ColorCMYKFullBleed" + Choice "600GrayscaleK/600 dpi, Grayscale, Black Cartr." "%% FoomaticRIPOptionSetting: Quality=600GrayscaleK" + Choice "1200PhotoCMYK/1200 dpi, Photo, Black + Color Cartr., Photo Paper" "%% FoomaticRIPOptionSetting: Quality=1200PhotoCMYK" + Choice "1200PhotoCMYKFullBleed/1200 dpi, Photo, Full Bleed, Black + Color Cartr., Photo Paper" "%% FoomaticRIPOptionSetting: Quality=1200PhotoCMYKFullBleed" + *CustomMedia "Letter/Letter" 612.00 792.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=Letter" "%% FoomaticRIPOptionSetting: PageSize=Letter" + CustomMedia "A4/A4" 595.00 842.00 9.72 36.00 9.72 9.00 "%% FoomaticRIPOptionSetting: PageSize=A4" "%% FoomaticRIPOptionSetting: PageSize=A4" + CustomMedia "Photo/Photo or 4x6 inch index card" 288.00 432.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Photo" "%% FoomaticRIPOptionSetting: PageSize=Photo" + CustomMedia "Photo5x7/Photo or 5x7 inch index card" 360.00 504.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Photo5x7" "%% FoomaticRIPOptionSetting: PageSize=Photo5x7" + CustomMedia "PhotoTearOff/Photo with tear-off tab" 288.00 432.00 0.00 0.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=PhotoTearOff" "%% FoomaticRIPOptionSetting: PageSize=PhotoTearOff" + CustomMedia "3x5/3x5 inch index card" 216.00 360.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=3x5" "%% FoomaticRIPOptionSetting: PageSize=3x5" + CustomMedia "5x8/5x8 inch index card" 360.00 576.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=5x8" "%% FoomaticRIPOptionSetting: PageSize=5x8" + CustomMedia "A5/A5" 420.00 595.00 9.00 36.00 9.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=A5" "%% FoomaticRIPOptionSetting: PageSize=A5" + CustomMedia "A6/A6" 297.00 420.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=A6" "%% FoomaticRIPOptionSetting: PageSize=A6" + CustomMedia "A6TearOff/A6 with tear-off tab" 297.00 420.00 0.00 0.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=A6TearOff" "%% FoomaticRIPOptionSetting: PageSize=A6TearOff" + CustomMedia "B5JIS/B5 (JIS)" 516.00 729.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=B5JIS" "%% FoomaticRIPOptionSetting: PageSize=B5JIS" + CustomMedia "CDDVD80/CD or DVD 80 mm" 237.00 237.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=CDDVD80" "%% FoomaticRIPOptionSetting: PageSize=CDDVD80" + CustomMedia "CDDVD120/CD or DVD 120 mm" 360.00 360.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=CDDVD120" "%% FoomaticRIPOptionSetting: PageSize=CDDVD120" + CustomMedia "Env10/Envelope #10" 297.00 684.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Env10" "%% FoomaticRIPOptionSetting: PageSize=Env10" + CustomMedia "EnvC5/Envelope C5" 459.00 649.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=EnvC5" "%% FoomaticRIPOptionSetting: PageSize=EnvC5" + CustomMedia "EnvC6/Envelope C6" 323.00 459.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=EnvC6" "%% FoomaticRIPOptionSetting: PageSize=EnvC6" + CustomMedia "EnvDL/Envelope DL" 312.00 624.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=EnvDL" "%% FoomaticRIPOptionSetting: PageSize=EnvDL" + CustomMedia "EnvISOB5/Envelope B5" 499.00 709.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=EnvISOB5" "%% FoomaticRIPOptionSetting: PageSize=EnvISOB5" + CustomMedia "EnvMonarch/Envelope Monarch" 279.00 540.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=EnvMonarch" "%% FoomaticRIPOptionSetting: PageSize=EnvMonarch" + CustomMedia "Executive/Executive" 522.00 756.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=Executive" "%% FoomaticRIPOptionSetting: PageSize=Executive" + CustomMedia "FLSA/American Foolscap" 612.00 936.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=FLSA" "%% FoomaticRIPOptionSetting: PageSize=FLSA" + CustomMedia "Hagaki/Hagaki" 283.00 420.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Hagaki" "%% FoomaticRIPOptionSetting: PageSize=Hagaki" + CustomMedia "Legal/Legal" 612.00 1008.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=Legal" "%% FoomaticRIPOptionSetting: PageSize=Legal" + CustomMedia "Oufuku/Oufuku-Hagaki" 567.00 420.00 0.00 36.00 0.00 0.00 "%% FoomaticRIPOptionSetting: PageSize=Oufuku" "%% FoomaticRIPOptionSetting: PageSize=Oufuku" + CustomMedia "w558h774/16K" 558.00 774.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=w558h774" "%% FoomaticRIPOptionSetting: PageSize=w558h774" + CustomMedia "w612h935/Executive (JIS)" 612.00 935.00 18.00 36.00 18.00 9.00 "%% FoomaticRIPOptionSetting: PageSize=w612h935" "%% FoomaticRIPOptionSetting: PageSize=w612h935" + // <%Saipan:Normal%> + // <%Saipan:AutoDuplex%> +} // end Saipan + ////////// Python11 { Attribute "DefaultResolution" "" "1200dpi" @@ -9119,5 +9342,7 @@ lity:PenSet=2,Quality:FullBleed=1" } // End Pyramid + + } // end Manufacturer "HP" diff --git a/prnt/hpcups/HPCupsFilter.cpp b/prnt/hpcups/HPCupsFilter.cpp index 514e285d9..00e4bb46f 100644 --- a/prnt/hpcups/HPCupsFilter.cpp +++ b/prnt/hpcups/HPCupsFilter.cpp @@ -735,7 +735,7 @@ static BYTE pixel_value[8] = { int k = 0;
BYTE *pIn = m_pPrinterBuffer;
BYTE kVal = 0;
- BYTE b;
+ BYTE white=0;
BYTE *rgb = rgbRaster;
BYTE *black = kRaster;
memset (kRaster, 0, cups_header->cupsWidth);
@@ -745,34 +745,34 @@ static BYTE pixel_value[8] = { rgb[0] = *pIn++;
rgb[1] = *pIn++;
rgb[2] = *pIn++;
- b = *pIn++;
+ white = *pIn++;
- if (b != 0 && b != 0xFF) {
-
-#ifdef __linux
- // rgb[0] -= (255 - b);
- // rgb[1] -= (255 - b);
- // rgb[2] -= (255 - b);
+ if(white == 0)
+ {
+ //If W component is 0 (means black is 1) then no need of having RGB for that pixel.
+ //ghostscript >= 8.71 sends both W and RGB for black pixel(i.e RGBW=(0,0,0,0)).
+ kVal |= pixel_value[k];
+ rgb[0] = 0xFF;
+ rgb[1] = 0xFF;
+ rgb[2] = 0xFF;
+ }
+ else if(white == 0xFF)
+ {
+ kVal |= 0;
+ }
+ else
+ {
int cr,cg,cb;
- cr = rgb[0] - (int)(255 - b);
+ cr = rgb[0] - (int)(255 - white);
rgb[0] = cr >= 0 ? cr : 0;
- cg = rgb[1] - (int)(255 - b);
+ cg = rgb[1] - (int)(255 - white);
rgb[1] = cg >= 0 ? cg : 0;
- cb = rgb[2] - (int)(255 - b);
- rgb[2] = cb >= 0 ? cb : 0;
-#else // This alternate path is for Mac....
-
- rgb[0] &= b;
- rgb[1] &= b;
- rgb[2] &= b;
-#endif
+ cb = rgb[2] - (int)(255 - white);
+ rgb[2] = cb >= 0 ? cb : 0;
}
- else
- kVal |= (b == 0) ? pixel_value[k] : 0;
- // else if (rgb[0] == rgb[1] && rgb[1] ==rgb[2])
- // kVal |= (rgb[0] == 0) ? pixel_value[k] : 0;
+
rgb += 3;
if (k == 7) {
*black++ = kVal;
diff --git a/prnt/ps/hp-business_inkjet_2250-ps.ppd.gz b/prnt/ps/hp-business_inkjet_2250-ps.ppd.gz Binary files differindex 9123c5fc5..443b1d730 100644 --- a/prnt/ps/hp-business_inkjet_2250-ps.ppd.gz +++ b/prnt/ps/hp-business_inkjet_2250-ps.ppd.gz diff --git a/prnt/ps/hp-business_inkjet_2280-ps.ppd.gz b/prnt/ps/hp-business_inkjet_2280-ps.ppd.gz Binary files differindex 3389f9f9e..6788c2552 100644 --- a/prnt/ps/hp-business_inkjet_2280-ps.ppd.gz +++ b/prnt/ps/hp-business_inkjet_2280-ps.ppd.gz diff --git a/prnt/ps/hp-business_inkjet_2300-ps.ppd.gz b/prnt/ps/hp-business_inkjet_2300-ps.ppd.gz Binary files differindex 2a1b173b7..bfbf14405 100644 --- a/prnt/ps/hp-business_inkjet_2300-ps.ppd.gz +++ b/prnt/ps/hp-business_inkjet_2300-ps.ppd.gz diff --git a/prnt/ps/hp-business_inkjet_2600-ps.ppd.gz b/prnt/ps/hp-business_inkjet_2600-ps.ppd.gz Binary files differindex 684b9b96a..8cc91b8b4 100644 --- a/prnt/ps/hp-business_inkjet_2600-ps.ppd.gz +++ b/prnt/ps/hp-business_inkjet_2600-ps.ppd.gz diff --git a/prnt/ps/hp-business_inkjet_2800-ps.ppd.gz b/prnt/ps/hp-business_inkjet_2800-ps.ppd.gz Binary files differindex 02deb5b4a..b0388aa2a 100644 --- a/prnt/ps/hp-business_inkjet_2800-ps.ppd.gz +++ b/prnt/ps/hp-business_inkjet_2800-ps.ppd.gz diff --git a/prnt/ps/hp-business_inkjet_3000-ps.ppd.gz b/prnt/ps/hp-business_inkjet_3000-ps.ppd.gz Binary files differindex 16bfd3456..18b41b54b 100644 --- a/prnt/ps/hp-business_inkjet_3000-ps.ppd.gz +++ b/prnt/ps/hp-business_inkjet_3000-ps.ppd.gz diff --git a/prnt/ps/hp-cm8050_mfp_with_edgeline-ps.ppd.gz b/prnt/ps/hp-cm8050_mfp_with_edgeline-ps.ppd.gz Binary files differindex 0e3913c04..8fc660055 100644 --- a/prnt/ps/hp-cm8050_mfp_with_edgeline-ps.ppd.gz +++ b/prnt/ps/hp-cm8050_mfp_with_edgeline-ps.ppd.gz diff --git a/prnt/ps/hp-cm8060_mfp_with_edgeline-ps.ppd.gz b/prnt/ps/hp-cm8060_mfp_with_edgeline-ps.ppd.gz Binary files differindex 70d8a60d2..101bf9d7d 100644 --- a/prnt/ps/hp-cm8060_mfp_with_edgeline-ps.ppd.gz +++ b/prnt/ps/hp-cm8060_mfp_with_edgeline-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet-ps.ppd.gz b/prnt/ps/hp-color_laserjet-ps.ppd.gz Binary files differindex ba3a661f5..647e39a8e 100644 --- a/prnt/ps/hp-color_laserjet-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2500-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2500-ps.ppd.gz Binary files differindex 6569d10c2..3e09f548a 100644 --- a/prnt/ps/hp-color_laserjet_2500-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2500-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2500_series-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2500_series-ps.ppd.gz Binary files differindex bacb496e9..834957cbe 100644 --- a/prnt/ps/hp-color_laserjet_2500_series-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2500_series-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2550_series-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2550_series-ps.ppd.gz Binary files differindex 9381c96d7..417ca580d 100644 --- a/prnt/ps/hp-color_laserjet_2550_series-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2550_series-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2605-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2605-ps.ppd.gz Binary files differindex ee6964170..45b7fea16 100644 --- a/prnt/ps/hp-color_laserjet_2605-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2605-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2605dn-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2605dn-ps.ppd.gz Binary files differindex d1aaa7900..84ef5973a 100644 --- a/prnt/ps/hp-color_laserjet_2605dn-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2605dn-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2605dtn-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2605dtn-ps.ppd.gz Binary files differindex 08198b68c..8a51464ad 100644 --- a/prnt/ps/hp-color_laserjet_2605dtn-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2605dtn-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2700-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2700-ps.ppd.gz Binary files differindex 577a182d9..0de4d9270 100644 --- a/prnt/ps/hp-color_laserjet_2700-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2700-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2700n-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2700n-ps.ppd.gz Binary files differindex b58799166..b4b04a8c3 100644 --- a/prnt/ps/hp-color_laserjet_2700n-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2700n-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2800-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2800-ps.ppd.gz Binary files differindex a73c9ddc3..27b8055e0 100644 --- a/prnt/ps/hp-color_laserjet_2800-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2800-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2820-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2820-ps.ppd.gz Binary files differindex b6ae6b4a4..974b3ae88 100644 --- a/prnt/ps/hp-color_laserjet_2820-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2820-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2830-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2830-ps.ppd.gz Binary files differindex 8c7c2abf3..ba6e482fb 100644 --- a/prnt/ps/hp-color_laserjet_2830-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2830-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_2840-ps.ppd.gz b/prnt/ps/hp-color_laserjet_2840-ps.ppd.gz Binary files differindex 3e5f17cc6..9036b5743 100644 --- a/prnt/ps/hp-color_laserjet_2840-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_2840-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_3000-ps.ppd.gz b/prnt/ps/hp-color_laserjet_3000-ps.ppd.gz Binary files differindex a80e4b1b1..ff4791d9d 100644 --- a/prnt/ps/hp-color_laserjet_3000-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_3000-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_3700-ps.ppd.gz b/prnt/ps/hp-color_laserjet_3700-ps.ppd.gz Binary files differindex 6d8fb3464..313c99ce1 100644 --- a/prnt/ps/hp-color_laserjet_3700-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_3700-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_3700n-ps.ppd.gz b/prnt/ps/hp-color_laserjet_3700n-ps.ppd.gz Binary files differindex e53f28935..bf939859f 100644 --- a/prnt/ps/hp-color_laserjet_3700n-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_3700n-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_3800-ps.ppd.gz b/prnt/ps/hp-color_laserjet_3800-ps.ppd.gz Binary files differindex 6522ba610..500e927a7 100644 --- a/prnt/ps/hp-color_laserjet_3800-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_3800-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4500-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4500-ps.ppd.gz Binary files differindex b3647c069..95f5bdd68 100644 --- a/prnt/ps/hp-color_laserjet_4500-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4500-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4550-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4550-ps.ppd.gz Binary files differindex 794bca628..12498e11e 100644 --- a/prnt/ps/hp-color_laserjet_4550-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4550-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4600-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4600-ps.ppd.gz Binary files differindex 56a377473..4b845cbab 100644 --- a/prnt/ps/hp-color_laserjet_4600-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4600-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4600_series-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4600_series-ps.ppd.gz Binary files differindex 870e59999..e4597c08d 100644 --- a/prnt/ps/hp-color_laserjet_4600_series-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4600_series-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4610-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4610-ps.ppd.gz Binary files differindex c895359ef..6c0d97775 100644 --- a/prnt/ps/hp-color_laserjet_4610-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4610-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4650-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4650-ps.ppd.gz Binary files differindex 8a979439b..e668d23ed 100644 --- a/prnt/ps/hp-color_laserjet_4650-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4650-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4700-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4700-ps.ppd.gz Binary files differindex 46d0a9e09..a890d5fba 100644 --- a/prnt/ps/hp-color_laserjet_4700-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4700-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_4730mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_4730mfp-ps.ppd.gz Binary files differindex 15d677413..93a2132f2 100644 --- a/prnt/ps/hp-color_laserjet_4730mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_4730mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_5500-ps.ppd.gz b/prnt/ps/hp-color_laserjet_5500-ps.ppd.gz Binary files differindex 916f52f1e..b1b557c71 100644 --- a/prnt/ps/hp-color_laserjet_5500-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_5500-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_5550-ps.ppd.gz b/prnt/ps/hp-color_laserjet_5550-ps.ppd.gz Binary files differindex 648f7bb48..56f097dba 100644 --- a/prnt/ps/hp-color_laserjet_5550-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_5550-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_5m-ps.ppd.gz b/prnt/ps/hp-color_laserjet_5m-ps.ppd.gz Binary files differindex ccfbc66fd..f98ba4968 100644 --- a/prnt/ps/hp-color_laserjet_5m-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_5m-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_8500-ps.ppd.gz b/prnt/ps/hp-color_laserjet_8500-ps.ppd.gz Binary files differindex 47e860375..8096478a7 100644 --- a/prnt/ps/hp-color_laserjet_8500-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_8500-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_8550-ps.ppd.gz b/prnt/ps/hp-color_laserjet_8550-ps.ppd.gz Binary files differindex 437f5e2ee..9cbe01777 100644 --- a/prnt/ps/hp-color_laserjet_8550-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_8550-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_9500-ps.ppd.gz b/prnt/ps/hp-color_laserjet_9500-ps.ppd.gz Binary files differindex 345baf369..1df24a72a 100644 --- a/prnt/ps/hp-color_laserjet_9500-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_9500-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_9500_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_9500_mfp-ps.ppd.gz Binary files differindex da5e222a8..2c48a8798 100644 --- a/prnt/ps/hp-color_laserjet_9500_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_9500_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm1015-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm1015-ps.ppd.gz Binary files differindex 09b27505d..9cd9018cf 100644 --- a/prnt/ps/hp-color_laserjet_cm1015-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm1015-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm1017-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm1017-ps.ppd.gz Binary files differindex f16fef964..3a7ef72e5 100644 --- a/prnt/ps/hp-color_laserjet_cm1017-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm1017-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm1312_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm1312_mfp-ps.ppd.gz Binary files differindex 44e821f41..2f2bf8d0f 100644 --- a/prnt/ps/hp-color_laserjet_cm1312_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm1312_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm1312nfi_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm1312nfi_mfp-ps.ppd.gz Binary files differindex 4372245de..3de31b116 100644 --- a/prnt/ps/hp-color_laserjet_cm1312nfi_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm1312nfi_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm2320_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm2320_mfp-ps.ppd.gz Binary files differindex 194064161..599bbf9b3 100644 --- a/prnt/ps/hp-color_laserjet_cm2320_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm2320_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm2320fxi_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm2320fxi_mfp-ps.ppd.gz Binary files differindex 2be27e121..7f80d232d 100644 --- a/prnt/ps/hp-color_laserjet_cm2320fxi_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm2320fxi_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm2320n_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm2320n_mfp-ps.ppd.gz Binary files differindex d4619f926..5fc1d2b89 100644 --- a/prnt/ps/hp-color_laserjet_cm2320n_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm2320n_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm2320nf_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm2320nf_mfp-ps.ppd.gz Binary files differindex f0c67afd3..9934cfde3 100644 --- a/prnt/ps/hp-color_laserjet_cm2320nf_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm2320nf_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm3530_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm3530_mfp-ps.ppd.gz Binary files differindex f8793be36..4cf8c991c 100644 --- a/prnt/ps/hp-color_laserjet_cm3530_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm3530_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm4540_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm4540_mfp-ps.ppd.gz Binary files differindex ce2dd034c..6a21e28a0 100644 --- a/prnt/ps/hp-color_laserjet_cm4540_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm4540_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm4730_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm4730_mfp-ps.ppd.gz Binary files differindex 8e6583c67..b865bbae4 100644 --- a/prnt/ps/hp-color_laserjet_cm4730_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm4730_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm6030_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm6030_mfp-ps.ppd.gz Binary files differindex 38caacef8..22a47bd4b 100644 --- a/prnt/ps/hp-color_laserjet_cm6030_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm6030_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm6040_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm6040_mfp-ps.ppd.gz Binary files differindex 19f988f31..12ac2bf7f 100644 --- a/prnt/ps/hp-color_laserjet_cm6040_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm6040_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cm6049_mfp-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cm6049_mfp-ps.ppd.gz Binary files differindex 3f864856c..7794d3ad6 100644 --- a/prnt/ps/hp-color_laserjet_cm6049_mfp-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cm6049_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp1514n-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp1514n-ps.ppd.gz Binary files differindex 7a27c1529..058db7c7b 100644 --- a/prnt/ps/hp-color_laserjet_cp1514n-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp1514n-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp1515n-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp1515n-ps.ppd.gz Binary files differindex 546d49e86..b4e389b77 100644 --- a/prnt/ps/hp-color_laserjet_cp1515n-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp1515n-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp1518ni-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp1518ni-ps.ppd.gz Binary files differindex 2d163438c..22812a2a8 100644 --- a/prnt/ps/hp-color_laserjet_cp1518ni-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp1518ni-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp2025-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp2025-ps.ppd.gz Binary files differindex 021bc52dc..5db324be7 100644 --- a/prnt/ps/hp-color_laserjet_cp2025-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp2025-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp2025dn-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp2025dn-ps.ppd.gz Binary files differindex 9ca935628..9d8326d26 100644 --- a/prnt/ps/hp-color_laserjet_cp2025dn-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp2025dn-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp2025n-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp2025n-ps.ppd.gz Binary files differindex 1b257610e..6e092094b 100644 --- a/prnt/ps/hp-color_laserjet_cp2025n-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp2025n-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp2025x-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp2025x-ps.ppd.gz Binary files differindex 48e482a6a..330bd5de0 100644 --- a/prnt/ps/hp-color_laserjet_cp2025x-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp2025x-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp3505-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp3505-ps.ppd.gz Binary files differindex a383a6a60..52b3d63af 100644 --- a/prnt/ps/hp-color_laserjet_cp3505-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp3505-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp3525-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp3525-ps.ppd.gz Binary files differindex b52ec49fa..5f21ada06 100644 --- a/prnt/ps/hp-color_laserjet_cp3525-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp3525-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp4005-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp4005-ps.ppd.gz Binary files differindex a2e0dc705..1b2090765 100644 --- a/prnt/ps/hp-color_laserjet_cp4005-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp4005-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp4020_series-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp4020_series-ps.ppd.gz Binary files differindex defb2b7a0..e52350d55 100644 --- a/prnt/ps/hp-color_laserjet_cp4020_series-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp4020_series-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp4520_series-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp4520_series-ps.ppd.gz Binary files differindex 825191b09..9563d5643 100644 --- a/prnt/ps/hp-color_laserjet_cp4520_series-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp4520_series-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp5225-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp5225-ps.ppd.gz Binary files differindex c5b71a797..acc69e464 100644 --- a/prnt/ps/hp-color_laserjet_cp5225-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp5225-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp5225dn-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp5225dn-ps.ppd.gz Binary files differindex e229f3e0b..6f550bc4c 100644 --- a/prnt/ps/hp-color_laserjet_cp5225dn-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp5225dn-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp5225n-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp5225n-ps.ppd.gz Binary files differindex 16b4d30bc..3f00e7d19 100644 --- a/prnt/ps/hp-color_laserjet_cp5225n-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp5225n-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp5520_series-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp5520_series-ps.ppd.gz Binary files differindex 66a449506..23b5e7b93 100644 --- a/prnt/ps/hp-color_laserjet_cp5520_series-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp5520_series-ps.ppd.gz diff --git a/prnt/ps/hp-color_laserjet_cp6015-ps.ppd.gz b/prnt/ps/hp-color_laserjet_cp6015-ps.ppd.gz Binary files differindex e33fe92e6..a8631479d 100644 --- a/prnt/ps/hp-color_laserjet_cp6015-ps.ppd.gz +++ b/prnt/ps/hp-color_laserjet_cp6015-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_4000ps.ppd.gz b/prnt/ps/hp-designjet_4000ps.ppd.gz Binary files differindex ffbc47ab8..68060ba1f 100644 --- a/prnt/ps/hp-designjet_4000ps.ppd.gz +++ b/prnt/ps/hp-designjet_4000ps.ppd.gz diff --git a/prnt/ps/hp-designjet_4020ps-ps.ppd.gz b/prnt/ps/hp-designjet_4020ps-ps.ppd.gz Binary files differindex 256db3dd6..468fdeaa6 100644 --- a/prnt/ps/hp-designjet_4020ps-ps.ppd.gz +++ b/prnt/ps/hp-designjet_4020ps-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_4500mfp.ppd.gz b/prnt/ps/hp-designjet_4500mfp.ppd.gz Binary files differindex 7aaade66b..861ca78b7 100644 --- a/prnt/ps/hp-designjet_4500mfp.ppd.gz +++ b/prnt/ps/hp-designjet_4500mfp.ppd.gz diff --git a/prnt/ps/hp-designjet_4500ps.ppd.gz b/prnt/ps/hp-designjet_4500ps.ppd.gz Binary files differindex 20e398cd9..988a2b9da 100644 --- a/prnt/ps/hp-designjet_4500ps.ppd.gz +++ b/prnt/ps/hp-designjet_4500ps.ppd.gz diff --git a/prnt/ps/hp-designjet_4520mfp-ps.ppd.gz b/prnt/ps/hp-designjet_4520mfp-ps.ppd.gz Binary files differindex a5608ca1d..ca2d388cc 100644 --- a/prnt/ps/hp-designjet_4520mfp-ps.ppd.gz +++ b/prnt/ps/hp-designjet_4520mfp-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_4520ps-ps.ppd.gz b/prnt/ps/hp-designjet_4520ps-ps.ppd.gz Binary files differindex d49ebfca0..e5fb1d8a0 100644 --- a/prnt/ps/hp-designjet_4520ps-ps.ppd.gz +++ b/prnt/ps/hp-designjet_4520ps-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t1100ps_24in-ps.ppd.gz b/prnt/ps/hp-designjet_t1100ps_24in-ps.ppd.gz Binary files differindex ebd6c0571..56b7c6c18 100644 --- a/prnt/ps/hp-designjet_t1100ps_24in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t1100ps_24in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t1100ps_44in-ps.ppd.gz b/prnt/ps/hp-designjet_t1100ps_44in-ps.ppd.gz Binary files differindex e4fb88f74..6683ce55a 100644 --- a/prnt/ps/hp-designjet_t1100ps_44in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t1100ps_44in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t1120ps_24in-ps.ppd.gz b/prnt/ps/hp-designjet_t1120ps_24in-ps.ppd.gz Binary files differindex 079357054..d390f0de5 100644 --- a/prnt/ps/hp-designjet_t1120ps_24in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t1120ps_24in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t1120ps_44in-ps.ppd.gz b/prnt/ps/hp-designjet_t1120ps_44in-ps.ppd.gz Binary files differindex 1c8d141cc..001e71694 100644 --- a/prnt/ps/hp-designjet_t1120ps_44in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t1120ps_44in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t1200_postscript-ps.ppd.gz b/prnt/ps/hp-designjet_t1200_postscript-ps.ppd.gz Binary files differindex 5584c20bc..14d54112c 100644 --- a/prnt/ps/hp-designjet_t1200_postscript-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t1200_postscript-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t1300_postscript-ps.ppd.gz b/prnt/ps/hp-designjet_t1300_postscript-ps.ppd.gz Binary files differindex 764ebef4d..a71d1a08c 100644 --- a/prnt/ps/hp-designjet_t1300_postscript-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t1300_postscript-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t2300_postscript-ps.ppd.gz b/prnt/ps/hp-designjet_t2300_postscript-ps.ppd.gz Binary files differindex 182e1ce98..8b7411515 100644 --- a/prnt/ps/hp-designjet_t2300_postscript-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t2300_postscript-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t7100ps-ps.ppd.gz b/prnt/ps/hp-designjet_t7100ps-ps.ppd.gz Binary files differindex af5b0b20e..6cf74b3b1 100644 --- a/prnt/ps/hp-designjet_t7100ps-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t7100ps-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t7100ps_monochrome-ps.ppd.gz b/prnt/ps/hp-designjet_t7100ps_monochrome-ps.ppd.gz Binary files differindex d8806399d..4dddc9b7f 100644 --- a/prnt/ps/hp-designjet_t7100ps_monochrome-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t7100ps_monochrome-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t770_postscript-ps.ppd.gz b/prnt/ps/hp-designjet_t770_postscript-ps.ppd.gz Binary files differindex ef353c05a..c97c71be1 100644 --- a/prnt/ps/hp-designjet_t770_postscript-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t770_postscript-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t770ps_24in-ps.ppd.gz b/prnt/ps/hp-designjet_t770ps_24in-ps.ppd.gz Binary files differindex 370f3d3b5..79fe4f5b3 100644 --- a/prnt/ps/hp-designjet_t770ps_24in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t770ps_24in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t790ps_24in-ps.ppd.gz b/prnt/ps/hp-designjet_t790ps_24in-ps.ppd.gz Binary files differindex 0954a8e36..232894d4f 100644 --- a/prnt/ps/hp-designjet_t790ps_24in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t790ps_24in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_t790ps_44in-ps.ppd.gz b/prnt/ps/hp-designjet_t790ps_44in-ps.ppd.gz Binary files differindex aec47afd7..be0adc883 100644 --- a/prnt/ps/hp-designjet_t790ps_44in-ps.ppd.gz +++ b/prnt/ps/hp-designjet_t790ps_44in-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_z6100ps_42in_photo-ps.ppd.gz b/prnt/ps/hp-designjet_z6100ps_42in_photo-ps.ppd.gz Binary files differindex 3ae2d2acd..526ac4be2 100644 --- a/prnt/ps/hp-designjet_z6100ps_42in_photo-ps.ppd.gz +++ b/prnt/ps/hp-designjet_z6100ps_42in_photo-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_z6100ps_60in_photo-ps.ppd.gz b/prnt/ps/hp-designjet_z6100ps_60in_photo-ps.ppd.gz Binary files differindex 0f6b4c170..91732926a 100644 --- a/prnt/ps/hp-designjet_z6100ps_60in_photo-ps.ppd.gz +++ b/prnt/ps/hp-designjet_z6100ps_60in_photo-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_z6200_42in_photo-ps.ppd.gz b/prnt/ps/hp-designjet_z6200_42in_photo-ps.ppd.gz Binary files differindex 18e20d1b5..f0904b739 100644 --- a/prnt/ps/hp-designjet_z6200_42in_photo-ps.ppd.gz +++ b/prnt/ps/hp-designjet_z6200_42in_photo-ps.ppd.gz diff --git a/prnt/ps/hp-designjet_z6200_60in_photo-ps.ppd.gz b/prnt/ps/hp-designjet_z6200_60in_photo-ps.ppd.gz Binary files differindex 7bfdbb7d8..5fa6fdee9 100644 --- a/prnt/ps/hp-designjet_z6200_60in_photo-ps.ppd.gz +++ b/prnt/ps/hp-designjet_z6200_60in_photo-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_100_color_mfp_m175-ps.ppd.gz b/prnt/ps/hp-laserjet_100_color_mfp_m175-ps.ppd.gz Binary files differindex 71eeaeed7..560634c4e 100644 --- a/prnt/ps/hp-laserjet_100_color_mfp_m175-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_100_color_mfp_m175-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1200-ps.ppd.gz b/prnt/ps/hp-laserjet_1200-ps.ppd.gz Binary files differindex 6732201d7..1b8a2da6d 100644 --- a/prnt/ps/hp-laserjet_1200-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1200-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1200n-ps.ppd.gz b/prnt/ps/hp-laserjet_1200n-ps.ppd.gz Binary files differindex 44d0f9a14..66b13f5eb 100644 --- a/prnt/ps/hp-laserjet_1200n-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1200n-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1220-ps.ppd.gz b/prnt/ps/hp-laserjet_1220-ps.ppd.gz Binary files differindex f058660ff..75fb3f216 100644 --- a/prnt/ps/hp-laserjet_1220-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1220-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1220se-ps.ppd.gz b/prnt/ps/hp-laserjet_1220se-ps.ppd.gz Binary files differindex 2873364f4..535a51b55 100644 --- a/prnt/ps/hp-laserjet_1220se-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1220se-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1300-ps.ppd.gz b/prnt/ps/hp-laserjet_1300-ps.ppd.gz Binary files differindex 0e8f73d43..aec921a95 100644 --- a/prnt/ps/hp-laserjet_1300-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1300-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1300n-ps.ppd.gz b/prnt/ps/hp-laserjet_1300n-ps.ppd.gz Binary files differindex c47af795d..c185501aa 100644 --- a/prnt/ps/hp-laserjet_1300n-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1300n-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1300xi-ps.ppd.gz b/prnt/ps/hp-laserjet_1300xi-ps.ppd.gz Binary files differindex 73f31567e..f470fbeaa 100644 --- a/prnt/ps/hp-laserjet_1300xi-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1300xi-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1320-ps.ppd.gz b/prnt/ps/hp-laserjet_1320-ps.ppd.gz Binary files differindex 8d556fd0a..dd7dd3ca9 100644 --- a/prnt/ps/hp-laserjet_1320-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1320-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1320_series-ps.ppd.gz b/prnt/ps/hp-laserjet_1320_series-ps.ppd.gz Binary files differindex 9da6a7e27..04ffca293 100644 --- a/prnt/ps/hp-laserjet_1320_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1320_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1320n-ps.ppd.gz b/prnt/ps/hp-laserjet_1320n-ps.ppd.gz Binary files differindex ef90b130a..3a0f866c1 100644 --- a/prnt/ps/hp-laserjet_1320n-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1320n-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1320nw-ps.ppd.gz b/prnt/ps/hp-laserjet_1320nw-ps.ppd.gz Binary files differindex e257c9828..695d8bd1a 100644 --- a/prnt/ps/hp-laserjet_1320nw-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1320nw-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_1320tn-ps.ppd.gz b/prnt/ps/hp-laserjet_1320tn-ps.ppd.gz Binary files differindex a3ef22bc5..485a81308 100644 --- a/prnt/ps/hp-laserjet_1320tn-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_1320tn-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_200_colormfp_m275-ps.ppd.gz b/prnt/ps/hp-laserjet_200_colormfp_m275-ps.ppd.gz Binary files differindex ea3147bd1..82292e65c 100644 --- a/prnt/ps/hp-laserjet_200_colormfp_m275-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_200_colormfp_m275-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2100-ps.ppd.gz b/prnt/ps/hp-laserjet_2100-ps.ppd.gz Binary files differindex 6eb8c231b..65f464338 100644 --- a/prnt/ps/hp-laserjet_2100-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2100-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2100_series-ps.ppd.gz b/prnt/ps/hp-laserjet_2100_series-ps.ppd.gz Binary files differindex 45f85a736..9432a8cb2 100644 --- a/prnt/ps/hp-laserjet_2100_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2100_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2200-ps.ppd.gz b/prnt/ps/hp-laserjet_2200-ps.ppd.gz Binary files differindex cbb78e5e5..9e7f435d6 100644 --- a/prnt/ps/hp-laserjet_2200-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2200-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2200_series-ps.ppd.gz b/prnt/ps/hp-laserjet_2200_series-ps.ppd.gz Binary files differindex 783046ba8..67214af3c 100644 --- a/prnt/ps/hp-laserjet_2200_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2200_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2300-ps.ppd.gz b/prnt/ps/hp-laserjet_2300-ps.ppd.gz Binary files differindex 6c3d5a110..5bf92a82a 100644 --- a/prnt/ps/hp-laserjet_2300-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2300-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2300_series-ps.ppd.gz b/prnt/ps/hp-laserjet_2300_series-ps.ppd.gz Binary files differindex c70fc435e..2bc36c7a8 100644 --- a/prnt/ps/hp-laserjet_2300_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2300_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2410-ps.ppd.gz b/prnt/ps/hp-laserjet_2410-ps.ppd.gz Binary files differindex c2ae0680e..f65c5901f 100644 --- a/prnt/ps/hp-laserjet_2410-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2410-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2420-ps.ppd.gz b/prnt/ps/hp-laserjet_2420-ps.ppd.gz Binary files differindex 0a192808c..42bca2e8e 100644 --- a/prnt/ps/hp-laserjet_2420-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2420-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_2430-ps.ppd.gz b/prnt/ps/hp-laserjet_2430-ps.ppd.gz Binary files differindex 3d23ceaec..afb102ab4 100644 --- a/prnt/ps/hp-laserjet_2430-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_2430-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3015-ps.ppd.gz b/prnt/ps/hp-laserjet_3015-ps.ppd.gz Binary files differindex d3374b85a..312c79c2d 100644 --- a/prnt/ps/hp-laserjet_3015-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3015-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3020-ps.ppd.gz b/prnt/ps/hp-laserjet_3020-ps.ppd.gz Binary files differindex da11823a1..d7282d772 100644 --- a/prnt/ps/hp-laserjet_3020-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3020-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3030-ps.ppd.gz b/prnt/ps/hp-laserjet_3030-ps.ppd.gz Binary files differindex c5ab314ec..0e214b1df 100644 --- a/prnt/ps/hp-laserjet_3030-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3030-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3050-ps.ppd.gz b/prnt/ps/hp-laserjet_3050-ps.ppd.gz Binary files differindex 1654d0b94..ecca2fc43 100644 --- a/prnt/ps/hp-laserjet_3050-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3050-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3052-ps.ppd.gz b/prnt/ps/hp-laserjet_3052-ps.ppd.gz Binary files differindex 3dacecc74..0ed299024 100644 --- a/prnt/ps/hp-laserjet_3052-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3052-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3200m-ps.ppd.gz b/prnt/ps/hp-laserjet_3200m-ps.ppd.gz Binary files differindex fd8710f16..f61a8a62d 100644 --- a/prnt/ps/hp-laserjet_3200m-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3200m-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3300_3310_3320-ps.ppd.gz b/prnt/ps/hp-laserjet_3300_3310_3320-ps.ppd.gz Binary files differindex ac510152a..38725959f 100644 --- a/prnt/ps/hp-laserjet_3300_3310_3320-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3300_3310_3320-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3380-ps.ppd.gz b/prnt/ps/hp-laserjet_3380-ps.ppd.gz Binary files differindex d71687304..79d131b60 100644 --- a/prnt/ps/hp-laserjet_3380-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3380-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_3390-ps.ppd.gz b/prnt/ps/hp-laserjet_3390-ps.ppd.gz Binary files differindex e05c3192f..3dc0beec8 100644 --- a/prnt/ps/hp-laserjet_3390-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_3390-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4-ps.ppd.gz b/prnt/ps/hp-laserjet_4-ps.ppd.gz Binary files differindex de32fb764..23b5dc30a 100644 --- a/prnt/ps/hp-laserjet_4-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4000_series-ps.ppd.gz b/prnt/ps/hp-laserjet_4000_series-ps.ppd.gz Binary files differindex 6224131af..904d24f68 100644 --- a/prnt/ps/hp-laserjet_4000_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4000_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4050_series-ps.ppd.gz b/prnt/ps/hp-laserjet_4050_series-ps.ppd.gz Binary files differindex 8f5d2e0e2..012c87ac8 100644 --- a/prnt/ps/hp-laserjet_4050_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4050_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4100_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_4100_mfp-ps.ppd.gz Binary files differindex 7f415c0b3..9d4d4ea64 100644 --- a/prnt/ps/hp-laserjet_4100_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4100_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4100_series-ps.ppd.gz b/prnt/ps/hp-laserjet_4100_series-ps.ppd.gz Binary files differindex 92f2db175..0ca4bd574 100644 --- a/prnt/ps/hp-laserjet_4100_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4100_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4200-ps.ppd.gz b/prnt/ps/hp-laserjet_4200-ps.ppd.gz Binary files differindex b6ecf1e3a..e7b545e35 100644 --- a/prnt/ps/hp-laserjet_4200-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4200-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4240-ps.ppd.gz b/prnt/ps/hp-laserjet_4240-ps.ppd.gz Binary files differindex 5ab277425..c75a28b3d 100644 --- a/prnt/ps/hp-laserjet_4240-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4240-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4250-ps.ppd.gz b/prnt/ps/hp-laserjet_4250-ps.ppd.gz Binary files differindex 7876915f5..c287ff4a4 100644 --- a/prnt/ps/hp-laserjet_4250-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4250-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4300-ps.ppd.gz b/prnt/ps/hp-laserjet_4300-ps.ppd.gz Binary files differindex edf037c83..756a80026 100644 --- a/prnt/ps/hp-laserjet_4300-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4300-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4345_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_4345_mfp-ps.ppd.gz Binary files differindex 166903f08..ef75cbc7f 100644 --- a/prnt/ps/hp-laserjet_4345_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4345_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4350-ps.ppd.gz b/prnt/ps/hp-laserjet_4350-ps.ppd.gz Binary files differindex 9cf6a194d..9805fd0fd 100644 --- a/prnt/ps/hp-laserjet_4350-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4350-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4_plus-ps.ppd.gz b/prnt/ps/hp-laserjet_4_plus-ps.ppd.gz Binary files differindex 1539ec0ea..0ee87b916 100644 --- a/prnt/ps/hp-laserjet_4_plus-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4_plus-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4ml-ps.ppd.gz b/prnt/ps/hp-laserjet_4ml-ps.ppd.gz Binary files differindex 0b8585b78..15e6f5ae6 100644 --- a/prnt/ps/hp-laserjet_4ml-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4ml-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4mp-ps.ppd.gz b/prnt/ps/hp-laserjet_4mp-ps.ppd.gz Binary files differindex 9cabfb312..99c21089a 100644 --- a/prnt/ps/hp-laserjet_4mp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4mp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4si-ps.ppd.gz b/prnt/ps/hp-laserjet_4si-ps.ppd.gz Binary files differindex 5ce2a785a..56c49a4b7 100644 --- a/prnt/ps/hp-laserjet_4si-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4si-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_4v-ps.ppd.gz b/prnt/ps/hp-laserjet_4v-ps.ppd.gz Binary files differindex 394d6408d..8c668b6c6 100644 --- a/prnt/ps/hp-laserjet_4v-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_4v-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5000-ps.ppd.gz b/prnt/ps/hp-laserjet_5000-ps.ppd.gz Binary files differindex 364de450e..7d6a2a5cf 100644 --- a/prnt/ps/hp-laserjet_5000-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5000-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5000_series-ps.ppd.gz b/prnt/ps/hp-laserjet_5000_series-ps.ppd.gz Binary files differindex d77e68e06..60c87dc9b 100644 --- a/prnt/ps/hp-laserjet_5000_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5000_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_500_color_m551-ps.ppd.gz b/prnt/ps/hp-laserjet_500_color_m551-ps.ppd.gz Binary files differindex a5586a695..7e2a1eb56 100644 --- a/prnt/ps/hp-laserjet_500_color_m551-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_500_color_m551-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5100_series-ps.ppd.gz b/prnt/ps/hp-laserjet_5100_series-ps.ppd.gz Binary files differindex 873ccbcfc..724a2be86 100644 --- a/prnt/ps/hp-laserjet_5100_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5100_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5200-ps.ppd.gz b/prnt/ps/hp-laserjet_5200-ps.ppd.gz Binary files differindex 9488f86fe..7e5da6b06 100644 --- a/prnt/ps/hp-laserjet_5200-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5200-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5200l-ps.ppd.gz b/prnt/ps/hp-laserjet_5200l-ps.ppd.gz Binary files differindex 7a18d1c0b..57f2c2820 100644 --- a/prnt/ps/hp-laserjet_5200l-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5200l-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5200lx-ps.ppd.gz b/prnt/ps/hp-laserjet_5200lx-ps.ppd.gz Binary files differindex dbb8b06de..0d364d67d 100644 --- a/prnt/ps/hp-laserjet_5200lx-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5200lx-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5mp-ps.ppd.gz b/prnt/ps/hp-laserjet_5mp-ps.ppd.gz Binary files differindex 8591cfd23..a3a06d484 100644 --- a/prnt/ps/hp-laserjet_5mp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5mp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5p-ps.ppd.gz b/prnt/ps/hp-laserjet_5p-ps.ppd.gz Binary files differindex d60e91529..ededcaadb 100644 --- a/prnt/ps/hp-laserjet_5p-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5p-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5si-ps.ppd.gz b/prnt/ps/hp-laserjet_5si-ps.ppd.gz Binary files differindex fc902d28b..4ba19b471 100644 --- a/prnt/ps/hp-laserjet_5si-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5si-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_5si_mopier-ps.ppd.gz b/prnt/ps/hp-laserjet_5si_mopier-ps.ppd.gz Binary files differindex 008b0186d..880ba31e5 100644 --- a/prnt/ps/hp-laserjet_5si_mopier-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_5si_mopier-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_600_m601_m602_m603-ps.ppd.gz b/prnt/ps/hp-laserjet_600_m601_m602_m603-ps.ppd.gz Binary files differindex 5c6dfa713..4dac2dd44 100644 --- a/prnt/ps/hp-laserjet_600_m601_m602_m603-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_600_m601_m602_m603-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_6mp-ps.ppd.gz b/prnt/ps/hp-laserjet_6mp-ps.ppd.gz Binary files differindex d1b7c536e..511f956f6 100644 --- a/prnt/ps/hp-laserjet_6mp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_6mp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_6p-ps.ppd.gz b/prnt/ps/hp-laserjet_6p-ps.ppd.gz Binary files differindex 177984c84..3ecd92bdb 100644 --- a/prnt/ps/hp-laserjet_6p-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_6p-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_8000-ps.ppd.gz b/prnt/ps/hp-laserjet_8000-ps.ppd.gz Binary files differindex 09019e95b..f5702ffa9 100644 --- a/prnt/ps/hp-laserjet_8000-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_8000-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_8000_series-ps.ppd.gz b/prnt/ps/hp-laserjet_8000_series-ps.ppd.gz Binary files differindex 29decfce5..979046f4d 100644 --- a/prnt/ps/hp-laserjet_8000_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_8000_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_8100_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_8100_mfp-ps.ppd.gz Binary files differindex e429b6d3b..2ced85759 100644 --- a/prnt/ps/hp-laserjet_8100_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_8100_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_8100_series-ps.ppd.gz b/prnt/ps/hp-laserjet_8100_series-ps.ppd.gz Binary files differindex 62900782d..4e1590019 100644 --- a/prnt/ps/hp-laserjet_8100_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_8100_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_8150_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_8150_mfp-ps.ppd.gz Binary files differindex 68522e74a..9ec9793b4 100644 --- a/prnt/ps/hp-laserjet_8150_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_8150_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9000_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_9000_mfp-ps.ppd.gz Binary files differindex aaa9f7e76..484df67cd 100644 --- a/prnt/ps/hp-laserjet_9000_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9000_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9000_series-ps.ppd.gz b/prnt/ps/hp-laserjet_9000_series-ps.ppd.gz Binary files differindex 1c622e545..af14b9d3d 100644 --- a/prnt/ps/hp-laserjet_9000_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9000_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9040-ps.ppd.gz b/prnt/ps/hp-laserjet_9040-ps.ppd.gz Binary files differindex ece5059b4..77d81a2be 100644 --- a/prnt/ps/hp-laserjet_9040-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9040-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9040_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_9040_mfp-ps.ppd.gz Binary files differindex 3adb50b4e..9258f80f7 100644 --- a/prnt/ps/hp-laserjet_9040_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9040_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9050-ps.ppd.gz b/prnt/ps/hp-laserjet_9050-ps.ppd.gz Binary files differindex c9d6d7611..7a946d990 100644 --- a/prnt/ps/hp-laserjet_9050-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9050-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9050_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_9050_mfp-ps.ppd.gz Binary files differindex a3bf01dd2..78837ea07 100644 --- a/prnt/ps/hp-laserjet_9050_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9050_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9055mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_9055mfp-ps.ppd.gz Binary files differindex 4674a6400..e57ac3c86 100644 --- a/prnt/ps/hp-laserjet_9055mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9055mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_9065mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_9065mfp-ps.ppd.gz Binary files differindex d36867a59..728a714ff 100644 --- a/prnt/ps/hp-laserjet_9065mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_9065mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_cm1410_series-ps.ppd.gz b/prnt/ps/hp-laserjet_cm1410_series-ps.ppd.gz Binary files differindex c51f54520..974b47d86 100644 --- a/prnt/ps/hp-laserjet_cm1410_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_cm1410_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_cp1520_series-ps.ppd.gz b/prnt/ps/hp-laserjet_cp1520_series-ps.ppd.gz Binary files differindex 149b4fa99..778ebd45f 100644 --- a/prnt/ps/hp-laserjet_cp1520_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_cp1520_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m1522_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m1522_mfp-ps.ppd.gz Binary files differindex 2cf228c62..c5030fad7 100644 --- a/prnt/ps/hp-laserjet_m1522_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m1522_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m1522n_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m1522n_mfp-ps.ppd.gz Binary files differindex 354d0a78d..1d7d9feaa 100644 --- a/prnt/ps/hp-laserjet_m1522n_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m1522n_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m1522nf_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m1522nf_mfp-ps.ppd.gz Binary files differindex 24376931d..8010931f2 100644 --- a/prnt/ps/hp-laserjet_m1522nf_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m1522nf_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m1530_mfp_series-ps.ppd.gz b/prnt/ps/hp-laserjet_m1530_mfp_series-ps.ppd.gz Binary files differindex f0f7a3c4b..4d64dba7e 100644 --- a/prnt/ps/hp-laserjet_m1530_mfp_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m1530_mfp_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m2727_mfp_series-ps.ppd.gz b/prnt/ps/hp-laserjet_m2727_mfp_series-ps.ppd.gz Binary files differindex 7cf0e30c1..dd6ba4f44 100644 --- a/prnt/ps/hp-laserjet_m2727_mfp_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m2727_mfp_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m3027_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m3027_mfp-ps.ppd.gz Binary files differindex d149f0321..d18bb5e8d 100644 --- a/prnt/ps/hp-laserjet_m3027_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m3027_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m3035_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m3035_mfp-ps.ppd.gz Binary files differindex b2c7ac05d..7f2a55cd2 100644 --- a/prnt/ps/hp-laserjet_m3035_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m3035_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m4345_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m4345_mfp-ps.ppd.gz Binary files differindex b4b0b4d96..d7cb2bbcd 100644 --- a/prnt/ps/hp-laserjet_m4345_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m4345_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m4349_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m4349_mfp-ps.ppd.gz Binary files differindex 1d9fe931d..0fdbec51d 100644 --- a/prnt/ps/hp-laserjet_m4349_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m4349_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m4555_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m4555_mfp-ps.ppd.gz Binary files differindex c6b6d37d9..f116caef6 100644 --- a/prnt/ps/hp-laserjet_m4555_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m4555_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m5025_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m5025_mfp-ps.ppd.gz Binary files differindex 2ba11aa4b..6ab0f48fd 100644 --- a/prnt/ps/hp-laserjet_m5025_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m5025_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m5035_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m5035_mfp-ps.ppd.gz Binary files differindex b997b38c7..d6a3f1511 100644 --- a/prnt/ps/hp-laserjet_m5035_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m5035_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m9040_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m9040_mfp-ps.ppd.gz Binary files differindex f49318f85..12ef00480 100644 --- a/prnt/ps/hp-laserjet_m9040_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m9040_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m9050_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m9050_mfp-ps.ppd.gz Binary files differindex 3cec0f700..ee59395cd 100644 --- a/prnt/ps/hp-laserjet_m9050_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m9050_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_m9059_mfp-ps.ppd.gz b/prnt/ps/hp-laserjet_m9059_mfp-ps.ppd.gz Binary files differindex b4c47fbb7..229ccee19 100644 --- a/prnt/ps/hp-laserjet_m9059_mfp-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_m9059_mfp-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_p2015_series-ps.ppd.gz b/prnt/ps/hp-laserjet_p2015_series-ps.ppd.gz Binary files differindex 340fbaf5b..0674a75f7 100644 --- a/prnt/ps/hp-laserjet_p2015_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_p2015_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_p2055_series-ps.ppd.gz b/prnt/ps/hp-laserjet_p2055_series-ps.ppd.gz Binary files differindex ab12f8ef1..5ce2efd5a 100644 --- a/prnt/ps/hp-laserjet_p2055_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_p2055_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_p3004-ps.ppd.gz b/prnt/ps/hp-laserjet_p3004-ps.ppd.gz Binary files differindex 787b7ed6a..166183c75 100644 --- a/prnt/ps/hp-laserjet_p3004-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_p3004-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_p3005-ps.ppd.gz b/prnt/ps/hp-laserjet_p3005-ps.ppd.gz Binary files differindex be2e58622..71582ef59 100644 --- a/prnt/ps/hp-laserjet_p3005-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_p3005-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_p3010_series-ps.ppd.gz b/prnt/ps/hp-laserjet_p3010_series-ps.ppd.gz Binary files differindex 1e6301f2e..42cdfa212 100644 --- a/prnt/ps/hp-laserjet_p3010_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_p3010_series-ps.ppd.gz diff --git a/prnt/ps/hp-laserjet_p4010_series-ps.ppd.gz b/prnt/ps/hp-laserjet_p4010_series-ps.ppd.gz Binary files differindex 6fd691eb3..2a7e70e68 100644 --- a/prnt/ps/hp-laserjet_p4010_series-ps.ppd.gz +++ b/prnt/ps/hp-laserjet_p4010_series-ps.ppd.gz diff --git a/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd.gz b/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd.gz Binary files differindex 9c9181e52..b7ffb3e53 100644 --- a/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd.gz +++ b/prnt/ps/hp-lj_300_400_color_m351_m451-ps.ppd.gz diff --git a/prnt/ps/hp-lj_300_400_color_mfp_m375_m475-ps.ppd.gz b/prnt/ps/hp-lj_300_400_color_mfp_m375_m475-ps.ppd.gz Binary files differindex 2c59ec477..f35931e89 100644 --- a/prnt/ps/hp-lj_300_400_color_mfp_m375_m475-ps.ppd.gz +++ b/prnt/ps/hp-lj_300_400_color_mfp_m375_m475-ps.ppd.gz diff --git a/prnt/ps/hp-mopier_240-ps.ppd.gz b/prnt/ps/hp-mopier_240-ps.ppd.gz Binary files differindex 7c9a210e0..70dc8734c 100644 --- a/prnt/ps/hp-mopier_240-ps.ppd.gz +++ b/prnt/ps/hp-mopier_240-ps.ppd.gz diff --git a/prnt/ps/hp-mopier_320-ps.ppd.gz b/prnt/ps/hp-mopier_320-ps.ppd.gz Binary files differindex 7514563db..02db4f1ac 100644 --- a/prnt/ps/hp-mopier_320-ps.ppd.gz +++ b/prnt/ps/hp-mopier_320-ps.ppd.gz diff --git a/prnt/ps/hp-officejet_pro_8000_enterprise_a811a-ps.ppd.gz b/prnt/ps/hp-officejet_pro_8000_enterprise_a811a-ps.ppd.gz Binary files differindex 8c54ff28e..ac50d1813 100644 --- a/prnt/ps/hp-officejet_pro_8000_enterprise_a811a-ps.ppd.gz +++ b/prnt/ps/hp-officejet_pro_8000_enterprise_a811a-ps.ppd.gz @@ -958,9 +958,9 @@ try: log.error("Resize parameter is incorrect. Resize must be 0% < resize < 400%.") log.error("Using resize value of 100%.") else: - new_w = pixels_per_line * resize / 100 - new_h = lines * resize / 100 - log.info("Resizing from %dx%d to %dx%d..." % (pixels_per_line, lines, new_w, new_h)) + new_w = int(pixels_per_line * resize / 100) + new_h = int(lines * resize / 100) + log.info("Resizing image from %dx%d to %dx%d..." % (pixels_per_line, lines, new_w, new_h)) im = im.resize((new_w, new_h), Image.ANTIALIAS) file_saved = False diff --git a/scan/sane.py b/scan/sane.py index 872a74435..1b5395a97 100755 --- a/scan/sane.py +++ b/scan/sane.py @@ -272,6 +272,7 @@ class ScanDevice: self.last_opt = self.dev.setOption(opt.index, value) except scanext.error: log.error("Unable to set option %s to value %s" % (key, value)) + return # do binary AND to find if we have to reload options: if self.last_opt & scanext.INFO_RELOAD_OPTIONS: diff --git a/scan/sane/bb_ledm.c b/scan/sane/bb_ledm.c index 6e33650a5..d94d5b7f2 100644 --- a/scan/sane/bb_ledm.c +++ b/scan/sane/bb_ledm.c @@ -81,8 +81,6 @@ struct device_settings enum DOCUMENT_TYPE docs[DT_MAX]; int document_size_auto_detect_supported; /* 0=false, 1=true */ int feeder_capacity; - int rotation; /* needed adf front side image rotation */ - int duplex_rotation; /* needed adf back side image rotation */ }; struct device_platen @@ -159,11 +157,11 @@ static const char *sf_element[SF_MAX] = { "", "raw", "jpeg" }; /* SCAN_FORMAT ( static const char *ce_element[CE_MAX] = { "", "K1", "Gray8", "Color8" }; /* COLOR_ENTRY */ static const char *is_element[IS_MAX] = { "", "Platen", "Adf", "ADFDuplex" }; /* INPUT_SOURCE */ -# define POST_HEADER "POST /Scan/Jobs HTTP/1.1\r\nHost: 16.180.119.199:8080\r\nUser-Agent: \ -hp\r\nAccept: text/plain, */*\r\nAccept-Language: en-us,en;q=0.5\r\n\ -Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\nKeep-Alive: 1000\r\nProxy-Connection: keep-alive\r\n\ +# define POST_HEADER "POST /Scan/Jobs HTTP/1.1\r\nHost: localhost\r\nUser-Agent: \ +hplip\r\nAccept: text/plain, */*\r\nAccept-Language: en-us,en\r\n\ +Accept-Charset: ISO-8859-1,utf-8\r\nKeep-Alive: 1000\r\nProxy-Connection: keep-alive\r\n\ Content-Type: */*; charset=UTF-8\r\nX-Requested-With: XMLHttpRequest\r\n\ -Referer: http://16.180.119.199:8080/\r\nContent-Length: 890\r\nCookie: AccessCounter=new\r\n\ +Content-Length: %d\r\nCookie: AccessCounter=new\r\n\ Pragma: no-cache\r\nCache-Control: no-cache\r\n\r\n" # define GET_SCANNER_ELEMENTS "GET /Scan/ScanCaps HTTP/1.1\r\n\ @@ -180,34 +178,35 @@ Accept-Language: en-us,en\r\n\ Accept-Charset:utf-8\r\n\ Keep-Alive: 20\r\nProxy-Connection: keep-alive\r\nCookie: AccessCounter=new\r\n0\r\n\r\n" -# define CREATE_SCAN_JOB_REQUEST "<scan:ScanJob xmlns:scan=\"http://www.hp.com/schemas/imaging/con/cnx/scan/2008/08/19\" xmlns:dd=\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\">\ -<scan:XResolution>%d</scan:XResolution>\ -<scan:YResolution>%d</scan:YResolution>\ -<scan:XStart>%d</scan:XStart>\ -<scan:YStart>%d</scan:YStart>\ -<scan:Width>%d</scan:Width>\ -<scan:Height>%d</scan:Height>\ -<scan:Format>%s</scan:Format>\ -<scan:CompressionQFactor>15</scan:CompressionQFactor>\ -<scan:ColorSpace>%s</scan:ColorSpace>\ -<scan:BitDepth>%d</scan:BitDepth>\ -<scan:InputSource>%s</scan:InputSource>\ -<scan:AdfOptions>SelectSinglePage</scan:AdfOptions>\ -<scan:GrayRendering>NTSC</scan:GrayRendering>\ -<scan:ToneMap>\ -<scan:Gamma>0</scan:Gamma>\ -<scan:Brightness>1000</scan:Brightness>\ -<scan:Contrast>1000</scan:Contrast>\ -<scan:Highlite>0</scan:Highlite>\ -<scan:Shadow>0</scan:Shadow></scan:ToneMap>\ -<scan:ContentType>Photo</scan:ContentType></scan:ScanJob>" - -# define CANCEL_JOB_REQUEST "PUT %s HTTP/1.1\r\nHost: localhost\r\nUser-Agent: hp\r\n\ +# define CREATE_SCAN_JOB_REQUEST "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\ +<ScanSettings xmlns=\"http://www.hp.com/schemas/imaging/con/cnx/scan/2008/08/19\">\ +<XResolution>%d</XResolution>\ +<YResolution>%d</YResolution>\ +<XStart>%d</XStart>\ +<Width>%d</Width>\ +<YStart>%d</YStart>\ +<Height>%d</Height>\ +<Format>%s</Format>\ +<CompressionQFactor>15</CompressionQFactor>\ +<ColorSpace>%s</ColorSpace>\ +<BitDepth>%d</BitDepth>\ +<InputSource>%s</InputSource>\ +<InputSourceType>%s</InputSourceType>%s\ +<GrayRendering>NTSC</GrayRendering>\ +<ToneMap>\ +<Gamma>0</Gamma>\ +<Brightness>1000</Brightness>\ +<Contrast>1000</Contrast>\ +<Highlite>0</Highlite>\ +<Shadow>0</Shadow></ToneMap>\ +<ContentType>Photo</ContentType></ScanSettings>" + +# define CANCEL_JOB_REQUEST "PUT %s HTTP/1.1\r\nHost: localhost\r\nUser-Agent: hplip\r\n\ Accept: text/plain\r\nAccept-Language: en-us,en\r\nAccept-Charset:utf-8\r\nKeep-Alive: 10\r\n\ Content-Type: text/xml\r\nProxy-Connection: Keep-alive\r\nX-Requested-With: XMLHttpRequest\r\nReferer: localhost\r\n\ -Content-Length: 523\r\nCookie: AccessCounter=new\r\n\r\n\ -<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\ -<!-- THIS DATA SUBJECT TO DISCLAIMER(S) INCLUDED WITH THE PRODUCT OF ORIGIN. -->\n\ +Content-Length: %d\r\nCookie: AccessCounter=new\r\n\r\n" + +#define CANCEL_JOB_DATA "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\ <j:Job xmlns:j=\"http://www.hp.com/schemas/imaging/con/ledm/jobs/2009/04/30\" \ xmlns:dd=\"http://www.hp.com/schemas/imaging/con/dictionaries/1.0/\" \ xmlns:fax=\"http://www.hp.com/schemas/imaging/con/fax/2008/06/13\" \ @@ -228,6 +227,9 @@ Keep-Alive: 300\r\nProxy-Connection: keep-alive\r\nCookie: AccessCounter=new\r\n # define ADF_EMPTY "<AdfState>Empty</AdfState>" # define SCANNER_IDLE "<ScannerState>Idle</ScannerState>" # define SCANNER_BUSY_WITH_SCAN_JOB "<ScannerState>BusyWithScanJob</ScannerState>" +# define JOBSTATE_PROCESSING "<j:JobState>Processing</j:JobState>" +# define JOBSTATE_CANCELED "<j:JobState>Canceled</j:JobState>" +# define JOBSTATE_COMPLETED "<j:JobState>Completed</j:JobState>" static int parse_scan_elements(const char *payload, int size, struct wscn_scan_elements *elements) { @@ -326,7 +328,9 @@ static int parse_scan_elements(const char *payload, int size, struct wscn_scan_e { get_tag(tail, size-(tail-payload), tag, sizeof(tag), &tail); get_element(tail, size-(tail-payload), value, sizeof(value), &tail); + _DBG ("parse_scan_elements platen_resolution_list value=%s\n", value); if(strtol(value, NULL, 10) && elements->config.platen.platen_resolution_list[i-1] != strtol(value, NULL, 10)) + elements->config.platen.platen_resolution_list[i++]=strtol(value, NULL, 10); } } @@ -387,11 +391,24 @@ static int parse_scan_elements(const char *payload, int size, struct wscn_scan_e { get_tag(tail, size-(tail-payload), tag, sizeof(tag), &tail); get_element(tail, size-(tail-payload), value, sizeof(value), &tail); + _DBG ("parse_scan_elements adf_resolution_list value=%s", value); if(strtol(value, NULL, 10) && elements->config.adf.adf_resolution_list[i-1] != strtol(value, NULL, 10)) elements->config.adf.adf_resolution_list[i++]=strtol(value, NULL, 10); } } - elements->config.adf.adf_resolution_list[0]=i-1; + elements->config.adf.adf_resolution_list[0]=i-1; + get_tag(tail, size-(tail-payload), tag, sizeof(tag), &tail); + get_tag(tail, size-(tail-payload), tag, sizeof(tag), &tail);//FeederCapacity + get_element(tail, size-(tail-payload), value, sizeof(value), &tail); + _DBG ("parse_scan_elements FeederCapacity=%s", value); + elements->config.settings.feeder_capacity = strtol(value, NULL, 10); + get_tag(tail, size-(tail-payload), tag, sizeof(tag), &tail); + get_tag(tail, size-(tail-payload), tag, sizeof(tag), &tail); + if(!strcmp(tag, "AdfDuplexer")) + { + elements->config.adf.duplex_supported = 1; + _DBG ("parse_scan_elements duplex_supported"); + } } } /* end while (1) */ return 0; @@ -503,7 +520,7 @@ static int get_scanner_elements(struct ledm_session *ps, struct wscn_scan_elemen { struct bb_ledm_session *pbb = ps->bb_session; int bytes_read = 0; - int stat=1, tmo=EXCEPTION_TIMEOUT; + int stat=1, tmo=10; char buf[8192]; if (http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) @@ -544,30 +561,39 @@ bugout: static int cancel_job(struct ledm_session *ps) { struct bb_ledm_session *pbb = ps->bb_session; - int len, stat=1, tmo=1/*EXCEPTION_TIMEOUT*/; + int len, stat=1, tmo=5/*EXCEPTION_TIMEOUT*/; char buf[2048]; int bytes_read; + _DBG("cancel_job user_cancel=%d job_id=%d url=%s \n", ps->user_cancel, ps->job_id, ps->url); + if (ps->job_id == 0 || ps->user_cancel == 0) + { + ps->job_id = 0; + ps->page_id = 0; + return 0 ; + } + if (http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) { _BUG("unable to open http connection %s\n", ps->uri); goto bugout; } - len = snprintf(buf, sizeof(buf), CANCEL_JOB_REQUEST, ps->url); - + len = snprintf(buf, sizeof(buf), CANCEL_JOB_REQUEST, ps->url, strlen(CANCEL_JOB_DATA)); + if (http_write(pbb->http_handle, buf, len, 1) != HTTP_R_OK) + { + _BUG("unable to cancel_job %s\n", ps->url); + } + + len = snprintf(buf, sizeof(buf), CANCEL_JOB_DATA); if (http_write(pbb->http_handle, buf, len, 1) != HTTP_R_OK) { _BUG("unable to cancel_job %s\n", ps->url); -// goto bugout; } if (read_http_payload(ps, buf, sizeof(buf), tmo, &bytes_read)) goto bugout; - ps->job_id = 0; - ps->page_id = 0; - stat=0; bugout: @@ -665,6 +691,7 @@ int bb_open(struct ledm_session *ps) i = pbb->elements.config.platen.platen_resolution_list[0] + 1; while(i--) { + _DBG("bb_open platen_resolution_list = %d\n", pbb->elements.config.platen.platen_resolution_list[i]); ps->platen_resolutionList[i] = pbb->elements.config.platen.platen_resolution_list[i]; ps->resolutionList[i] = pbb->elements.config.platen.platen_resolution_list[i]; } @@ -743,25 +770,26 @@ int bb_get_parameters(struct ledm_session *ps, SANE_Parameters *pp, int option) break; case SPO_BEST_GUESS: /* called by xsane & sane_start */ /* Set scan parameters based on best guess. */ - pp->lines = (int)(SANE_UNFIX(ps->effectiveBry - ps->effectiveTly)/MM_PER_INCH*ps->currentResolution); - pp->pixels_per_line = floor(SANE_UNFIX(ps->effectiveBrx -ps->effectiveTlx)/MM_PER_INCH*ps->currentResolution); + pp->lines = (int)round(SANE_UNFIX(ps->effectiveBry - ps->effectiveTly)/MM_PER_INCH*ps->currentResolution); + pp->pixels_per_line = (int)round(SANE_UNFIX(ps->effectiveBrx -ps->effectiveTlx)/MM_PER_INCH*ps->currentResolution); pp->bytes_per_line = BYTES_PER_LINE(pp->pixels_per_line, pp->depth * factor); + break; default: break; } return 0; } -int bb_is_paper_in_adf(struct ledm_session *ps) /* 0 = no paper in adf, 1 = paper in adf, 2 = busy with scan job, -1 = error */ +int bb_is_paper_in_adf(struct ledm_session *ps) /* 0 = no paper in adf, 1 = paper in adf, -1 = error */ { - char buf[512]; + char buf[1024]; int bytes_read; struct bb_ledm_session *pbb = ps->bb_session; if(http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) { } - if (http_write(pbb->http_handle, GET_SCANNER_STATUS, sizeof(GET_SCANNER_STATUS)-1, 120) != HTTP_R_OK) + if (http_write(pbb->http_handle, GET_SCANNER_STATUS, sizeof(GET_SCANNER_STATUS)-1, 10) != HTTP_R_OK) { //goto bugout; } @@ -769,72 +797,47 @@ int bb_is_paper_in_adf(struct ledm_session *ps) /* 0 = no paper in adf, 1 = pape http_close(pbb->http_handle); /* error, close http connection */ pbb->http_handle = 0; - + _DBG("bb_is_paper_in_adf .job_id=%d buf=%s\n", ps->job_id, buf); if(strstr(buf, ADF_LOADED)) return 1; if(strstr(buf, ADF_EMPTY) && strstr(buf, SCANNER_BUSY_WITH_SCAN_JOB)) return 2; else return 0; } -char* itoa(int value, char* str, int radix) -{ - static char dig[] = "0123456789""abcdefghijklmnopqrstuvwxyz"; - int n = 0, neg = 0; - unsigned int v; - char* p, *q; - char c; - - if (radix == 10 && value < 0) - { - value = -value; - neg = 1; - } - v = value; - do { - str[n++] = dig[v%radix]; - v /= radix; - } while (v); - if (neg) - str[n++] = '-'; - str[n] = '\0'; - - for (p = str, q = p + (n-1); p < q; ++p, --q) - c = *p, *p = *q, *q = c; - return str; -} -int bb_start_scan(struct ledm_session *ps) +SANE_Status bb_start_scan(struct ledm_session *ps) { char buf[4096] = {0}; - - int len, stat=1, bytes_read; - int i, timeout = EXCEPTION_TIMEOUT ; - - struct bb_ledm_session *pbb = ps->bb_session; + char buf1[1024]={0}; + int len, bytes_read; + int i, timeout = 10 ; char szPage_ID[5] = {0}; char szJob_ID[5] = {0}; - - ps->user_cancel = 0; + SANE_Status stat = SANE_STATUS_IO_ERROR; + struct bb_ledm_session *pbb = ps->bb_session; + ps->user_cancel = 0; + _DBG("bb_start_scan() entering...job_id=%d\n", ps->job_id); if (ps->job_id == 0) { - if(http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) - { - // goto bugout; - } - - while(1) - { - if (http_write(pbb->http_handle, GET_SCANNER_STATUS, sizeof(GET_SCANNER_STATUS)-1, timeout) != HTTP_R_OK) - { - //goto bugout; - } - - read_http_payload(ps, buf, sizeof(buf), timeout, &bytes_read); + if(http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) + { + // goto bugout; + } - if(strstr(buf, SCANNER_IDLE)) break; - } + if (http_write(pbb->http_handle, GET_SCANNER_STATUS, sizeof(GET_SCANNER_STATUS)-1, timeout) != HTTP_R_OK) + { + //goto bugout; + } + + read_http_payload(ps, buf, sizeof(buf), timeout, &bytes_read); + + if(!strstr(buf, SCANNER_IDLE)) + { + stat = SANE_STATUS_DEVICE_BUSY; + goto bugout; + } - http_close(pbb->http_handle); /* error, close http connection */ + http_close(pbb->http_handle); pbb->http_handle = 0; if(http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) @@ -842,75 +845,85 @@ int bb_start_scan(struct ledm_session *ps) } len = snprintf(buf, sizeof(buf), CREATE_SCAN_JOB_REQUEST, - ps->currentResolution, - ps->currentResolution, - (int) (ps->currentTlx / 5548.7133), - (int) (ps->currentTly / 5548.7133), - (int) ((ps->currentBrx / 5548.7133) - (ps->currentTlx / 5548.7133)), - (int) ((ps->currentBry / 5548.7133) - (ps->currentTly / 5548.7133)), - "Jpeg", - (! strcmp(ce_element[ps->currentScanMode], "Color8")) ? "Color" : (! strcmp(ce_element[ps->currentScanMode], "Gray8")) ? "Gray" : "Gray", - ((! strcmp(ce_element[ps->currentScanMode], "Color8")) || (! strcmp(ce_element[ps->currentScanMode], "Gray8"))) ? 8: 8, - is_element[ps->currentInputSource]); - - - /* Write the http post header. Note do not send null termination byte. */ - if (http_write(pbb->http_handle, POST_HEADER, sizeof(POST_HEADER)-1, timeout) != HTTP_R_OK) - { - //goto bugout; - } - - if (http_write(pbb->http_handle, buf, strlen(buf), 1) != HTTP_R_OK) - { - //goto bugout; - } - - /* Write zero footer. */ - if (http_write(pbb->http_handle, ZERO_FOOTER, sizeof(ZERO_FOOTER)-1, 1) != HTTP_R_OK) - { - //goto bugout; - } - - /* Read response. */ - if (read_http_payload(ps, buf, sizeof(buf), timeout, &bytes_read)) - goto bugout; - - http_close(pbb->http_handle); - pbb->http_handle = 0; + ps->currentResolution,//<XResolution> + ps->currentResolution,//<YResolution> + (int) (ps->currentTlx / 5548.7133),//<XStart> + (int) ((ps->currentBrx / 5548.7133) - (ps->currentTlx / 5548.7133)),//<Width> + (int) (ps->currentTly / 5548.7133),//<YStart> + (int) ((ps->currentBry / 5548.7133) - (ps->currentTly / 5548.7133)),//<Height> + "Jpeg",//<Format> + (! strcmp(ce_element[ps->currentScanMode], "Color8")) ? "Color" : (! strcmp(ce_element[ps->currentScanMode], "Gray8")) ? "Gray" : "Gray",//<ColorSpace> + ((! strcmp(ce_element[ps->currentScanMode], "Color8")) || (! strcmp(ce_element[ps->currentScanMode], "Gray8"))) ? 8: 8,//<BitDepth> + ps->currentInputSource == IS_PLATEN ? is_element[1] : is_element[2],//<InputSource> + ps->currentInputSource == IS_PLATEN ? is_element[1] : is_element[2],//<InputSourceType> + ps->currentInputSource != IS_ADF_DUPLEX ? "" : "<AdfOptions><AdfOption>Duplex</AdfOption></AdfOptions>"); + + len = len + strlen(ZERO_FOOTER); + + len = snprintf(buf1, sizeof(buf1), POST_HEADER, len); + if (http_write(pbb->http_handle, buf1, strlen(buf1), timeout) != HTTP_R_OK) + { + //goto bugout; + } + + if (http_write(pbb->http_handle, buf, strlen(buf), 1) != HTTP_R_OK) + { + //goto bugout; + } - char joblist[64]; - char* jl=strstr(buf, "Location:"); - if (!jl) goto bugout; - jl=jl+10; - - int i=0; - while(*jl != '\r') - { - joblist[i]=*jl; - jl=jl+1; i++; - } - joblist[i]='\0'; + /* Write zero footer. */ + if (http_write(pbb->http_handle, ZERO_FOOTER, sizeof(ZERO_FOOTER)-1, 1) != HTTP_R_OK) + { + //goto bugout; + } + memset(buf, 0, sizeof(buf)); + /* Read response. */ + if (read_http_payload(ps, buf, sizeof(buf), timeout, &bytes_read)) + goto bugout; + + http_close(pbb->http_handle); + pbb->http_handle = 0; + + char joblist[64]; + char* jl=strstr(buf, "Location:"); + if (!jl) goto bugout; + jl=jl+10; - strcpy(ps->url, joblist); - char *c=ps->url; - c=strstr(c, "JobList"); - if (c) - { - c=c+8; - int job_id=strtol(c, NULL, 10); - itoa(job_id, szJob_ID,10); - itoa(1, szPage_ID,10); - ps->page_id = 1; - ps->job_id = job_id; - } + int i=0; + while(*jl != '\r') + { + joblist[i]=*jl; + jl=jl+1; i++; + } + joblist[i]='\0'; + + strcpy(ps->url, joblist); + char *c=ps->url; + c=strstr(c, "JobList"); + if (c) + { + c=c+8; + int job_id=strtol(c, NULL, 10); + itoa(job_id, szJob_ID,10); + itoa(1, szPage_ID,10); + ps->page_id = 1; + ps->job_id = job_id; + } } else { + if (ps->currentInputSource == IS_PLATEN) + { + stat = SANE_STATUS_INVAL; + goto bugout; + } + ps->page_id++; itoa(ps->job_id,szJob_ID,10); itoa(ps->page_id, szPage_ID,10); } - + _DBG("bb_start_scan() url=%s page_id=%d\n", ps->url, ps->page_id); + memset(buf, 0, sizeof(buf)-1); if(http_open(ps->dd, HPMUD_S_LEDM_SCAN, &pbb->http_handle) != HTTP_R_OK) @@ -918,30 +931,38 @@ int bb_start_scan(struct ledm_session *ps) } while(strstr(buf, READY_TO_UPLOAD) == NULL) { - //_DBG("bb_start_scan() ENTERING....buf=%s\n", buf); + _DBG("bb_start_scan() ENTERING....buf=%s\n", buf); len = snprintf(buf, sizeof(buf), GET_SCAN_JOB_URL, ps->url); - if (http_write(pbb->http_handle, buf, strlen(buf), 1) != HTTP_R_OK) - { - //goto bugout; - break ; - } - if (read_http_payload (ps, buf, sizeof(buf), 5, &len) != HTTP_R_OK) - { - //goto bugout - break; - } - if (strstr(buf, CANCELED_BY_DEVICE) || strstr(buf, CANCELED_BY_CLIENT)) - { - //_DBG("bb_start_scan() SCAN CANCELLED\n"); - stat=0; - ps->user_cancel = 1; - goto bugout; - } - usleep(500000);//0.5 sec delay + if (http_write(pbb->http_handle, buf, strlen(buf), 1) != HTTP_R_OK) + { + //goto bugout; + break ; + } + if (read_http_payload (ps, buf, sizeof(buf), 5, &len) != HTTP_R_OK) + { + //goto bugout + _DBG("bb_start_scan() read_http_payload FAILED len=%d buf=%s\n", len, buf); + break; + } + if (strstr(buf,JOBSTATE_CANCELED) || strstr(buf, CANCELED_BY_DEVICE) || strstr(buf, CANCELED_BY_CLIENT)) + { + //_DBG("bb_start_scan() SCAN CANCELLED\n"); + stat = SANE_STATUS_GOOD; + ps->user_cancel = 1; + goto bugout; + } + if (strstr(buf, JOBSTATE_COMPLETED)) + { + stat = SANE_STATUS_GOOD; + goto bugout; + } + usleep(500000);//0.5 sec delay }//end while() char *c = strstr(buf, "<BinaryURL>"); + _DBG("bb_start_scan() BinaryURL=%s \n", c); + if (!c) goto bugout; c +=11; char BinaryURL[30]; @@ -967,7 +988,7 @@ int bb_start_scan(struct ledm_session *ps) if(strstr(buf, "HTTP/1.1 400 Bad Request")) http_read_header(pbb->http_handle, buf, sizeof(buf), timeout, &len); - stat=0; + stat = SANE_STATUS_GOOD; bugout: if (stat && pbb->http_handle) { @@ -984,7 +1005,7 @@ int get_size(struct ledm_session* ps) int i=0, tmo=50, len; if(ps->currentResolution >= 1200) tmo *= 5; - + while(1) { if(http_read_size(pbb->http_handle, buffer+i, 1, tmo, &len) == 2) return 0; @@ -1001,9 +1022,9 @@ int bb_get_image_data(struct ledm_session* ps, int maxLength) int size=0, stat=1; char buf_size[2]; int len=0, tmo=50; - + _DBG("bb_get_image_data http_handle=%p cnt=%d pbb=%p\n", pbb->http_handle, ps->cnt, pbb); if(ps->currentResolution >= 1200) tmo *= 5; - + if (ps->cnt == 0) { size = get_size(ps); @@ -1047,6 +1068,7 @@ int bb_end_scan(struct ledm_session* ps, int io_error) pbb->http_handle = 0; } cancel_job(ps); + memset(ps->url, 0, sizeof(ps->url)); ps->job_id = 0; ps->page_id = 0; return 0; diff --git a/scan/sane/common.c b/scan/sane/common.c index cf228f4a6..22fce82ea 100755 --- a/scan/sane/common.c +++ b/scan/sane/common.c @@ -22,6 +22,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Contributing Authors: David Paschal, Don Welch, David Suffield, Naga Samrat Chowdary Narla + Sarbeswar Meher \********************************************************************************************/ @@ -266,5 +267,33 @@ int __attribute__ ((visibility ("hidden"))) StrListAdd( const char ** list, char return 0; } +char* __attribute__ ((visibility ("hidden"))) itoa(int value, char* str, int radix) +{ + static char dig[] = "0123456789""abcdefghijklmnopqrstuvwxyz"; + int n = 0, neg = 0; + unsigned int v; + char* p, *q; + char c; + + if (radix == 10 && value < 0) + { + value = -value; + neg = 1; + } + v = value; + do { + str[n++] = dig[v%radix]; + v /= radix; + } while (v); + if (neg) + str[n++] = '-'; + str[n] = '\0'; + + for (p = str, q = p + (n-1); p < q; ++p, --q) + c = *p, *p = *q, *q = c; + return str; +} + + diff --git a/scan/sane/common.h b/scan/sane/common.h index 3f0044ebd..b42a28749 100644 --- a/scan/sane/common.h +++ b/scan/sane/common.h @@ -21,7 +21,7 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - Contributing Authors: David Paschal, Don Welch, David Suffield + Contributing Authors: David Paschal, Don Welch, David Suffield, Sarbeswar Meher \************************************************************************************/ @@ -69,6 +69,7 @@ #define STR_ADF_MODE_AUTO SANE_I18N("Auto") #define STR_ADF_MODE_FLATBED SANE_I18N("Flatbed") #define STR_ADF_MODE_ADF SANE_I18N("ADF") +#define STR_ADF_MODE_CAMERA SANE_I18N("Camera") #define STR_TITLE_ADVANCED SANE_I18N("Advanced") @@ -183,5 +184,5 @@ int __attribute__ ((visibility ("hidden"))) NumListGetFirst( int * list ); void __attribute__ ((visibility ("hidden"))) StrListClear( const char ** list ); int __attribute__ ((visibility ("hidden"))) StrListIsInList( const char ** list, char * s ); int __attribute__ ((visibility ("hidden"))) StrListAdd( const char ** list, char * s ); - +char* __attribute__ ((visibility ("hidden"))) itoa(int value, char* str, int radix); #endif diff --git a/scan/sane/hpaio.c b/scan/sane/hpaio.c index ee80ef594..945ad1c71 100644 --- a/scan/sane/hpaio.c +++ b/scan/sane/hpaio.c @@ -761,7 +761,6 @@ static SANE_Status SetResolutionListSCL(hpaioScanner_t hpaio) { int supported_res[] = {50, 75, 100, 150, 200, 300, 600, 1200, 2400, 4800, 9600}; int i, len = sizeof(supported_res)/sizeof(int); - SANE_Status retcode; if (hpaio->currentAdfMode == ADF_MODE_ADF || hpaio->currentAdfMode == ADF_MODE_AUTO) { @@ -1673,6 +1672,8 @@ extern SANE_Status sane_hpaio_open(SANE_String_Const devicename, SANE_Handle * p /* Get device attributes and determine what backend to call. */ snprintf(devname, sizeof(devname)-1, "hp:%s", devicename); /* prepend "hp:" */ hpmud_query_model(devname, &ma); + DBG(8, "sane_hpaio_open(%s): %s %d scan_type=%d scansrc=%d\n", devicename, __FILE__, __LINE__, ma.scantype, ma.scansrc); + if ((ma.scantype == HPMUD_SCANTYPE_MARVELL) || (ma.scantype == HPMUD_SCANTYPE_MARVELL2)) return marvell_open(devicename, pHandle); if (ma.scantype == HPMUD_SCANTYPE_SOAP) @@ -1682,8 +1683,6 @@ extern SANE_Status sane_hpaio_open(SANE_String_Const devicename, SANE_Handle * p if (ma.scantype == HPMUD_SCANTYPE_LEDM) return ledm_open(devicename, pHandle); - DBG(8, "sane_hpaio_open(%s): %s %d\n", devicename, __FILE__, __LINE__); - hpaio = hpaioFindScanner(devicename); if( hpaio ) @@ -2108,35 +2107,37 @@ extern SANE_Status sane_hpaio_open(SANE_String_Const devicename, SANE_Handle * p } } - if( !hpaio->scl.adfCapability ) + if(ma.scansrc & HPMUD_SCANSRC_FLATBED) { + hpaio->scl.flatbedCapability = 1; hpaio->supportedAdfModes = ADF_MODE_FLATBED; } - else if( hpaio->scl.compat & SCL_COMPAT_K_SERIES && - hpaio->scl.adfCapability ) - { - hpaio->supportedAdfModes = ADF_MODE_FLATBED | ADF_MODE_ADF; - } - else + if (hpaio->scl.adfCapability) { - int supportedFunctions; - - hpaio->supportedAdfModes = ADF_MODE_AUTO | - ADF_MODE_FLATBED | - ADF_MODE_ADF; - if( hpaio->scl.compat & ( SCL_COMPAT_1170 | - SCL_COMPAT_R_SERIES | - SCL_COMPAT_G_SERIES ) ) - { - hpaio->scl.unloadAfterScan = 1; - } - if( PmlRequestGet( hpaio->deviceid, hpaio->cmd_channelid, hpaio->scl.objSupportedFunctions ) != ERROR && - PmlGetIntegerValue( hpaio->scl.objSupportedFunctions, + if( hpaio->scl.compat & SCL_COMPAT_K_SERIES) + { + hpaio->supportedAdfModes |= ADF_MODE_ADF; + } + else + { + int supportedFunctions; + + hpaio->supportedAdfModes |= ADF_MODE_ADF; + if (hpaio->scl.flatbedCapability) + hpaio->supportedAdfModes |= ADF_MODE_AUTO; + + if( hpaio->scl.compat & ( SCL_COMPAT_1170 | SCL_COMPAT_R_SERIES |SCL_COMPAT_G_SERIES ) ) + { + hpaio->scl.unloadAfterScan = 1; + } + if( PmlRequestGet( hpaio->deviceid, hpaio->cmd_channelid, hpaio->scl.objSupportedFunctions ) != ERROR && + PmlGetIntegerValue( hpaio->scl.objSupportedFunctions, 0, &supportedFunctions ) != ERROR && supportedFunctions & PML_SUPPFUNC_DUPLEX ) - { - hpaio->supportsDuplex = 1; + { + hpaio->supportsDuplex = 1; + } } } } @@ -2426,7 +2427,7 @@ extern void sane_hpaio_close(SANE_Handle handle) return soapht_close(handle); if (strcmp(*((char **)handle), "LEDM") == 0) return ledm_close(handle); - + DBG(8, "sane_hpaio_close(): %s %d\n", __FILE__, __LINE__); hpaioPmlDeallocateObjects(hpaio); @@ -2890,7 +2891,9 @@ extern SANE_Status sane_hpaio_start(SANE_Handle handle) IP_IMAGE_TRAITS traits; IP_XFORM_SPEC xforms[IP_MAX_XFORMS], * pXform = xforms; WORD wResult; - + + DBG(8, "sane_hpaio_start(): %s %d deviceuri=%s\n", __FILE__, __LINE__, hpaio->deviceuri); + if (strcmp(*((char **)handle), "MARVELL") == 0) return marvell_start(handle); if (strcmp(*((char **)handle), "SOAP") == 0) @@ -2902,8 +2905,6 @@ extern SANE_Status sane_hpaio_start(SANE_Handle handle) hpaio->user_cancel = FALSE; - DBG(8, "sane_hpaio_start(): %s %d\n", __FILE__, __LINE__); - hpaio->endOfData = 0; if (hpaio->scannerType==SCANNER_TYPE_PML) @@ -3215,6 +3216,7 @@ abort: if( retcode != SANE_STATUS_GOOD ) { + if (retcode == SANE_STATUS_NO_DOCS) SendScanEvent (hpaio->deviceuri, EVENT_SCAN_ADF_NO_DOCS); sane_hpaio_cancel( handle ); } return retcode; @@ -3402,7 +3404,7 @@ abort: extern void sane_hpaio_cancel( SANE_Handle handle ) { hpaioScanner_t hpaio = ( hpaioScanner_t ) handle; - + DBG(8, "sane_hpaio_cancel(): %s %d\n", __FILE__, __LINE__); if (strcmp(*((char **)handle), "MARVELL") == 0) return marvell_cancel(handle); if (strcmp(*((char **)handle), "SOAP") == 0) @@ -3416,7 +3418,6 @@ extern void sane_hpaio_cancel( SANE_Handle handle ) bug("sane_hpaio_cancel: already cancelled!\n"); } hpaio->user_cancel = TRUE; - DBG(8, "sane_hpaio_cancel(): %s %d\n", __FILE__, __LINE__); if (hpaio->scannerType==SCANNER_TYPE_PML) { diff --git a/scan/sane/hpaio.desc b/scan/sane/hpaio.desc index a0c1ebdad..2d9c22fb9 100644 --- a/scan/sane/hpaio.desc +++ b/scan/sane/hpaio.desc @@ -250,9 +250,6 @@ :model "HP PSC 500 All-in-one Printer" :status :good -:model "HP Officejet 500 All-in-one Printer" -:status :good - :model "HP Photosmart Estn c510 Series" :status :good @@ -379,6 +376,9 @@ :model "HP LaserJet m1120n Multifunction Printer" :status :good +:model "HP LaserJet Professional m1132s Multifunction Printer" +:status :good + :model "HP LaserJet Professional m1132 Multifunction Printer" :status :good @@ -2203,6 +2203,12 @@ :model "HP Photosmart 6510 E-all-in-one" :status :good +:model "HP Officejet 6600 E-all-in-one Printer - h711a" +:status :good + +:model "HP Officejet 6700 E-all-in-one Printer - h711n" +:status :good + :model "HP Officejet 7100 All-in-one Printer" :status :good diff --git a/scan/sane/hpaio.h b/scan/sane/hpaio.h index 2ab1db658..25162242d 100644 --- a/scan/sane/hpaio.h +++ b/scan/sane/hpaio.h @@ -201,7 +201,7 @@ struct hpaioScanner_s int minRes, maxRes; int maxXExtent, maxYExtent; int unloadAfterScan; - int adfCapability; + int flatbedCapability, adfCapability; int minResAdf, maxResAdf; PmlObject_t objSupportedFunctions; diff --git a/scan/sane/http.c b/scan/sane/http.c index 58cc0d2de..8c1578e02 100644 --- a/scan/sane/http.c +++ b/scan/sane/http.c @@ -338,6 +338,7 @@ enum HTTP_RESULT __attribute__ ((visibility ("hidden"))) http_read_header(HTTP_H if (read_line(ps, data, max_size, tmo, &len)) goto bugout; ps->http_status = strtol(data+9, NULL, 10); + *bytes_read = total = len; /* Check for good status, ignore 400 (no job id found for JobCancelRequest) */ if (!((ps->http_status >= 200 && ps->http_status < 300) || ps->http_status == 400)) @@ -472,6 +473,7 @@ enum HTTP_RESULT __attribute__ ((visibility ("hidden"))) http_read(HTTP_HANDLE h strcpy(data, line); data=data+len; ps->footer -= len; + *bytes_read += len; } } else diff --git a/scan/sane/io.h b/scan/sane/io.h index 28e3d8787..a47bc8b0d 100755 --- a/scan/sane/io.h +++ b/scan/sane/io.h @@ -22,7 +22,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Contributing Author: Don Welch, David Suffield, Naga Samrat Chowdary Narla, - + Sarbeswar Meher \************************************************************************************/ #if !defined(_IO_H) @@ -39,8 +39,16 @@ int __attribute__ ((visibility ("hidden"))) ReadChannelEx(int deviceid, int chan #define EVENT_END_SCAN_JOB 2001 #define EVENT_SCANNER_FAIL 2002 #define EVENT_PLUGIN_FAIL 2003 +#define EVENT_SCAN_ADF_LOADED 2004 +#define EVENT_SCAN_TO_DESTINATION_NOTSET = 2005 +#define EVENT_SCAN_WAITING_FOR_PC = 2006 +#define EVENT_SCAN_ADF_JAM 2007 +#define EVENT_SCAN_ADF_DOOR_OPEN 2008 #define EVENT_SCAN_CANCEL 2009 #define EVENT_SIZE_WARNING 2010 +#define EVENT_SCAN_ADF_NO_DOCS 2011 +#define EVENT_SCAN_ADF_MISPICK 2012 +#define EVENT_SCAN_BUSY 2013 #define DBUS_INTERFACE "com.hplip.StatusService" #define DBUS_PATH "/" diff --git a/scan/sane/ledm.c b/scan/sane/ledm.c index 80539e74d..d9a1a7699 100644 --- a/scan/sane/ledm.c +++ b/scan/sane/ledm.c @@ -374,9 +374,8 @@ SANE_Status __attribute__ ((visibility ("hidden"))) ledm_open(SANE_String_Const if (hpmud_open_device(session->uri, ma.mfp_mode, &session->dd) != HPMUD_R_OK) { - free(session); - session = NULL; - return SANE_STATUS_IO_ERROR; + stat = SANE_STATUS_IO_ERROR; + goto bugout; } init_options(session); @@ -384,6 +383,7 @@ SANE_Status __attribute__ ((visibility ("hidden"))) ledm_open(SANE_String_Const if (bb_open(session)) { stat = SANE_STATUS_IO_ERROR; + goto bugout; } /* Set supported Scan Modes as determined by bb_open. */ @@ -414,7 +414,22 @@ SANE_Status __attribute__ ((visibility ("hidden"))) ledm_open(SANE_String_Const stat = SANE_STATUS_GOOD; -return stat; +bugout: + + if (stat != SANE_STATUS_GOOD) + { + if (session) + { + if (session->cd > 0) + hpmud_close_channel(session->dd, session->cd); + if (session->dd > 0) + hpmud_close_device(session->dd); + free(session); + session = NULL; + } + } + + return stat; } const SANE_Option_Descriptor *ledm_get_option_descriptor(SANE_Handle handle, SANE_Int option) @@ -509,6 +524,7 @@ SANE_Status ledm_control_option(SANE_Handle handle, SANE_Int option, SANE_Action i = session->adf_resolutionList[0] + 1; while(i--) session->resolutionList[i] = session->adf_resolutionList[i]; } + ps->currentResolution = session->resolutionList[1]; mset_result |= SANE_INFO_RELOAD_PARAMS | SANE_INFO_RELOAD_OPTIONS; stat = SANE_STATUS_GOOD; break; @@ -762,12 +778,13 @@ SANE_Status ledm_start(SANE_Handle handle) } /* If input is ADF and ADF is empty, return SANE_STATUS_NO_DOCS. */ - if (ps->currentInputSource==IS_ADF) + if (ps->currentInputSource==IS_ADF || ps->currentInputSource ==IS_ADF_DUPLEX) { ret = bb_is_paper_in_adf(ps); /* 0 = no paper in adf, 1 = paper in adf, -1 = error */ if (ret == 0) { stat = SANE_STATUS_NO_DOCS; /* done scanning */ + SendScanEvent (ps->uri, EVENT_SCAN_ADF_NO_DOCS); goto bugout; } else if (ret < 0) @@ -778,11 +795,9 @@ SANE_Status ledm_start(SANE_Handle handle) } /* Start scan and get actual image traits. */ - if (bb_start_scan(ps)) - { - stat = SANE_STATUS_IO_ERROR; + stat = bb_start_scan(ps); + if (stat != SANE_STATUS_GOOD) goto bugout; - } if(ps->user_cancel) { diff --git a/scan/sane/ledmi.h b/scan/sane/ledmi.h index e9cdaf53d..973a974ad 100644 --- a/scan/sane/ledmi.h +++ b/scan/sane/ledmi.h @@ -155,7 +155,7 @@ int bb_open(struct ledm_session*); int bb_close(struct ledm_session*); int bb_get_parameters(struct ledm_session*, SANE_Parameters*, int); int bb_is_paper_in_adf(); /* 0 = no paper in adf, 1 = paper in adf, -1 = error */ -int bb_start_scan(struct ledm_session*); +SANE_Status bb_start_scan(struct ledm_session*); int bb_get_image_data(struct ledm_session*, int); int bb_end_page(struct ledm_session*, int); int bb_end_scan(struct ledm_session* , int); diff --git a/scan/sane/marvell.c b/scan/sane/marvell.c index 52e08636d..395923eab 100644 --- a/scan/sane/marvell.c +++ b/scan/sane/marvell.c @@ -397,10 +397,10 @@ SANE_Status marvell_open(SANE_String_Const device, SANE_Handle *handle) switch (ma.scantype) { case HPMUD_SCANTYPE_MARVELL: - session->version = MARVELL_1; + session->version = MARVELL_1; break; case HPMUD_SCANTYPE_MARVELL2: - session->version = MARVELL_2; + session->version = MARVELL_2; break; default: session->version = MARVELL_1; @@ -453,41 +453,35 @@ SANE_Status marvell_open(SANE_String_Const device, SANE_Handle *handle) i=0; /* Some of the marvell devices supports both flatbed and ADF, No command to get the src types supported */ /* Getting from the model file */ - if ( session->scansrc == HPMUD_SCANSRC_BOTH) - { - session->input_source_list[i] = STR_ADF_MODE_ADF; - session->input_source_map[i++] = IS_ADF; - session->input_source_list[i] = STR_ADF_MODE_FLATBED; - session->input_source_map[i++] = IS_PLATEN; - DBG8("scan src HPMUD_SCANSRC_BOTH \n"); - } - else if ( session->scansrc == HPMUD_SCANSRC_ADF) + if ( session->scansrc & HPMUD_SCANSRC_ADF) { session->input_source_list[i] = STR_ADF_MODE_ADF; session->input_source_map[i++] = IS_ADF; DBG8("scan src HPMUD_SCANSRC_ADF \n"); } - else if ( session->scansrc == HPMUD_SCANSRC_FLATBED) + if ( session->scansrc & HPMUD_SCANSRC_FLATBED) { session->input_source_list[i] = STR_ADF_MODE_FLATBED; - session->input_source_map[i++] = IS_PLATEN; - DBG8("scan src HPMUD_SCANSRC_FLATBED \n"); + session->input_source_map[i++] = IS_PLATEN; + DBG8("scan src HPMUD_SCANSRC_FLATBED \n"); } /* Values if un specified in the, value is 0, get ADF state from the printer */ - else if (session->bb_is_paper_in_adf(session) == 2) - { - session->input_source_list[i] = STR_ADF_MODE_FLATBED; - session->input_source_map[i++] = IS_PLATEN; - DBG8("scan src b_is_paper_in_adf value 2 \n"); - } - else - { - session->input_source_list[i] = STR_ADF_MODE_ADF; - session->input_source_map[i++] = IS_ADF; - DBG8("scan src b_is_paper_in_adf value not 2 \n"); - } + if (session->scansrc == HPMUD_SCANSRC_NA) + { + if (session->bb_is_paper_in_adf(session) == 2) + { + session->input_source_list[i] = STR_ADF_MODE_FLATBED; + session->input_source_map[i++] = IS_PLATEN; + DBG8("scan src b_is_paper_in_adf value 2 \n"); + } + else + { + session->input_source_list[i] = STR_ADF_MODE_ADF; + session->input_source_map[i++] = IS_ADF; + DBG8("scan src b_is_paper_in_adf value not 2 \n"); + } + } - marvell_control_option(session, MARVELL_OPTION_INPUT_SOURCE, SANE_ACTION_SET_AUTO, NULL, NULL); /* set default option */ /* Set supported resolutions. */ @@ -848,6 +842,7 @@ SANE_Status marvell_start(SANE_Handle handle) if (ret == 0) { stat = SANE_STATUS_NO_DOCS; /* done scanning */ + SendScanEvent(ps->uri, EVENT_SCAN_ADF_NO_DOCS); goto bugout; } else if (ret < 0) @@ -863,6 +858,7 @@ SANE_Status marvell_start(SANE_Handle handle) goto bugout; } + SendScanEvent(ps->uri, EVENT_START_SCAN_JOB); memset(xforms, 0, sizeof(xforms)); /* Setup image-processing pipeline for xform. */ @@ -956,7 +952,10 @@ SANE_Status marvell_read(SANE_Handle handle, SANE_Byte *data, SANE_Int maxLength } if (ret & IP_DONE) + { stat = SANE_STATUS_EOF; + SendScanEvent(ps->uri, EVENT_END_SCAN_JOB); + } else stat = SANE_STATUS_GOOD; @@ -973,6 +972,9 @@ bugout: if (ps->is_user_cancel) { //Don't do anything. sane_hpaio_cancel() will be invoked automatically + SendScanEvent(ps->uri, EVENT_SCAN_CANCEL); + return SANE_STATUS_CANCELLED; + } else { diff --git a/scan/sane/soap.c b/scan/sane/soap.c index 28b83cc24..f45576397 100644 --- a/scan/sane/soap.c +++ b/scan/sane/soap.c @@ -840,7 +840,7 @@ SANE_Status soap_start(SANE_Handle handle) int stat, ret; DBG8("sane_hpaio_start()\n"); - + ps->user_cancel = 0; if (set_extents(ps)) { BUG("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n", @@ -855,7 +855,7 @@ SANE_Status soap_start(SANE_Handle handle) stat = SANE_STATUS_IO_ERROR; goto bugout; } - + SendScanEvent(ps->uri, EVENT_START_SCAN_JOB); memset(xforms, 0, sizeof(xforms)); /* Setup image-processing pipeline for xform. */ @@ -977,7 +977,13 @@ SANE_Status soap_read(SANE_Handle handle, SANE_Byte *data, SANE_Int maxLength, S int ret, stat=SANE_STATUS_IO_ERROR; DBG8("sane_hpaio_read() handle=%p data=%p maxLength=%d\n", (void *)handle, data, maxLength); - + if(ps->user_cancel) + { + DBG8("soap_read() EVENT_SCAN_CANCEL****uri=%s\n", ps->uri); + SendScanEvent(ps->uri, EVENT_SCAN_CANCEL); + return SANE_STATUS_CANCELLED; + } + ret = get_ip_data(ps, data, maxLength, length); if(ret & (IP_INPUT_ERROR | IP_FATAL_ERROR)) @@ -987,7 +993,10 @@ SANE_Status soap_read(SANE_Handle handle, SANE_Byte *data, SANE_Int maxLength, S } if (ret & IP_DONE) + { stat = SANE_STATUS_EOF; + SendScanEvent (ps->uri, EVENT_END_SCAN_JOB); + } else stat = SANE_STATUS_GOOD; @@ -1018,7 +1027,7 @@ void soap_cancel(SANE_Handle handle) * Sane_cancel is always called at the end of the scan job. Note that on a multiple page scan job * sane_cancel is called only once. */ - + ps->user_cancel = 1; if (ps->ip_handle) { ipClose(ps->ip_handle); diff --git a/scan/sane/soapht.c b/scan/sane/soapht.c index 1feea8076..deb81bcc6 100644 --- a/scan/sane/soapht.c +++ b/scan/sane/soapht.c @@ -912,7 +912,11 @@ SANE_Status soapht_start(SANE_Handle handle) int stat, ret; DBG8("sane_hpaio_start()\n"); - + + ps -> user_cancel = 0; + ps -> cnt = 0; + ps -> index = 0; + if (set_extents(ps)) { BUG("invalid extents: tlx=%d brx=%d tly=%d bry=%d minwidth=%d minheight%d maxwidth=%d maxheight=%d\n", @@ -928,6 +932,7 @@ SANE_Status soapht_start(SANE_Handle handle) if (ret == 0) { stat = SANE_STATUS_NO_DOCS; /* done scanning */ + SendScanEvent (ps->uri, EVENT_SCAN_ADF_NO_DOCS); goto bugout; } else if (ret < 0) @@ -943,7 +948,7 @@ SANE_Status soapht_start(SANE_Handle handle) stat = SANE_STATUS_IO_ERROR; goto bugout; } - + SendScanEvent(ps->uri, EVENT_START_SCAN_JOB); memset(xforms, 0, sizeof(xforms)); /* Setup image-processing pipeline for xform. */ @@ -1081,7 +1086,13 @@ SANE_Status soapht_read(SANE_Handle handle, SANE_Byte *data, SANE_Int maxLength, int ret, stat=SANE_STATUS_IO_ERROR; DBG8("sane_hpaio_read() handle=%p data=%p maxLength=%d\n", (void *)handle, data, maxLength); - + if(ps->user_cancel) + { + DBG8("soapht_read() EVENT_SCAN_CANCEL****uri=%s\n", ps->uri); + SendScanEvent(ps->uri, EVENT_SCAN_CANCEL); + return SANE_STATUS_CANCELLED; + } + ret = get_ip_data(ps, data, maxLength, length); if(ret & (IP_INPUT_ERROR | IP_FATAL_ERROR)) @@ -1091,7 +1102,10 @@ SANE_Status soapht_read(SANE_Handle handle, SANE_Byte *data, SANE_Int maxLength, } if (ret & IP_DONE) + { stat = SANE_STATUS_EOF; + SendScanEvent(ps->uri, EVENT_END_SCAN_JOB); + } else stat = SANE_STATUS_GOOD; @@ -1122,7 +1136,7 @@ void soapht_cancel(SANE_Handle handle) * Sane_cancel is always called at the end of the scan job. Note that on a multiple page scan job * sane_cancel is called only once. */ - + ps -> user_cancel = 1; if (ps->ip_handle) { ipClose(ps->ip_handle); diff --git a/scan/sane/soaphti.h b/scan/sane/soaphti.h index 7ecde50a5..e468c7174 100644 --- a/scan/sane/soaphti.h +++ b/scan/sane/soaphti.h @@ -144,6 +144,7 @@ struct soap_session int index; /* dime buffer index */ int cnt; /* dime buffer count */ unsigned char buf[16384]; /* dime buffer */ + int user_cancel; void *hpmud_handle; /* returned by dlopen */ void *math_handle; /* returned by dlopen */ diff --git a/scan/sane/soapi.h b/scan/sane/soapi.h index 0a738b161..a6e058521 100644 --- a/scan/sane/soapi.h +++ b/scan/sane/soapi.h @@ -87,7 +87,7 @@ struct soap_session char uri[HPMUD_LINE_SIZE]; char model[HPMUD_LINE_SIZE]; int scan_type; - + int user_cancel; IP_IMAGE_TRAITS image_traits; /* specified by image header */ SANE_Option_Descriptor option[SOAP_OPTION_MAX]; @@ -134,7 +134,7 @@ mod = module.Module(__mod__, __title__, __version__, __doc__, USAGE, run_as_root_ok=True) opts, device_uri, printer_name, mode, ui_toolkit, loc = \ - mod.parseStdOpts('axp:P:f:t:b:d:r', + mod.parseStdOpts('axp:P:f:t:b:d:rq', ['ttl=', 'filter=', 'search=', 'find=', 'method=', 'time-out=', 'timeout=', 'printer=', 'fax=', 'type=', 'port=', @@ -152,6 +152,7 @@ auto = False testpage_in_auto_mode = True jd_port = 1 remove = False +ignore_plugin_check = False for o, a in opts: if o == '-x': @@ -199,6 +200,8 @@ for o, a in opts: elif o in ('-r', '--rm', '--remove'): remove = True + elif o in ('-q'): + ignore_plugin_check = True try: @@ -373,7 +376,7 @@ else: # INTERACTIVE_MODE plugin = mq.get('plugin', PLUGIN_NONE) plugin_installed = utils.to_bool(sys_state.get('plugin', 'installed', '0')) - if plugin > PLUGIN_NONE and not plugin_installed: + if ignore_plugin_check is False and plugin > PLUGIN_NONE and not plugin_installed: tui.header("PLUG-IN INSTALLATION") hp_plugin = utils.which('hp-plugin') @@ -417,13 +420,14 @@ else: # INTERACTIVE_MODE printer_default_model = default_model + installed_printer_names = device.getSupportedCUPSPrinterNames(['hp']) # Check for duplicate names - if device_uri in installed_print_devices and \ - printer_default_model in installed_print_devices[device_uri]: + if (device_uri in installed_print_devices and printer_default_model in installed_print_devices[device_uri]) \ + or (printer_default_model in installed_printer_names): i = 2 while True: t = printer_default_model + "_%d" % i - if t not in installed_print_devices[device_uri]: + if (t not in installed_printer_names) and(device_uri not in installed_print_devices or t not in installed_print_devices[device_uri]): printer_default_model += "_%d" % i break i += 1 @@ -629,13 +633,14 @@ else: # INTERACTIVE_MODE fax_default_model = default_model + '_fax' + installed_fax_names = device.getSupportedCUPSPrinterNames(['hpfax']) # Check for duplicate names - if fax_uri in installed_fax_devices and \ - fax_default_model in installed_fax_devices[fax_uri]: + if (fax_uri in installed_fax_devices and fax_default_model in installed_fax_devices[fax_uri]) \ + or (fax_default_model in installed_fax_names): i = 2 while True: t = fax_default_model + "_%d" % i - if t not in installed_fax_devices[fax_uri]: + if (t in installed_fax_names) and (fax_uri not in installed_fax_devices or t not in installed_fax_devices[fax_uri]): fax_default_model += "_%d" % i break i += 1 diff --git a/ui/devmgr4.py b/ui/devmgr4.py index e1b132e6f..8a33558dd 100644 --- a/ui/devmgr4.py +++ b/ui/devmgr4.py @@ -37,6 +37,7 @@ from base import device, utils, pml, maint, pkit from prnt import cups from base.codes import * from ui_utils import load_pixmap +from installer.core_install import * # Qt from qt import * @@ -407,8 +408,18 @@ class DevMgr4(DevMgr4_base): initial_device_uri=None, disable_dbus=False, parent=None, name=None, fl = 0): - DevMgr4_base.__init__(self, parent, name, fl) + # Distro insformation + core = CoreInstall(MODE_CHECK) +# core.init() + self.Is_autoInstaller_distro = core.is_auto_installer_support() + self.Latest_ver= user_conf.get('upgrade', 'latest_available_version') + installed_version=sys_conf.get('hplip','version') + if utils.Is_HPLIP_older_version(installed_version, self.Latest_ver): + DevMgr4_base.__init__(self, parent, name, fl,self.Latest_ver,self.Is_autoInstaller_distro) + else: + self.Latest_ver = "" + DevMgr4_base.__init__(self, parent, name, fl,self.Latest_ver,self.Is_autoInstaller_distro) log.debug("Initializing toolbox UI (Qt3)...") log.debug("HPLIP Version: %s" % prop.installed_version) @@ -599,13 +610,22 @@ class DevMgr4(DevMgr4_base): 12 : self.__tr("twelve") } - - self.TabIndex = { self.FunctionsTab: self.UpdateFuncsTab, + if self.Latest_ver is "": + self.TabIndex = { self.FunctionsTab: self.UpdateFuncsTab, self.StatusTab: self.UpdateStatusTab, self.SuppliesTab: self.UpdateSuppliesTab, self.PrintSettingsTab: self.UpdatePrintSettingsTab, self.PrintJobsTab: self.UpdatePrintControlTab, } + else: + self.TabIndex = { self.FunctionsTab: self.UpdateFuncsTab, + self.StatusTab: self.UpdateStatusTab, + self.SuppliesTab: self.UpdateSuppliesTab, + self.PrintSettingsTab: self.UpdatePrintSettingsTab, + self.PrintJobsTab: self.UpdatePrintControlTab, + self.UpgradeTab:self.UpdateUpgradeTab, + } + def InitialUpdate(self): @@ -1702,6 +1722,8 @@ class DevMgr4(DevMgr4_base): elif align_type == ALIGN_TYPE_LEDM_MANUAL: maint.AlignType16(d, self.LoadPaperUI, self.AlignmentNumberUI) + elif align_type == ALIGN_TYPE_LEDM_FF_CC_0: + maint.AlignType17(d, self.LoadPaperUI, self.Align13UI) else: self.CheckDeviceUI() @@ -2678,8 +2700,31 @@ class DevMgr4(DevMgr4_base): self.UpdatePrintControlTab() + def UpdateUpgradeTab(self): + log.debug("Upgrade Tab is pressed") + self.InstallPushButton_lock = False + + def InstallPushButton_clicked(self): + if self.InstallPushButton_lock is True: + return + if self.Is_autoInstaller_distro: + self.InstallPushButton.setEnabled(False) + terminal_cmd = utils.get_terminal() + if terminal_cmd is not None and utils.which("hp-upgrade"): + cmd = terminal_cmd + " 'hp-upgrade'" + log.debug("cmd = %s " %cmd) + os.system(cmd) + else: + log.error("Failed to run hp-upgrade command from terminal =%s "%terminal_cmd) + self.InstallPushButton.setEnabled(True) + else: + self.InstallPushButton_lock = True + utils.openURL("http://hplipopensource.com/hplip-web/install/manual/index.html") + QTimer.singleShot(1000, self.InstallPushButton_unlock) + def InstallPushButton_unlock(self): + self.InstallPushButton_lock = False # *********************************************************************************** # diff --git a/ui/devmgr4_base.py b/ui/devmgr4_base.py index 30bf95bd7..49b7f8477 100644 --- a/ui/devmgr4_base.py +++ b/ui/devmgr4_base.py @@ -1,9 +1,9 @@ # -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'devmgr4_base.ui' +# Form implementation generated from reading ui file 'ui/devmgr4_base.ui' # -# Created: Mon Apr 28 10:56:51 2008 -# by: The PyQt User Interface Compiler (pyuic) 3.17.3 +# Created: Fri Feb 3 12:00:32 2012 +# by: The PyQt User Interface Compiler (pyuic) 3.18.1 # # WARNING! All changes made in this file will be lost! @@ -12,13 +12,15 @@ from qt import * class DevMgr4_base(QMainWindow): - def __init__(self,parent = None,name = None,fl = 0): + def __init__(self,parent = None,name = None,fl = 0,latest_available_version="",Is_autoInstaller_distro=False): QMainWindow.__init__(self,parent,name,fl) self.statusBar() if not name: self.setName("DevMgr4_base") + self.latest_available_version= latest_available_version + self.Is_autoInstaller_distro= Is_autoInstaller_distro self.setCentralWidget(QWidget(self,"qt_central_widget")) DevMgr4_baseLayout = QGridLayout(self.centralWidget(),1,1,11,6,"DevMgr4_baseLayout") @@ -178,6 +180,28 @@ class DevMgr4_base(QMainWindow): PrintJobsTabLayout.addWidget(self.printerTextLabel,0,1) self.Tabs.insertTab(self.PrintJobsTab,QString.fromLatin1("")) + if self.latest_available_version is not "": + self.UpgradeTab = QWidget(self.Tabs,"UpgradeTab") + self.UpgradeLabel = QLabel(self.UpgradeTab,"UpgradeLabel") + msg="Latest 'HPLIP-%s' version available for Installation"%self.latest_available_version + self.UpgradeLabel.setText(self.__tr(msg)) + self.UpgradeLabel.setGeometry(QRect(17,43,330,20)) + if self.Is_autoInstaller_distro: + self.InstallPushButton = QPushButton(self.UpgradeTab,"InstallPushButton") + self.InstallPushButton.setText(self.__tr("Install Now")) + self.InstallPushButton.setGeometry(QRect(390,40,111,30)) + else: + self.ManualInfoLabel = QLabel(self.UpgradeTab,"ManualInfoLabel") + msg="Please install manually as mentioned in " + self.ManualInfoLabel.setText(self.__tr(msg)) + self.ManualInfoLabel.setGeometry(QRect(17,70,300,30)) + + self.InstallPushButton = QPushButton(self.UpgradeTab,"InstallPushButton") + self.InstallPushButton.setText(self.__tr("HPLIP website")) + self.InstallPushButton.setGeometry(QRect(260,70,100,25)) + + self.Tabs.insertTab(self.UpgradeTab,QString.fromLatin1("")) + DevMgr4_baseLayout.addWidget(self.splitter2,0,0) @@ -266,7 +290,8 @@ class DevMgr4_base(QMainWindow): self.connect(self.infoToolButton,SIGNAL("clicked()"),self.infoToolButton_clicked) self.connect(self.cancelToolButton,SIGNAL("clicked()"),self.cancelToolButton_clicked) self.connect(self.jobList,SIGNAL("contextMenuRequested(QListViewItem*,const QPoint&,int)"),self.jobList_contextMenuRequested) - + if self.latest_available_version is not "": + self.connect(self.InstallPushButton,SIGNAL("clicked()"),self.InstallPushButton_clicked) def languageChange(self): self.setCaption(self.__tr("HP Device Manager")) @@ -299,6 +324,8 @@ class DevMgr4_base(QMainWindow): self.stopstartPushButton.setText(self.__tr("Stop Printer")) self.printerTextLabel.setText(self.__tr("Printer Name:")) self.Tabs.changeTab(self.PrintJobsTab,self.__tr("Print Control")) + if self.latest_available_version is not "": + self.Tabs.changeTab(self.UpgradeTab,self.__tr("Upgrade")) self.helpContentsAction.setText(self.__tr("Contents")) self.helpContentsAction.setMenuText(self.__tr("&Contents...")) self.helpContentsAction.setToolTip(self.__tr("Help Contents (F1)")) @@ -539,6 +566,9 @@ class DevMgr4_base(QMainWindow): def cancelToolButton_clicked(self): print "DevMgr4_base.cancelToolButton_clicked(): Not implemented yet" + def InstallPushButton_clicked(self): + print "DevMgr4_base.InstallPushButton_clicked(): Not implemented yet" + def jobList_contextMenuRequested(self,a0,a1,a2): print "DevMgr4_base.jobList_contextMenuRequested(QListViewItem*,const QPoint&,int): Not implemented yet" diff --git a/ui/devmgr4_base.ui b/ui/devmgr4_base.ui index b2864f29d..31c58b734 100644 --- a/ui/devmgr4_base.ui +++ b/ui/devmgr4_base.ui @@ -616,6 +616,62 @@ </widget> </grid> </widget> + <widget class="QWidget"> + <property name="name"> + <cstring>TabPage</cstring> + </property> + <attribute name="title"> + <string>Upgrade</string> + </attribute> + <widget class="QPushButton"> + <property name="name"> + <cstring>pushButton4</cstring> + </property> + <property name="geometry"> + <rect> + <x>390</x> + <y>40</y> + <width>111</width> + <height>30</height> + </rect> + </property> + <property name="text"> + <string>pushButton4</string> + </property> + </widget> + <widget class="QLabel"> + <property name="name"> + <cstring>textLabel1</cstring> + </property> + <property name="geometry"> + <rect> + <x>17</x> + <y>43</y> + <width>330</width> + <height>20</height> + </rect> + </property> + <property name="text"> + <string>textLabel1</string> + </property> + </widget> + <widget class="QLabel"> + <property name="name"> + <cstring>textLabel2</cstring> + </property> + <property name="geometry"> + <rect> + <x>11</x> + <y>91</y> + <width>480</width> + <height>70</height> + </rect> + </property> + <property name="text"> + <string>textLabel2</string> + </property> + </widget> + </widget> </widget> </widget> </grid> diff --git a/ui/scrollcopy.py b/ui/scrollcopy.py index 194dbcc49..a6afaf77a 100644 --- a/ui/scrollcopy.py +++ b/ui/scrollcopy.py @@ -66,7 +66,7 @@ class ScrollCopyView(ScrollView): if self.quality is None: result_code, self.quality = self.dev.getPML(pml.OID_COPIER_QUALITY) - if self.scan_style == SCAN_STYLE_FLATBED and self.fit_to_page is None: + if self.scan_src == SCAN_SRC_FLATBED and self.fit_to_page is None: result_code, self.fit_to_page = self.dev.getPML(pml.OID_COPIER_FIT_TO_PAGE) if result_code != pml.ERROR_OK: @@ -76,7 +76,7 @@ class ScrollCopyView(ScrollView): else: self.fit_to_page = pml.COPIER_FIT_TO_PAGE_DISABLED - if self.scan_style != SCAN_STYLE_FLATBED: + if self.scan_src != SCAN_SRC_FLATBED: self.fitToPageCheckBox.setEnabled(False) result_code, self.max_reduction = self.dev.getPML(pml.OID_COPIER_REDUCTION_MAXIMUM) @@ -161,7 +161,7 @@ class ScrollCopyView(ScrollView): s = 'Disabled' # 1 log.debug("Default Fit to page: %s (%s)" % (self.fit_to_page, s)) - log.debug("Scan style (models.dat: scan-style): %d" % self.scan_style) + log.debug("Scan src (models.dat: scan-src): %d" % self.scan_src) finally: self.dev.closePML() @@ -200,10 +200,10 @@ class ScrollCopyView(ScrollView): self.dev = copier.PMLCopyDevice(device_uri=self.cur_device.device_uri, printer_name=self.cur_printer) - self.scan_style = self.dev.mq.get('scan-style', SCAN_STYLE_FLATBED) + self.scan_src = self.dev.mq.get('scan-src', SCAN_SRC_FLATBED) self.copy_type = self.dev.mq.get('copy-type', COPY_TYPE_DEVICE) - if self.scan_style == SCAN_STYLE_SCROLLFED: + if self.scan_src == SCAN_SRC_SCROLLFED: self.fitToPageCheckBox.setEnabled(False) self.fit_to_page = pml.COPIER_FIT_TO_PAGE_DISABLED @@ -524,7 +524,7 @@ class ScrollCopyView(ScrollView): s = 'Disabled' # 1 log.debug("Fit to page: %s (%s)" % (self.fit_to_page, s)) - log.debug("Scan style: %d" % self.scan_style) + log.debug("Scan src: %d" % self.scan_src) # Open the dialog box. # @@ -536,7 +536,7 @@ class ScrollCopyView(ScrollView): self.copy_timer.start(1000) # 1 sec UI updates self.dev.copy(self.num_copies, self.contrast, self.reduction, - self.quality, self.fit_to_page, self.scan_style, + self.quality, self.fit_to_page, self.scan_src, self.update_queue, self.event_queue) finally: diff --git a/ui/setupform.py b/ui/setupform.py index a3f00853d..a2e56b599 100644 --- a/ui/setupform.py +++ b/ui/setupform.py @@ -237,12 +237,12 @@ class SetupForm(SetupForm_base): core.set_plugin_version() plugin = self.mq.get('plugin', PLUGIN_NONE) plugin_reason = self.mq.get('plugin-reason', PLUGIN_REASON_NONE) - if plugin > PLUGIN_NONE and not core.check_for_plugin(): + if plugin > PLUGIN_NONE and core.check_for_plugin() != PLUGIN_INSTALLED: ok, sudo_ok = pkit.run_plugin_command(plugin == PLUGIN_REQUIRED, plugin_reason) if not sudo_ok: self.FailureUI(self.__tr("<b>Unable to find an appropriate su/sudo utility to run hp-plugin.</b><p>Install kdesu, gnomesu, or gksu.</p>")) return - if not ok or not core.check_for_plugin(): + if not ok or core.check_for_plugin() != PLUGIN_INSTALLED: if plugin == PLUGIN_REQUIRED: self.FailureUI(self.__tr("<b>The printer you are trying to setup requires a binary driver plug-in and it failed to install.</b><p>Please check your internet connection and try again.</p><p>Visit <u>http://hplipopensource.com</u> for more information.</p>")) return @@ -606,13 +606,14 @@ class SetupForm(SetupForm_base): printer_name = default_model + installed_printer_names = device.getSupportedCUPSPrinterNames(['hp']) # Check for duplicate names - if self.device_uri in self.installed_print_devices and \ - printer_name in self.installed_print_devices[self.device_uri]: + if (self.device_uri in self.installed_print_devices and printer_name in self.installed_print_devices[self.device_uri]) \ + or (printer_name in installed_printer_names): i = 2 while True: t = printer_name + "_%d" % i - if t not in self.installed_print_devices[self.device_uri]: + if (t not in installed_printer_names) and (self.device_uri not in self.installed_print_devices or t not in self.installed_print_devices[self.device_uri]): printer_name += "_%d" % i break i += 1 @@ -713,15 +714,16 @@ class SetupForm(SetupForm_base): default_model = utils.xstrip(model.replace('series', '').replace('Series', ''), '_') fax_name = default_model + "_fax" + installed_fax_names = device.getSupportedCUPSPrinterNames(['hpfax']) # Check for duplicate names - if self.fax_uri in self.installed_fax_devices and \ - fax_name in self.installed_fax_devices[self.fax_uri]: + if (self.fax_uri in self.installed_fax_devices and fax_name in self.installed_fax_devices[self.fax_uri]) \ + or (fax_name in installed_fax_names): #if fax_name in self.installed_queues or fax_name == self.printer_name: i = 2 while True: t = fax_name + "_%d" % i - if t not in self.installed_fax_devices[self.fax_uri]: + if (t not in installed_fax_names) and (self.fax_uri not in self.installed_fax_devices or t not in self.installed_fax_devices[self.fax_uri]): fax_name += "_%d" % i break i += 1 diff --git a/ui/systemtray.py b/ui/systemtray.py index cde1b869b..814544353 100644 --- a/ui/systemtray.py +++ b/ui/systemtray.py @@ -70,6 +70,7 @@ TrayIcon_Critical = 1 TrayIcon_Information = 2 theBalloonTip = None +UPGRADE_CHECK_DELAY=24*60*60*1000 #1 day class BalloonTip(QDialog): @@ -392,6 +393,10 @@ class SystemTrayApp(QApplication): self.read_pipe = read_pipe self.fmt = "80s80sI32sI80sf" self.fmt_size = struct.calcsize(self.fmt) + + self.user_settings = utils.UserSettings() + self.user_settings.load() + self.user_settings.debug() self.tray_icon = SystrayIcon(load_pixmap("hp_logo", "32x32", (22, 22))) self.menu = QPopupMenu() @@ -423,6 +428,11 @@ class SystemTrayApp(QApplication): self.icon_info = load_pixmap('info', '16x16') self.icon_warn = load_pixmap('warning', '16x16') self.icon_error = load_pixmap('error', '16x16') + + self.handle_hplip_updation() + self.timer = QTimer() + self.timer.connect(self.timer,SIGNAL("timeout()"),self.handle_hplip_updation) + self.timer.start(UPGRADE_CHECK_DELAY) self.ERROR_STATE_TO_ICON = { ERROR_STATE_CLEAR: self.icon_info, @@ -519,6 +529,34 @@ class SystemTrayApp(QApplication): else: break + def handle_hplip_updation(self): + log.debug("handle_hplip_updation upgrade_notify =%d"%(self.user_settings.upgrade_notify)) + path = utils.which('hp-upgrade') + if self.user_settings.upgrade_notify is False: + log.debug("upgrade notification is disabled in systray ") + if path: + path = os.path.join(path, 'hp-upgrade') + log.debug("Running hp-upgrade: %s " % (path)) + # this just updates the available version in conf file. But won't notify + os.spawnlp(os.P_NOWAIT, path, 'hp-upgrade', '--check') + return + + + current_time = time.time() + + if int(current_time) > self.user_settings.upgrade_pending_update_time: + path = utils.which('hp-upgrade') + if path: + path = os.path.join(path, 'hp-upgrade') + log.debug("Running hp-upgrade: %s " % (path)) + os.spawnlp(os.P_NOWAIT, path, 'hp-upgrade', '--notify') + + else: + log.error("Unable to find hp-upgrade --notify on PATH.") + else: + log.debug("upgrade schedule time is not yet completed. schedule time =%d current time =%d " %(self.user_settings.upgrade_pending_update_time, current_time)) + + def __tr(self,s,c = None): return qApp.translate("SystemTrayApp",s,c) diff --git a/ui/upgradeform.py b/ui/upgradeform.py new file mode 100644 index 000000000..2b9814fb9 --- /dev/null +++ b/ui/upgradeform.py @@ -0,0 +1,136 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# (c) Copyright 2001-2012 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Don Welch, Goutam Korra, Naga Samrat Chowdary Narla, + +# Std Lib +import sys +import re +import os.path, os +import time + +# Local +from base.g import * +from base import device, utils, models +from ui_utils import load_pixmap + +# Qt +from qt import * +from upgradeform_base import UpgradeForm_base + +MANUAL_INSTALL_LINK = "http://hplipopensource.com/hplip-web/install/manual/index.html" + +class UpgradeForm(UpgradeForm_base): + def __init__(self, parent=None, name="",modal=0, fl=0,distro_type= 1,msg=""): + UpgradeForm_base.__init__(self, parent, name, modal, fl,distro_type, msg) + + self.msg = msg + self.distro_type = distro_type + self.setIcon(load_pixmap('hp_logo', '128x128')) + self.initUi() + + def initUi(self): + self.connect(self.NextButton,SIGNAL('clicked()'),self.NextButton_clicked) + self.connect(self.CancelButton, SIGNAL("clicked()"), self.CancelButton_clicked) + +# self.connect(self.installRadioBtton, SIGNAL("toggled(bool)"), self.installRadioBtton_toggled) +# self.connect(self.remindRadioBtton, SIGNAL("toggled(bool)"), self.remindRadioBtton_toggled) +# self.connect(self.dontRemindRadioBtton, SIGNAL("toggled(bool)"), self.dontRemindRadioBtton_toggled) + + + def installRadioBtton_toggled(self, radio_enabled): + log.info("+++++++ installRadioBtton_toggled = %d" %radio_enabled) + if radio_enabled is True: + self.installRadioBtton.setChecked(True) + else: + self.installRadioBtton.setChecked(False) + + + def remindRadioBtton_toggled(self, radio_enabled): + log.info("+++++++ remindRadioBtton_toggled = %d" %radio_enabled) + if radio_enabled is True: + self.remindRadioBtton.setChecked(True) + self.daysSpinBox.setEnabled(True) + else: + self.remindRadioBtton.setChecked(False) + self.daysSpinBox.setEnabled(False) + + + def dontRemindRadioBtton_toggled(self, radio_enabled): + log.info("+++++++ dontRemindRadioBtton_toggled = %d" %radio_enabled) + if radio_enabled is True: + self.dontRemindRadioBtton.setChecked(True) + else: + self.dontRemindRadioBtton.setChecked(False) + + + def NextButton_clicked (self): + if self.dontRemindRadioBtton.isChecked(): + log.debug("HPLIP Upgrade, selected Don't remind again radiobutton") + user_conf.set('upgrade', 'notify_upgrade', 'false') + msg= "Check for HPLIP updates is disabled. To Upgrade again, check it in 'HP-toolbox' " + self.SuccessUI( self.__tr(msg)) + elif self.remindRadioBtton.isChecked(): + schedule_days = str(self.daysSpinBox.value()) + log.debug("HPLIP Upgrade, selected remind later radiobutton days= %d" %(int(schedule_days))) + next_time = time.time() + (int(schedule_days) *24 * 60 *60) + user_conf.set('upgrade', 'pending_upgrade_time', str(int(next_time))) + else: + log.debug("HPLIP Upgrade, selected Install radiobutton distro_type=%d" %self.distro_type) + self.NextButton.setEnabled(False) + if self.distro_type != 1: # not tier 1 distro + utils.openURL(MANUAL_INSTALL_LINK) + else: + terminal_cmd = utils.get_terminal() + if terminal_cmd is not None and utils.which("hp-upgrade"): + cmd = terminal_cmd + " 'hp-upgrade '" + log.debug("cmd = %s " %cmd) + os.system(cmd) + self.result = True + else: + log.error("Failed to run hp-upgrade command from terminal =%s "%terminal_cmd) + self.FailureUI( self.__tr("Failed to run hp-upgrade")) + + self.close() + + + def CancelButton_clicked(self): + log.debug("User exit") + self.close() + + + def FailureUI(self, error_text): + QMessageBox.critical(self, + self.caption(), + error_text, + QMessageBox.Ok, + QMessageBox.NoButton, + QMessageBox.NoButton) + + def SuccessUI(self, text): + QMessageBox.information(self, + self.caption(), + text, + QMessageBox.Ok, + QMessageBox.NoButton, + QMessageBox.NoButton) + + + def __tr(self,s,c = None): + return qApp.translate("UpgradeDialog",s,c) diff --git a/ui/upgradeform_base.py b/ui/upgradeform_base.py new file mode 100644 index 000000000..803ba7bd0 --- /dev/null +++ b/ui/upgradeform_base.py @@ -0,0 +1,86 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'ui/upgradeform_base.ui' +# +# Created: Thu Feb 9 20:00:42 2012 +# by: The PyQt User Interface Compiler (pyuic) 3.18.1 +# +# WARNING! All changes made in this file will be lost! + + +from qt import * + + +class UpgradeForm_base(QDialog): + def __init__(self,parent = None,name = "",modal = 0,fl = 0,distro_type =1 , msg="" ): + QDialog.__init__(self,parent,name,modal,fl) + + if name == "": + self.setName("HPLIP_Upgrade") + self.msg=msg + self.distro_type = distro_type + + self.textLabel1 = QLabel(self,"textLabel1") + self.textLabel1.setGeometry(QRect(10,10,310,50)) + + + self.buttonGroup1 = QButtonGroup(self,"buttonGroup1") + self.buttonGroup1.setGeometry(QRect(10,60,300,110)) + + self.installRadioBtton = QRadioButton(self.buttonGroup1,"installRadioBtton") + self.installRadioBtton.setGeometry(QRect(10,20,250,20)) + self.installRadioBtton.setChecked(True) + + + self.remindRadioBtton = QRadioButton(self.buttonGroup1,"remindRadioBtton") + self.remindRadioBtton.setGeometry(QRect(10,50,130,20)) + + + self.daysSpinBox = QSpinBox(self.buttonGroup1,"daysSpinBox") + self.daysSpinBox.setGeometry(QRect(139,50,50,20)) + self.daysSpinBox.setMinValue(1) + self.daysSpinBox.setMaxValue(365) +# self.daysSpinBox.setEnabled(False) + + + self.daysLabel = QLabel(self.buttonGroup1,"daysLabel") + + self.daysLabel.setGeometry(QRect(200,50,68,20)) + + + self.dontRemindRadioBtton = QRadioButton(self.buttonGroup1,"dontRemindRadioBtton") + self.dontRemindRadioBtton.setGeometry(QRect(10,80,160,20)) + + + self.NextButton = QPushButton(self,"NextButton") + self.NextButton.setGeometry(QRect(140,190,90,25)) + + self.CancelButton = QPushButton(self,"CancelButton") + self.CancelButton.setGeometry(QRect(240,190,80,25)) + + self.languageChange() + self.resize(QSize(328,225).expandedTo(self.minimumSizeHint())) + self.clearWState(Qt.WState_Polished) + + self.connect(self.daysSpinBox,SIGNAL("valueChanged(int)"),self.daysSpinBox_change) + + def daysSpinBox_change(self): + self.remindRadioBtton.setChecked(True) + + def languageChange(self): + self.setCaption(self.__tr("HPLIP Upgrade Manager")) + self.textLabel1.setText(self.__tr(self.msg)) + if self.distro_type == 1: + self.installRadioBtton.setText(self.__tr("Download and Install")) + else: + self.installRadioBtton.setText(self.__tr("Follow steps from www.hplip.net")) + self.remindRadioBtton.setText(self.__tr("Remind me after")) + self.daysLabel.setText(self.__tr("days")) + self.dontRemindRadioBtton.setText(self.__tr("Don't remind again")) + self.NextButton.setText(self.__tr("Ok")) + self.CancelButton.setText(self.__tr("Cancel")) + + + + def __tr(self,s,c = None): + return qApp.translate("Form1",s,c) diff --git a/ui4/aligndialog.py b/ui4/aligndialog.py index 37c322ae8..75be5f6d2 100644 --- a/ui4/aligndialog.py +++ b/ui4/aligndialog.py @@ -100,6 +100,7 @@ class AlignDialog(QDialog, Ui_Dialog): ALIGN_TYPE_LIDIL_DJ_D1600: 0, ALIGN_TYPE_LEDM: 0, ALIGN_TYPE_LEDM_MANUAL: 0, + ALIGN_TYPE_LEDM_FF_CC_0: 0, } self.seq = { # (func|method, tuple of params|None) @@ -363,30 +364,34 @@ class AlignDialog(QDialog, Ui_Dialog): (self.showLoadPaperPage, None), (maint.AlignType15Phase1, (lambda : self.dev, lambda: true)), (self.showAlignmentNumberPage, ('A', 'v', 'kc', 3, 23)), - (self.endAlignmentNumberPage, ('A',)), + (self.endAlignmentNumberPage, ('A',)), (self.showAlignmentNumberPage, ('B', 'h', 'kc', 3, 11)), - (self.endAlignmentNumberPage, ('B',)), + (self.endAlignmentNumberPage, ('B',)), (self.showAlignmentNumberPage, ('C', 'v', 'k', 3, 23)), - (self.endAlignmentNumberPage, ('C',)), + (self.endAlignmentNumberPage, ('C',)), (self.showAlignmentNumberPage, ('D', 'v', 'c', 3, 23)), - (self.endAlignmentNumberPage, ('D',)), + (self.endAlignmentNumberPage, ('D',)), (self.showAlignmentNumberPage, ('E', 'h', 'k', 3, 11)), - (self.endAlignmentNumberPage, ('E',)), + (self.endAlignmentNumberPage, ('E',)), (self.showAlignmentNumberPage, ('F', 'h', 'k', 3, 11)), - (self.endAlignmentNumberPage, ('F',)), + (self.endAlignmentNumberPage, ('F',)), (self.showAlignmentNumberPage, ('G', 'h', 'k', 3, 11)), - (self.endAlignmentNumberPage, ('G',)), + (self.endAlignmentNumberPage, ('G',)), (self.showAlignmentNumberPage, ('H', 'v', 'k', 3, 9)), - (self.endAlignmentNumberPage, ('H',)), + (self.endAlignmentNumberPage, ('H',)), (self.showAlignmentNumberPage, ('I', 'v', 'c', 3, 9)), (self.endAlignmentNumberPage, ('I',)), (maint.AlignType16Phase1, (lambda: self.dev, lambda: self.a, lambda: self.b, lambda: self.c, lambda: self.d, lambda: self.e, - lambda: self.f, lambda: self.g, lambda: self.h, + lambda: self.f, lambda: self.g, lambda: self.h, lambda: self.i)), (self.close, None), ], - + ALIGN_TYPE_LEDM_FF_CC_0 : [ # 17 + (self.showLoadPaperPage, None), + (maint.AlignType17Phase1, (lambda : self.dev, lambda: self.showAioPage)), + (self.close, None), + ], } self.setupUi(self) diff --git a/ui4/devmgr5.py b/ui4/devmgr5.py index be043043c..defbff807 100644 --- a/ui4/devmgr5.py +++ b/ui4/devmgr5.py @@ -36,6 +36,7 @@ from prnt import cups from base.codes import * from ui_utils import * import hpmudext +from installer.core_install import * # Qt from PyQt4.QtCore import * @@ -150,6 +151,18 @@ class PluginInstall(QObject): return qApp.translate("DevMgr5",s,c) +class DiagnoseQueue(QObject): + def __init__(self, parent): + self.parent = parent + + + def exec_(self): + ok, output = utils.run('hp-diagnose_queues -r') + + def __tr(self,s,c = None): + return qApp.translate("DevMgr5",s,c) + + # *********************************************************************************** # @@ -166,8 +179,7 @@ class DevMgr5(QMainWindow, Ui_MainWindow): log.debug("Initializing toolbox UI (Qt4)...") log.debug("HPLIP Version: %s" % prop.installed_version) - self.setupUi(self) - + self.toolbox_version = toolbox_version self.initial_device_uri = initial_device_uri self.device_vars = {} @@ -177,13 +189,23 @@ class DevMgr5(QMainWindow, Ui_MainWindow): self.updating = False self.init_failed = False self.service = None + self.Is_autoInstaller_distro = False # True-->tier1(supports auto installation). False--> tier2(manual installation) + # Distro insformation + core = CoreInstall(MODE_CHECK) +# core.init() + self.Is_autoInstaller_distro = core.is_auto_installer_support() # User settings self.user_settings = UserSettings() self.user_settings.load() self.user_settings.debug() self.cur_device_uri = self.user_settings.last_used_device_uri - + installed_version=sys_conf.get('hplip','version') + if not utils.Is_HPLIP_older_version( installed_version, self.user_settings.latest_available_version): + self.setupUi(self,"",self.Is_autoInstaller_distro) + else: + self.setupUi(self, self.user_settings.latest_available_version,self.Is_autoInstaller_distro) + # Other initialization self.initDBus() self.initPixmaps() @@ -278,6 +300,7 @@ class DevMgr5(QMainWindow, Ui_MainWindow): self.initPrintSettingsTab() self.initPrintControlTab() + self.connect(self.Tabs,SIGNAL("currentChanged(int)"),self.Tabs_currentChanged) # Resize the splitter so that the device list starts as a single column @@ -295,6 +318,7 @@ class DevMgr5(QMainWindow, Ui_MainWindow): 2: self.updateSuppliesTab, 3: self.updatePrintSettingsTab, 4: self.updatePrintControlTab, + 5:self.updateHPLIPupgrade, } # docs @@ -1143,6 +1167,13 @@ class DevMgr5(QMainWindow, Ui_MainWindow): "plugin", x, lambda : PluginInstall(self, d.plugin, plugin_installed)), + + # Diagnose Queues + (lambda : True, + self.__tr("Diagnose Queues"), + "warning", + self.__tr("Diagnose Print/Fax Queues."), + lambda : DiagnoseQueue(self)), # EWS @@ -1739,6 +1770,34 @@ class DevMgr5(QMainWindow, Ui_MainWindow): # TODO: Check queues at startup and send events if stopped or rejecting + def initUpgradeTab(self): + self.connect(self.InstallLatestButton, SIGNAL("clicked()"), self.InstallLatestButton_clicked) + self.InstallLatestButton_lock = False + + + def InstallLatestButton_clicked(self): + if self.InstallLatestButton_lock is True: + return + if self.Is_autoInstaller_distro: + self.InstallLatestButton.setEnabled(False) + terminal_cmd = utils.get_terminal() + if terminal_cmd is not None and utils.which("hp-upgrade"): + cmd = terminal_cmd + " 'hp-upgrade'" + log.debug("cmd = %s " %cmd) + os.system(cmd) + else: + log.error("Failed to run hp-upgrade command from terminal =%s "%terminal_cmd) + self.InstallLatestButton.setEnabled(True) + else: + self.InstallLatestButton_lock = True + utils.openURL("http://hplipopensource.com/hplip-web/install/manual/index.html") + QTimer.singleShot(1000, self.InstallLatestButton_unlock) + + + def InstallLatestButton_unlock(self): + self.InstallLatestButton_lock = False + + def CancelJobButton_clicked(self): item = self.JobTable.currentItem() @@ -1752,7 +1811,12 @@ class DevMgr5(QMainWindow, Ui_MainWindow): def RefreshButton_clicked(self): self.updatePrintControlTab() + def updateHPLIPupgrade(self): + self.initUpgradeTab() + + + def updatePrintControlTab(self): if self.cur_device.device_type == DEVICE_TYPE_PRINTER: self.PrintControlPrinterNameLabel.setText(self.__tr("Printer Name:")) diff --git a/ui4/devmgr5_base.py b/ui4/devmgr5_base.py index ef4eeb2fc..3cdcfbaf5 100644 --- a/ui4/devmgr5_base.py +++ b/ui4/devmgr5_base.py @@ -2,18 +2,20 @@ # Form implementation generated from reading ui file 'ui4/devmgr5_base.ui' # -# Created: Mon May 18 17:05:52 2009 -# by: PyQt4 UI code generator 4.4.4 +# Created: Thu Feb 2 15:07:11 2012 +# by: PyQt4 UI code generator 4.7.4 # # WARNING! All changes made in this file will be lost! from PyQt4 import QtCore, QtGui class Ui_MainWindow(object): - def setupUi(self, MainWindow): + def setupUi(self, MainWindow,latest_available_version,Is_autoInstaller_distro): MainWindow.setObjectName("MainWindow") MainWindow.setWindowModality(QtCore.Qt.ApplicationModal) MainWindow.resize(700, 500) + self.latest_available_version = latest_available_version + self.Is_autoInstaller_distro = Is_autoInstaller_distro self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.gridlayout = QtGui.QGridLayout(self.centralwidget) @@ -149,6 +151,7 @@ class Ui_MainWindow(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.groupBox_3.sizePolicy().hasHeightForWidth()) self.groupBox_3.setSizePolicy(sizePolicy) + self.groupBox_3.setTitle("") self.groupBox_3.setObjectName("groupBox_3") self.gridlayout7 = QtGui.QGridLayout(self.groupBox_3) self.gridlayout7.setMargin(1) @@ -165,6 +168,7 @@ class Ui_MainWindow(object): self.StartStopIcon.setSizePolicy(sizePolicy) self.StartStopIcon.setMinimumSize(QtCore.QSize(16, 16)) self.StartStopIcon.setMaximumSize(QtCore.QSize(16, 16)) + self.StartStopIcon.setText("") self.StartStopIcon.setObjectName("StartStopIcon") self.hboxlayout3.addWidget(self.StartStopIcon) self.StartStopLabel = QtGui.QLabel(self.groupBox_3) @@ -186,6 +190,7 @@ class Ui_MainWindow(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.groupBox_4.sizePolicy().hasHeightForWidth()) self.groupBox_4.setSizePolicy(sizePolicy) + self.groupBox_4.setTitle("") self.groupBox_4.setObjectName("groupBox_4") self.gridlayout8 = QtGui.QGridLayout(self.groupBox_4) self.gridlayout8.setMargin(1) @@ -202,6 +207,7 @@ class Ui_MainWindow(object): self.AcceptRejectIcon.setSizePolicy(sizePolicy) self.AcceptRejectIcon.setMinimumSize(QtCore.QSize(16, 16)) self.AcceptRejectIcon.setMaximumSize(QtCore.QSize(16, 16)) + self.AcceptRejectIcon.setText("") self.AcceptRejectIcon.setObjectName("AcceptRejectIcon") self.hboxlayout4.addWidget(self.AcceptRejectIcon) self.AcceptRejectLabel = QtGui.QLabel(self.groupBox_4) @@ -223,6 +229,7 @@ class Ui_MainWindow(object): sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(self.groupBox_5.sizePolicy().hasHeightForWidth()) self.groupBox_5.setSizePolicy(sizePolicy) + self.groupBox_5.setTitle("") self.groupBox_5.setObjectName("groupBox_5") self.gridlayout9 = QtGui.QGridLayout(self.groupBox_5) self.gridlayout9.setMargin(1) @@ -239,6 +246,7 @@ class Ui_MainWindow(object): self.SetDefaultIcon.setSizePolicy(sizePolicy) self.SetDefaultIcon.setMinimumSize(QtCore.QSize(16, 16)) self.SetDefaultIcon.setMaximumSize(QtCore.QSize(16, 16)) + self.SetDefaultIcon.setText("") self.SetDefaultIcon.setObjectName("SetDefaultIcon") self.hboxlayout5.addWidget(self.SetDefaultIcon) self.SetDefaultLabel = QtGui.QLabel(self.groupBox_5) @@ -276,10 +284,29 @@ class Ui_MainWindow(object): self.gridlayout10.addWidget(self.RefreshButton, 1, 2, 1, 1) self.gridlayout5.addWidget(self.groupBox_2, 2, 0, 1, 1) self.Tabs.addTab(self.Control, "") + if self.latest_available_version is not "": + self.tab_3 = QtGui.QWidget() + self.tab_3.setObjectName("tab_3") + self.label = QtGui.QLabel(self.tab_3) + self.label.setGeometry(QtCore.QRect(30, 45, 300, 17)) + self.label.setObjectName("label") + if self.Is_autoInstaller_distro: + self.InstallLatestButton = QtGui.QPushButton(self.tab_3) + self.InstallLatestButton.setGeometry(QtCore.QRect(351, 40, 96, 27)) + self.InstallLatestButton.setObjectName("pushButton") + else: + self.ManualInstalllabel = QtGui.QLabel(self.tab_3) + self.ManualInstalllabel.setGeometry(QtCore.QRect(30, 70,300, 45)) + self.ManualInstalllabel.setObjectName("label") + self.InstallLatestButton = QtGui.QPushButton(self.tab_3) + self.InstallLatestButton.setGeometry(QtCore.QRect(295, 80, 110, 25)) + self.InstallLatestButton.setObjectName("pushButton") + self.Tabs.addTab(self.tab_3, "") + self.gridlayout.addWidget(self.splitter, 0, 0, 1, 1) MainWindow.setCentralWidget(self.centralwidget) self.Menubar = QtGui.QMenuBar(MainWindow) - self.Menubar.setGeometry(QtCore.QRect(0, 0, 700, 25)) + self.Menubar.setGeometry(QtCore.QRect(0, 0, 700, 27)) self.Menubar.setObjectName("Menubar") self.DeviceMenu = QtGui.QMenu(self.Menubar) self.DeviceMenu.setObjectName("DeviceMenu") @@ -295,7 +322,7 @@ class Ui_MainWindow(object): MainWindow.setStatusBar(self.Statusbar) self.toolBar = QtGui.QToolBar(MainWindow) self.toolBar.setObjectName("toolBar") - MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar) + MainWindow.addToolBar(QtCore.Qt.ToolBarArea(QtCore.Qt.TopToolBarArea), self.toolBar) self.QuitAction = QtGui.QAction(MainWindow) self.QuitAction.setObjectName("QuitAction") self.PreferencesAction = QtGui.QAction(MainWindow) @@ -369,6 +396,16 @@ class Ui_MainWindow(object): self.CancelJobButton.setText(QtGui.QApplication.translate("MainWindow", "Cancel Job", None, QtGui.QApplication.UnicodeUTF8)) self.RefreshButton.setText(QtGui.QApplication.translate("MainWindow", "Refresh", None, QtGui.QApplication.UnicodeUTF8)) self.Tabs.setTabText(self.Tabs.indexOf(self.Control), QtGui.QApplication.translate("MainWindow", "Printer Control", None, QtGui.QApplication.UnicodeUTF8)) + if self.latest_available_version is not "": + self.label.setText(QtGui.QApplication.translate("MainWindow", "New version of HPLIP-%s is available"%self.latest_available_version, None, QtGui.QApplication.UnicodeUTF8)) + self.Tabs.setTabText(self.Tabs.indexOf(self.tab_3), QtGui.QApplication.translate("MainWindow", "Upgrade", None, QtGui.QApplication.UnicodeUTF8)) + if self.Is_autoInstaller_distro: + self.InstallLatestButton.setText(QtGui.QApplication.translate("MainWindow", "Install now", None, QtGui.QApplication.UnicodeUTF8)) + else: + msg="Please install manually as mentioned in " + self.ManualInstalllabel.setText(QtGui.QApplication.translate("MainWindow", msg, None, QtGui.QApplication.UnicodeUTF8)) + self.InstallLatestButton.setText(QtGui.QApplication.translate("MainWindow", "HPLIP website", None, QtGui.QApplication.UnicodeUTF8)) + self.DeviceMenu.setTitle(QtGui.QApplication.translate("MainWindow", "&Device", None, QtGui.QApplication.UnicodeUTF8)) self.ConfigureMenu.setTitle(QtGui.QApplication.translate("MainWindow", "&Configure", None, QtGui.QApplication.UnicodeUTF8)) self.HelpMenu.setTitle(QtGui.QApplication.translate("MainWindow", "&Help", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/ui4/devmgr5_base.ui b/ui4/devmgr5_base.ui index 9afbdd48b..7d0c7f53e 100644 --- a/ui4/devmgr5_base.ui +++ b/ui4/devmgr5_base.ui @@ -56,8 +56,11 @@ <verstretch>0</verstretch> </sizepolicy> </property> + <property name="styleSheet"> + <string notr="true"/> + </property> <property name="currentIndex"> - <number>0</number> + <number>5</number> </property> <widget class="QWidget" name="Actions"> <attribute name="title"> @@ -544,6 +547,37 @@ </item> </layout> </widget> + <widget class="QWidget" name="tab_3"> + <attribute name="title"> + <string>Page</string> + </attribute> + <widget class="QPushButton" name="pushButton"> + <property name="geometry"> + <rect> + <x>280</x> + <y>40</y> + <width>96</width> + <height>27</height> + </rect> + </property> + <property name="text"> + <string>Install now</string> + </property> + </widget> + <widget class="QLabel" name="label"> + <property name="geometry"> + <rect> + <x>30</x> + <y>45</y> + <width>251</width> + <height>17</height> + </rect> + </property> + <property name="text"> + <string>New version of HPLIP-x.x.x is available</string> + </property> + </widget> + </widget> </widget> </widget> </item> @@ -555,7 +589,7 @@ <x>0</x> <y>0</y> <width>700</width> - <height>25</height> + <height>27</height> </rect> </property> <widget class="QMenu" name="DeviceMenu"> diff --git a/ui4/plugindiagnose.py b/ui4/plugindiagnose.py index 5927731e4..7dc24007c 100644 --- a/ui4/plugindiagnose.py +++ b/ui4/plugindiagnose.py @@ -46,7 +46,7 @@ from plugindiagnose_base import Ui_Dialog class PluginDiagnose(QDialog, Ui_Dialog): - def __init__(self, parent, install_mode=PLUGIN_NONE, plugin_reason=PLUGIN_REASON_NONE): + def __init__(self, parent, install_mode=PLUGIN_NONE, plugin_reason=PLUGIN_REASON_NONE, upgrade=False): QDialog.__init__(self, parent) self.install_mode = install_mode self.plugin_reason = plugin_reason @@ -54,7 +54,7 @@ class PluginDiagnose(QDialog, Ui_Dialog): self.result = False self.core = CoreInstall() self.core.set_plugin_version() - self.setupUi(self) + self.setupUi(self, upgrade) self.user_settings = UserSettings() self.user_settings.load() @@ -99,7 +99,7 @@ class PluginDiagnose(QDialog, Ui_Dialog): plugin_reason = PLUGIN_REASON_NONE ok, sudo_ok = pkit.run_plugin_command(plugin == PLUGIN_REQUIRED, plugin_reason) - if not ok or not self.core.check_for_plugin(): + if not ok or self.core.check_for_plugin() != PLUGIN_INSTALLED: FailureUI(self, self.__tr("Failed to install Plug-in.\nEither you have chosen to skip the Plug-in installation or entered incorrect Password.")) finally: diff --git a/ui4/plugindiagnose_base.py b/ui4/plugindiagnose_base.py index 2595d8cc3..dc7978067 100644 --- a/ui4/plugindiagnose_base.py +++ b/ui4/plugindiagnose_base.py @@ -10,9 +10,10 @@ from PyQt4 import QtCore, QtGui class Ui_Dialog(object): - def setupUi(self, Dialog): + def setupUi(self, Dialog, upgrade=False): Dialog.setObjectName("Dialog") Dialog.resize(500, 180) + self.upgradePlugin=upgrade self.gridlayout = QtGui.QGridLayout(Dialog) self.gridlayout.setObjectName("gridlayout") self.StackedWidget = QtGui.QStackedWidget(Dialog) @@ -60,7 +61,10 @@ class Ui_Dialog(object): def retranslateUi(self, Dialog): Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "HP Device Manager - Plug-in Installer", None, QtGui.QApplication.UnicodeUTF8)) self.label.setText(QtGui.QApplication.translate("Dialog", "Driver Plug-in Required", None, QtGui.QApplication.UnicodeUTF8)) - self.TitleLabel.setText(QtGui.QApplication.translate("Dialog", "HP Device requires proprietary plug-in which is missing. Press Next to continue plug-in installation", None, QtGui.QApplication.UnicodeUTF8)) + if self.upgradePlugin is False: + self.TitleLabel.setText(QtGui.QApplication.translate("Dialog", "HP Device proprietary plug-in is missing. Click 'Next' to continue plug-in installation.", None, QtGui.QApplication.UnicodeUTF8)) + else: + self.TitleLabel.setText(QtGui.QApplication.translate("Dialog", "HP Device plug-in version mismatch or some files are corrupted.\nClick 'Next' to install required plug-in.", None, QtGui.QApplication.UnicodeUTF8)) self.NextButton.setText(QtGui.QApplication.translate("Dialog", "Next >", None, QtGui.QApplication.UnicodeUTF8)) self.CancelButton.setText(QtGui.QApplication.translate("Dialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/ui4/plugindiagnose_base.ui b/ui4/plugindiagnose_base.ui index 69ac4be9e..b073c6a46 100644 --- a/ui4/plugindiagnose_base.ui +++ b/ui4/plugindiagnose_base.ui @@ -43,7 +43,7 @@ <item row="2" column="0" colspan="2"> <widget class="QLabel" name="TitleLabel"> <property name="text"> - <string>HP Device requires proprietary plug-in which is missing. Press Next to continue plug-in installation</string> + <string>HP Device requires proprietary plug-in which is missing. Click 'Next' to continue plug-in installation</string> </property> <property name="wordWrap"> <bool>true</bool> diff --git a/ui4/queuesconf.py b/ui4/queuesconf.py new file mode 100644 index 000000000..c527b6731 --- /dev/null +++ b/ui4/queuesconf.py @@ -0,0 +1,181 @@ +# -*- coding: utf-8 -*- +# +# (c) Copyright 2011-2014 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Authors: Amarnath Chitumalla +# + +#global +import os +import sys + +# Local +from base.g import * +from base import utils +from prnt import cups +from base.codes import * +from ui_utils import * + + +# Qt +from PyQt4.QtCore import * +from PyQt4.QtGui import * + +from PyQt4 import QtCore, QtGui + +class Ui_Dialog(object): + def setupUi(self, Dialog, printerName, device_uri,Error_msg): + Dialog.setObjectName("Dialog") + Dialog.resize(700, 180) + self.printerName=printerName + self.device_uri=device_uri + self.Error_msg=Error_msg + self.gridlayout = QtGui.QGridLayout(Dialog) + self.gridlayout.setObjectName("gridlayout") + self.StackedWidget = QtGui.QStackedWidget(Dialog) + self.StackedWidget.setObjectName("StackedWidget") + self.page = QtGui.QWidget() + self.page.setObjectName("page") + self.gridlayout1 = QtGui.QGridLayout(self.page) + self.gridlayout1.setObjectName("gridlayout1") + self.label = QtGui.QLabel(self.page) + font = QtGui.QFont() + font.setPointSize(16) + self.label.setFont(font) + self.label.setObjectName("label") + self.gridlayout1.addWidget(self.label, 0, 0, 1, 1) + self.line = QtGui.QFrame(self.page) + self.line.setFrameShape(QtGui.QFrame.HLine) + self.line.setFrameShadow(QtGui.QFrame.Sunken) + self.line.setObjectName("line") + self.gridlayout1.addWidget(self.line, 1, 0, 1, 2) + self.TitleLabel = QtGui.QLabel(self.page) + self.TitleLabel.setWordWrap(True) + self.TitleLabel.setObjectName("TitleLabel") + self.gridlayout1.addWidget(self.TitleLabel, 2, 0, 1, 2) + spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + spacerItem2 = QtGui.QSpacerItem(200, 51, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding) + self.gridlayout1.addItem(spacerItem2, 5, 1, 1, 1) + self.StackedWidget.addWidget(self.page) + self.gridlayout.addWidget(self.StackedWidget, 0, 0, 1, 5) + self.line_2 = QtGui.QFrame(Dialog) + self.line_2.setFrameShape(QtGui.QFrame.HLine) + self.line_2.setFrameShadow(QtGui.QFrame.Sunken) + self.line_2.setObjectName("line_2") + self.gridlayout.addWidget(self.line_2, 1, 0, 1, 4) + self.NextButton = QtGui.QPushButton(Dialog) + self.NextButton.setObjectName("NextButton") + self.gridlayout.addWidget(self.NextButton, 2, 3, 1, 1) + self.CancelButton = QtGui.QPushButton(Dialog) + self.CancelButton.setObjectName("CancelButton") + self.gridlayout.addWidget(self.CancelButton, 2, 4, 1, 1) + + self.retranslateUi(Dialog) + self.StackedWidget.setCurrentIndex(0) + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "HP Device Manager - Queues diagnose", None, QtGui.QApplication.UnicodeUTF8)) + if self.Error_msg == QUEUES_PAUSED: + self.label.setText(QtGui.QApplication.translate("Dialog", "Print/Fax Queue is Paused", None, QtGui.QApplication.UnicodeUTF8)) + else: + self.label.setText(QtGui.QApplication.translate("Dialog", "Queue needs to be reconfigured", None, QtGui.QApplication.UnicodeUTF8)) + + if self.Error_msg == QUEUES_INCORRECT_PPD: + text= "'"+ self.printerName + "' is using incorrect PPD file. Do you want to remove and reconfigure queue?" + elif self.Error_msg == QUEUES_PAUSED: + text="'"+ self.printerName + "' is paused. Do you want to enable queue?" + elif self.Error_msg == QUEUES_CONFIG_ERROR: + text="'"+ self.printerName + "' is not configured using hp-setup utility. Click 'Next' to remove and reconfigure queue." + + if self.Error_msg != QUEUES_MSG_SENDING: + self.TitleLabel.setText(QtGui.QApplication.translate("Dialog", text, None, QtGui.QApplication.UnicodeUTF8)) + if self.Error_msg == QUEUES_PAUSED or self.Error_msg == QUEUES_INCORRECT_PPD: + self.NextButton.setText(QtGui.QApplication.translate("Dialog", "Yes", None, QtGui.QApplication.UnicodeUTF8)) + self.CancelButton.setText(QtGui.QApplication.translate("Dialog", "No", None, QtGui.QApplication.UnicodeUTF8)) + else: + self.NextButton.setText(QtGui.QApplication.translate("Dialog", "Next >", None, QtGui.QApplication.UnicodeUTF8)) + self.CancelButton.setText(QtGui.QApplication.translate("Dialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8)) + + +# Ui + +class QueuesDiagnose(QDialog, Ui_Dialog): + def __init__(self, parent, printerName, device_uri, Error_msg): + QDialog.__init__(self, parent) + self.result = False + self.printerName = printerName + self.device_uri = device_uri + self.Error_msg = Error_msg + self.setupUi(self, printerName, device_uri,Error_msg) + self.user_settings = UserSettings() + self.user_settings.load() + self.user_settings.debug() + + self.initUi() + + + def initUi(self): + # connect signals/slots + self.connect(self.CancelButton, SIGNAL("clicked()"), self.CancelButton_clicked) + self.connect(self.NextButton, SIGNAL("clicked()"), self.NextButton_clicked) + + # Application icon + self.setWindowIcon(QIcon(load_pixmap('hp_logo', '128x128'))) + + + # + # Misc + # + def displayPage(self, page): + self.updateStepText(page) + self.StackedWidget.setCurrentIndex(page) + + def CancelButton_clicked(self): + self.close() + + + def NextButton_clicked(self): + try: + if self.Error_msg != QUEUES_PAUSED: + cups.delPrinter(self.printerName) + msg="' "+self.printerName+" ' removed successfully.\nRe-configuring this printer by hp-setup..." + log.debug(msg) + path = utils.which('hp-setup') + if path: + log.debug("Starting hp-setup") + utils.run('hp-setup') + + else: + cups.enablePrinter(self.printerName) + msg ="'"+self.printerName+"' is enabled successfully" + SuccessUI(self, self.__tr(msg)) + + finally: + endWaitCursor() + self.result = True + self.close() + + def showMessage(self,msg): + FailureUI(self, self.__tr(msg)) + + def showSuccessMessage(self,msg): + SuccessUI(self, self.__tr(msg)) + + def __tr(self,s,c = None): + return qApp.translate("PluginDialog",s,c) + diff --git a/ui4/settingsdialog.py b/ui4/settingsdialog.py index d15d59bbf..be4e4ec84 100644 --- a/ui4/settingsdialog.py +++ b/ui4/settingsdialog.py @@ -40,12 +40,22 @@ class SettingsDialog(QDialog, Ui_SettingsDialog_base): self.user_settings = UserSettings() self.user_settings.load() - + + cur_vers = sys_conf.get('hplip', 'version') + last_ver = user_conf.get('upgrade','latest_available_version') + if cur_vers != last_ver: + upgrade_msg ="Currently HPLIP-%s version is installed.\nLatest HPLIP-%s version is available for installation"%(cur_vers, last_ver) + else: + upgrade_msg ="HPLIP-%s version is installed"%(cur_vers) + self.SystemTraySettings.initUi(self.user_settings.systray_visible, self.user_settings.polling, self.user_settings.polling_interval, self.user_settings.device_list, - self.user_settings.systray_messages) + self.user_settings.systray_messages, + self.user_settings.upgrade_notify, + self.user_settings.upgrade_pending_update_time, + upgrade_msg) self.updateControls() diff --git a/ui4/setupdialog.py b/ui4/setupdialog.py index 2ae55d545..5d3c8eabe 100644 --- a/ui4/setupdialog.py +++ b/ui4/setupdialog.py @@ -656,12 +656,12 @@ class SetupDialog(QDialog, Ui_Dialog): plugin_reason = self.mq.get('plugin-reason', PLUGIN_REASON_NONE) if plugin > PLUGIN_NONE: - if not core.check_for_plugin(): + if core.check_for_plugin() != PLUGIN_INSTALLED: ok, sudo_ok = pkit.run_plugin_command(plugin == PLUGIN_REQUIRED, plugin_reason) if not sudo_ok: FailureUI(self, self.__tr("<b>Unable to find an appropriate su/sudo utiltity to run hp-plugin.</b><p>Install kdesu, gnomesu, or gksu.</p>")) return - if not ok or not core.check_for_plugin(): + if not ok or core.check_for_plugin() != PLUGIN_INSTALLED: if plugin == PLUGIN_REQUIRED: FailureUI(self, self.__tr("<b>The printer you are trying to setup requires a binary driver plug-in and it failed to install.</b><p>Please check your internet connection and try again.</p><p>Visit <u>http://hplipopensource.com</u> for more infomation.</p>")) return @@ -822,14 +822,14 @@ class SetupDialog(QDialog, Ui_Dialog): default_model = utils.xstrip(model.replace('series', '').replace('Series', ''), '_') printer_name = default_model - + installed_printer_names = device.getSupportedCUPSPrinterNames(['hp']) # Check for duplicate names - if self.device_uri in self.installed_print_devices and \ - printer_name in self.installed_print_devices[self.device_uri]: + if (self.device_uri in self.installed_print_devices and printer_name in self.installed_print_devices[self.device_uri]) \ + or (printer_name in installed_printer_names): i = 2 while True: t = printer_name + "_%d" % i - if t not in self.installed_print_devices[self.device_uri]: + if (t not in installed_printer_names) and (self.device_uri not in self.installed_print_devices or t not in self.installed_print_devices[self.device_uri]): printer_name += "_%d" % i break i += 1 @@ -850,14 +850,14 @@ class SetupDialog(QDialog, Ui_Dialog): default_model = utils.xstrip(model.replace('series', '').replace('Series', ''), '_') fax_name = default_model + "_fax" - + installed_fax_names = device.getSupportedCUPSPrinterNames(['hpfax']) # Check for duplicate names - if self.fax_uri in self.installed_fax_devices and \ - fax_name in self.installed_fax_devices[self.fax_uri]: + if (self.fax_uri in self.installed_fax_devices and fax_name in self.installed_fax_devices[self.fax_uri]) \ + or (fax_name in installed_fax_names): i = 2 while True: t = fax_name + "_%d" % i - if t not in self.installed_fax_devices[self.fax_uri]: + if (t not in installed_fax_names) and (self.fax_uri not in self.installed_fax_devices or t not in self.installed_fax_devices[self.fax_uri]): fax_name += "_%d" % i break i += 1 diff --git a/ui4/systemtray.py b/ui4/systemtray.py index 9a9f30aaf..957268971 100644 --- a/ui4/systemtray.py +++ b/ui4/systemtray.py @@ -74,6 +74,7 @@ HIDE_INACTIVE_DELAY = 5000 BLIP_DELAY = 2000 SET_MENU_DELAY = 1000 MAX_MENU_EVENTS = 10 +UPGRADE_CHECK_DELAY=24*60*60*1000 #1 day ERROR_STATE_TO_ICON = { ERROR_STATE_CLEAR: QSystemTrayIcon.Information, @@ -205,7 +206,14 @@ class HistoryDevice(QObject): class SystraySettingsDialog(QDialog): def __init__(self, parent, systray_visible, polling, polling_interval, systray_messages, - device_list=None): + device_list=None, + upgrade_notify=True, + upgrade_pending_time=0, + upgrade_last_update_time=0, + upgrade_msg="" + ): +# upgrade_pending_update_time=0, + QDialog.__init__(self, parent) @@ -219,6 +227,10 @@ class SystraySettingsDialog(QDialog): self.polling = polling self.polling_interval = polling_interval + self.upgrade_notify =upgrade_notify + self.upgrade_last_update_time=upgrade_last_update_time + self.upgrade_pending_time=upgrade_pending_time + self.upgrade_msg=upgrade_msg self.initUi() self.SystemTraySettings.updateUi() @@ -235,7 +247,10 @@ class SystraySettingsDialog(QDialog): self.SystemTraySettings.initUi(self.systray_visible, self.polling, self.polling_interval, self.device_list, - self.systray_messages) + self.systray_messages, + self.upgrade_notify, + self.upgrade_pending_time, + self.upgrade_msg) sizePolicy = QSizePolicy(QSizePolicy.Expanding,QSizePolicy.Expanding) sizePolicy.setHorizontalStretch(0) @@ -260,6 +275,9 @@ class SystraySettingsDialog(QDialog): #QMetaObject.connectSlotsByName(self) self.setWindowTitle(self.__tr("HP Device Manager - System Tray Settings")) + self.setWindowIcon(QIcon(load_pixmap('hp_logo', '128x128'))) +# pm = load_pixmap("hp_logo", "32x32") +# self.prop_icon = QIcon(pm) def acceptClicked(self): @@ -268,6 +286,7 @@ class SystraySettingsDialog(QDialog): self.polling_interval = self.SystemTraySettings.polling_interval self.device_list = self.SystemTraySettings.device_list self.systray_messages = self.SystemTraySettings.systray_messages + self.upgrade_notify =self.SystemTraySettings.upgrade_notify self.accept() @@ -276,6 +295,7 @@ class SystraySettingsDialog(QDialog): + class SystemTrayApp(QApplication): def __init__(self, args, read_pipe): QApplication.__init__(self, args) @@ -325,8 +345,14 @@ class SystemTrayApp(QApplication): self.tray_icon.setIcon(self.prop_active_icon) self.active_icon = True + self.handle_hplip_updation() QTimer.singleShot(SET_MENU_DELAY, self.initDone) + self.timer = QTimer() + self.timer.connect(self.timer,SIGNAL("timeout()"),self.handle_hplip_updation) + self.timer.start(UPGRADE_CHECK_DELAY) + + def initDone(self): self.tray_icon.setIcon(self.prop_icon) @@ -344,6 +370,37 @@ class SystemTrayApp(QApplication): devices[device_uri].needs_update = True + def handle_hplip_updation(self): + log.debug("handle_hplip_updation upgrade_notify =%d"%(self.user_settings.upgrade_notify)) + path = utils.which('hp-upgrade') + if self.user_settings.upgrade_notify is False: + log.debug("upgrade notification is disabled in systray ") + if path: + path = os.path.join(path, 'hp-upgrade') + log.debug("Running hp-upgrade: %s " % (path)) + # this just updates the available version in conf file. But won't notify + os.spawnlp(os.P_NOWAIT, path, 'hp-upgrade', '--check') + return + + + current_time = time.time() + + if int(current_time) > self.user_settings.upgrade_pending_update_time: + path = utils.which('hp-upgrade') + if path: + path = os.path.join(path, 'hp-upgrade') + log.debug("Running hp-upgrade: %s " % (path)) + os.spawnlp(os.P_NOWAIT, path, 'hp-upgrade', '--notify') + + else: + log.error("Unable to find hp-upgrade --notify on PATH.") + else: + log.debug("upgrade schedule time is not yet completed. schedule time =%d current time =%d " %(self.user_settings.upgrade_pending_update_time, current_time)) + + + + + def setMenu(self): self.menu = QMenu() @@ -417,16 +474,41 @@ class SystemTrayApp(QApplication): return self.sendMessage('', '', EVENT_DEVICE_STOP_POLLING) +# sys_conf + cur_vers = sys_conf.get('hplip', 'version') + self.user_settings.load() + installed_time =time.strftime("%d-%m-%Y", time.localtime(self.user_settings.upgrade_last_update_time)) + if utils.Is_HPLIP_older_version(cur_vers, self.user_settings.latest_available_version): + if int(time.time()) < self.user_settings.upgrade_pending_update_time : + postponed_time =time.strftime("%d-%m-%Y", time.localtime(self.user_settings.upgrade_pending_update_time)) + upgrade_msg ="HPLIP-%s version was installed on %s.\n\nNew version of HPLIP-%s is available for upgrade. HPLIP upgrade is scheduled on %s." %(cur_vers,installed_time , self.user_settings.latest_available_version, postponed_time) + elif self.user_settings.upgrade_last_update_time: + upgrade_msg ="HPLIP-%s version was installed on %s.\n\nNew version of HPLIP-%s is available for upgrade." %(cur_vers,installed_time , self.user_settings.latest_available_version) + else: + upgrade_msg ="HPLIP-%s version was installed.\n\nNew version of HPLIP-%s is available for upgrade." %(cur_vers, self.user_settings.latest_available_version) + elif self.user_settings.upgrade_last_update_time: + upgrade_msg ="HPLIP-%s version was installed on %s."%(cur_vers, installed_time) + else: + upgrade_msg ="HPLIP-%s version was installed."%(cur_vers) + + try: dlg = SystraySettingsDialog(self.menu, self.user_settings.systray_visible, self.user_settings.polling, self.user_settings.polling_interval, self.user_settings.systray_messages, - self.user_settings.polling_device_list) + self.user_settings.polling_device_list, + self.user_settings.upgrade_notify, + self.user_settings.upgrade_pending_update_time, + self.user_settings.upgrade_last_update_time, + upgrade_msg) + if dlg.exec_() == QDialog.Accepted: self.user_settings.systray_visible = dlg.systray_visible self.user_settings.systray_messages = dlg.systray_messages - + self.user_settings.upgrade_notify = dlg.upgrade_notify + + log.debug("HPLIP update notification = %d"%(self.user_settings.upgrade_notify)) self.user_settings.save() if self.user_settings.systray_visible == SYSTRAY_VISIBLE_SHOW_ALWAYS: diff --git a/ui4/systrayframe.py b/ui4/systrayframe.py index 27cf0d5c9..5ef84460f 100644 --- a/ui4/systrayframe.py +++ b/ui4/systrayframe.py @@ -34,12 +34,17 @@ class SystrayFrame(QFrame): QFrame.__init__(self, parent) - def initUi(self, systray_visible, polling, polling_interval, device_list, systray_messages): + def initUi(self, systray_visible, polling, polling_interval, device_list, systray_messages,upgrade_notify, + upgrade_postpone_time, upgrade_msg): + self.systray_visible = systray_visible self.polling = polling self.polling_interval = polling_interval self.device_list = device_list self.systray_messages = systray_messages + self.upgrade_notify = upgrade_notify + self.upgrade_postpone_time =upgrade_postpone_time + self.upgrade_msg = upgrade_msg self.gridlayout = QGridLayout(self) @@ -96,7 +101,27 @@ class SystrayFrame(QFrame): self.listWidget = QListWidget(self.MonitorGroupBox) self.gridlayout4.addWidget(self.listWidget,1,0,1,1) self.gridlayout1.addWidget(self.MonitorGroupBox,1,0,1,2) + + + #UpdategroupBox is same as "gridlayout5" + self.groupBox_4 = QGroupBox(self.frame) + self.UpdategroupBox = QGridLayout(self.groupBox_4) + self.UpdategroupBox.setObjectName("UpdategroupBox") + self.UpdatecheckBox = QCheckBox(self.groupBox_4) + self.UpdatecheckBox.setObjectName("UpdatecheckBox") + self.UpdategroupBox.addWidget(self.UpdatecheckBox,0,0,1,4) + self.label_5 = QLabel(self.groupBox_4) + self.label_5.setObjectName("label_5") + self.UpdategroupBox.addWidget(self.label_5, 1, 0, 1, 4) + self.textEdit = QTextEdit(self.groupBox_4) + self.textEdit.setObjectName("textEdit") + self.textEdit.setReadOnly(True) + self.UpdategroupBox.addWidget(self.textEdit, 2, 0, 1, 4) + self.gridlayout1.addWidget(self.groupBox_4,2,0,1,2) + self.gridlayout.addWidget(self.frame,0,0,1,1) + + self.setWindowTitle(QApplication.translate("self", "self", None, QApplication.UnicodeUTF8)) self.groupBox_2.setTitle(QApplication.translate("self", "System tray icon visibility", None, QApplication.UnicodeUTF8)) @@ -107,17 +132,35 @@ class SystrayFrame(QFrame): self.label_2.setText(QApplication.translate("self", "Messages to show:", None, QApplication.UnicodeUTF8)) self.MonitorGroupBox.setTitle(QApplication.translate("self", "Monitor button presses on devices", None, QApplication.UnicodeUTF8)) self.label.setText(QApplication.translate("self", "Devices to monitor:", None, QApplication.UnicodeUTF8)) + + + self.groupBox_4.setTitle(QApplication.translate("Dialog", "Update Settings", None, QApplication.UnicodeUTF8)) + self.UpdatecheckBox.setText(QApplication.translate("Dialog", "Check and notify HPLIP updates", None, QApplication.UnicodeUTF8)) + self.label_5.setText(QApplication.translate("Dialog", "Status:", None, QApplication.UnicodeUTF8)) + self.textEdit.setPlainText(self.upgrade_msg) + self.connect(self.ShowAlwaysRadioButton, SIGNAL("clicked(bool)"), self.ShowAlwaysRadioButton_clicked) self.connect(self.HideWhenInactiveRadioButton, SIGNAL("clicked(bool)"), self.HideWhenInactiveRadioButton_clicked) self.connect(self.HideAlwaysRadioButton, SIGNAL("clicked(bool)"), self.HideAlwaysRadioButton_clicked) self.connect(self.MessageShowComboBox, SIGNAL("activated(int)"), self.MessageShowComboBox_activated) + self.connect(self.UpdatecheckBox, SIGNAL("clicked(bool)"), self.UpdatecheckBox_clicked) + + + + def UpdatecheckBox_clicked(self, b): + log.debug("Update HPLIP val =%d "%b) + if b is False: + self.upgrade_notify = False + else: + self.upgrade_notify = True def updateUi(self): self.updateVisibility() self.updateMessages() self.updateDeviceList() + self.updateUpgradeSettings() def updateVisibility(self): @@ -159,6 +202,14 @@ class SystrayFrame(QFrame): def updateDeviceList(self): pass + def updateUpgradeSettings(self): + if self.upgrade_notify is True: + self.UpdatecheckBox.setChecked(True) + else: + self.UpdatecheckBox.setChecked(False) + + + def __tr(self, s, c=None): return QApplication.translate("SystrayFrame", s, c, QApplication.UnicodeUTF8) diff --git a/ui4/systrayframe_base.py b/ui4/systrayframe_base.py index d38afaaad..bfb1926bf 100644 --- a/ui4/systrayframe_base.py +++ b/ui4/systrayframe_base.py @@ -2,8 +2,8 @@ # Form implementation generated from reading ui file 'ui4/systrayframe_base.ui' # -# Created: Mon May 4 14:30:37 2009 -# by: PyQt4 UI code generator 4.4.4 +# Created: Fri Jan 27 17:32:25 2012 +# by: PyQt4 UI code generator 4.7.4 # # WARNING! All changes made in this file will be lost! @@ -12,55 +12,81 @@ from PyQt4 import QtCore, QtGui class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName("Dialog") - Dialog.resize(500, 540) + Dialog.resize(476, 653) self.gridlayout = QtGui.QGridLayout(Dialog) self.gridlayout.setObjectName("gridlayout") self.frame = QtGui.QFrame(Dialog) self.frame.setFrameShape(QtGui.QFrame.StyledPanel) self.frame.setFrameShadow(QtGui.QFrame.Raised) self.frame.setObjectName("frame") - self.gridlayout1 = QtGui.QGridLayout(self.frame) - self.gridlayout1.setObjectName("gridlayout1") self.groupBox_2 = QtGui.QGroupBox(self.frame) + self.groupBox_2.setGeometry(QtCore.QRect(11, 11, 201, 114)) self.groupBox_2.setObjectName("groupBox_2") - self.gridlayout2 = QtGui.QGridLayout(self.groupBox_2) - self.gridlayout2.setObjectName("gridlayout2") + self.gridlayout1 = QtGui.QGridLayout(self.groupBox_2) + self.gridlayout1.setObjectName("gridlayout1") self.radioButton = QtGui.QRadioButton(self.groupBox_2) self.radioButton.setObjectName("radioButton") - self.gridlayout2.addWidget(self.radioButton, 0, 0, 1, 1) + self.gridlayout1.addWidget(self.radioButton, 0, 0, 1, 1) self.radioButton_2 = QtGui.QRadioButton(self.groupBox_2) self.radioButton_2.setObjectName("radioButton_2") - self.gridlayout2.addWidget(self.radioButton_2, 1, 0, 1, 1) + self.gridlayout1.addWidget(self.radioButton_2, 1, 0, 1, 1) self.radioButton_3 = QtGui.QRadioButton(self.groupBox_2) self.radioButton_3.setObjectName("radioButton_3") - self.gridlayout2.addWidget(self.radioButton_3, 2, 0, 1, 1) - self.gridlayout1.addWidget(self.groupBox_2, 0, 0, 1, 1) + self.gridlayout1.addWidget(self.radioButton_3, 2, 0, 1, 1) self.groupBox_3 = QtGui.QGroupBox(self.frame) + self.groupBox_3.setGeometry(QtCore.QRect(232, 11, 197, 136)) self.groupBox_3.setObjectName("groupBox_3") - self.gridlayout3 = QtGui.QGridLayout(self.groupBox_3) - self.gridlayout3.setObjectName("gridlayout3") + self.gridlayout2 = QtGui.QGridLayout(self.groupBox_3) + self.gridlayout2.setObjectName("gridlayout2") self.label_2 = QtGui.QLabel(self.groupBox_3) self.label_2.setObjectName("label_2") - self.gridlayout3.addWidget(self.label_2, 0, 0, 1, 1) + self.gridlayout2.addWidget(self.label_2, 0, 0, 1, 1) self.MessageShowComboBox = QtGui.QComboBox(self.groupBox_3) self.MessageShowComboBox.setObjectName("MessageShowComboBox") - self.gridlayout3.addWidget(self.MessageShowComboBox, 1, 0, 1, 1) + self.gridlayout2.addWidget(self.MessageShowComboBox, 1, 0, 1, 1) spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Minimum) - self.gridlayout3.addItem(spacerItem, 2, 0, 1, 1) - self.gridlayout1.addWidget(self.groupBox_3, 0, 1, 1, 1) + self.gridlayout2.addItem(spacerItem, 2, 0, 1, 1) self.groupBox = QtGui.QGroupBox(self.frame) + self.groupBox.setGeometry(QtCore.QRect(10, 385, 411, 241)) self.groupBox.setCheckable(True) self.groupBox.setObjectName("groupBox") - self.gridlayout4 = QtGui.QGridLayout(self.groupBox) - self.gridlayout4.setObjectName("gridlayout4") - self.label = QtGui.QLabel(self.groupBox) - self.label.setObjectName("label") - self.gridlayout4.addWidget(self.label, 0, 0, 1, 1) + self.gridlayout3 = QtGui.QGridLayout(self.groupBox) + self.gridlayout3.setObjectName("gridlayout3") self.listWidget = QtGui.QListWidget(self.groupBox) self.listWidget.setObjectName("listWidget") - self.gridlayout4.addWidget(self.listWidget, 1, 0, 1, 1) - self.gridlayout1.addWidget(self.groupBox, 1, 0, 1, 2) - self.gridlayout.addWidget(self.frame, 0, 0, 1, 1) + self.gridlayout3.addWidget(self.listWidget, 4, 0, 1, 1) + self.label = QtGui.QLabel(self.groupBox) + self.label.setObjectName("label") + self.gridlayout3.addWidget(self.label, 3, 0, 1, 1) + self.groupBox_4 = QtGui.QGroupBox(self.frame) + self.groupBox_4.setGeometry(QtCore.QRect(10, 130, 411, 231)) + self.groupBox_4.setObjectName("groupBox_4") + self.checkBox = QtGui.QCheckBox(self.groupBox_4) + self.checkBox.setGeometry(QtCore.QRect(20, 20, 331, 22)) + self.checkBox.setChecked(True) + self.checkBox.setObjectName("checkBox") + self.label_3 = QtGui.QLabel(self.groupBox_4) + self.label_3.setGeometry(QtCore.QRect(50, 44, 221, 17)) + self.label_3.setObjectName("label_3") + self.spinBox = QtGui.QSpinBox(self.groupBox_4) + self.spinBox.setGeometry(QtCore.QRect(270, 40, 55, 27)) + self.spinBox.setMinimum(1) + self.spinBox.setMaximum(365) + self.spinBox.setProperty("value", 30) + self.spinBox.setObjectName("spinBox") + self.label_4 = QtGui.QLabel(self.groupBox_4) + self.label_4.setGeometry(QtCore.QRect(329, 45, 67, 17)) + self.label_4.setObjectName("label_4") + self.checkBox_2 = QtGui.QCheckBox(self.groupBox_4) + self.checkBox_2.setGeometry(QtCore.QRect(49, 78, 301, 22)) + self.checkBox_2.setObjectName("checkBox_2") + self.textEdit = QtGui.QTextEdit(self.groupBox_4) + self.textEdit.setGeometry(QtCore.QRect(50, 129, 331, 81)) + self.textEdit.setObjectName("textEdit") + self.label_5 = QtGui.QLabel(self.groupBox_4) + self.label_5.setGeometry(QtCore.QRect(50, 107, 61, 17)) + self.label_5.setObjectName("label_5") + self.gridlayout.addWidget(self.frame, 0, 1, 1, 1) self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog) @@ -75,4 +101,10 @@ class Ui_Dialog(object): self.label_2.setText(QtGui.QApplication.translate("Dialog", "Which messages to show:", None, QtGui.QApplication.UnicodeUTF8)) self.groupBox.setTitle(QtGui.QApplication.translate("Dialog", "Monitor button presses on devices", None, QtGui.QApplication.UnicodeUTF8)) self.label.setText(QtGui.QApplication.translate("Dialog", "Devices to monitor:", None, QtGui.QApplication.UnicodeUTF8)) + self.groupBox_4.setTitle(QtGui.QApplication.translate("Dialog", "Update Settings", None, QtGui.QApplication.UnicodeUTF8)) + self.checkBox.setText(QtGui.QApplication.translate("Dialog", "Check for HPLIP Updates", None, QtGui.QApplication.UnicodeUTF8)) + self.label_3.setText(QtGui.QApplication.translate("Dialog", "Repeat Check for Updates every ", None, QtGui.QApplication.UnicodeUTF8)) + self.label_4.setText(QtGui.QApplication.translate("Dialog", "Days", None, QtGui.QApplication.UnicodeUTF8)) + self.checkBox_2.setText(QtGui.QApplication.translate("Dialog", "Check when ever new version available", None, QtGui.QApplication.UnicodeUTF8)) + self.label_5.setText(QtGui.QApplication.translate("Dialog", "Status:", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/ui4/systrayframe_base.ui b/ui4/systrayframe_base.ui index eb8280039..68e2d0d37 100644 --- a/ui4/systrayframe_base.ui +++ b/ui4/systrayframe_base.ui @@ -1,115 +1,242 @@ -<ui version="4.0" > +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> <class>Dialog</class> - <widget class="QDialog" name="Dialog" > - <property name="geometry" > + <widget class="QDialog" name="Dialog"> + <property name="geometry"> <rect> <x>0</x> <y>0</y> - <width>500</width> - <height>540</height> + <width>476</width> + <height>653</height> </rect> </property> - <property name="windowTitle" > + <property name="windowTitle"> <string>Dialog</string> </property> - <layout class="QGridLayout" > - <item row="0" column="0" > - <widget class="QFrame" name="frame" > - <property name="frameShape" > + <layout class="QGridLayout"> + <item row="0" column="1"> + <widget class="QFrame" name="frame"> + <property name="frameShape"> <enum>QFrame::StyledPanel</enum> </property> - <property name="frameShadow" > + <property name="frameShadow"> <enum>QFrame::Raised</enum> </property> - <layout class="QGridLayout" > - <item row="0" column="0" > - <widget class="QGroupBox" name="groupBox_2" > - <property name="title" > - <string>System tray icon visibility</string> - </property> - <layout class="QGridLayout" > - <item row="0" column="0" > - <widget class="QRadioButton" name="radioButton" > - <property name="text" > - <string>Always show</string> - </property> - </widget> - </item> - <item row="1" column="0" > - <widget class="QRadioButton" name="radioButton_2" > - <property name="text" > - <string>Hide when inactive</string> - </property> - </widget> - </item> - <item row="2" column="0" > - <widget class="QRadioButton" name="radioButton_3" > - <property name="text" > - <string>Always hide</string> - </property> - </widget> - </item> - </layout> - </widget> - </item> - <item row="0" column="1" > - <widget class="QGroupBox" name="groupBox_3" > - <property name="title" > - <string>System tray icon messages</string> - </property> - <layout class="QGridLayout" > - <item row="0" column="0" > - <widget class="QLabel" name="label_2" > - <property name="text" > - <string>Which messages to show:</string> - </property> - </widget> - </item> - <item row="1" column="0" > - <widget class="QComboBox" name="MessageShowComboBox" /> - </item> - <item row="2" column="0" > - <spacer> - <property name="orientation" > - <enum>Qt::Vertical</enum> - </property> - <property name="sizeType" > - <enum>QSizePolicy::Minimum</enum> - </property> - <property name="sizeHint" > - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - </item> - <item row="1" column="0" colspan="2" > - <widget class="QGroupBox" name="groupBox" > - <property name="title" > - <string>Monitor button presses on devices</string> - </property> - <property name="checkable" > - <bool>true</bool> - </property> - <layout class="QGridLayout" > - <item row="0" column="0" > - <widget class="QLabel" name="label" > - <property name="text" > - <string>Devices to monitor:</string> - </property> - </widget> - </item> - <item row="1" column="0" > - <widget class="QListWidget" name="listWidget" /> - </item> - </layout> - </widget> - </item> - </layout> + <widget class="QGroupBox" name="groupBox_2"> + <property name="geometry"> + <rect> + <x>11</x> + <y>11</y> + <width>201</width> + <height>114</height> + </rect> + </property> + <property name="title"> + <string>System tray icon visibility</string> + </property> + <layout class="QGridLayout"> + <item row="0" column="0"> + <widget class="QRadioButton" name="radioButton"> + <property name="text"> + <string>Always show</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QRadioButton" name="radioButton_2"> + <property name="text"> + <string>Hide when inactive</string> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QRadioButton" name="radioButton_3"> + <property name="text"> + <string>Always hide</string> + </property> + </widget> + </item> + </layout> + </widget> + <widget class="QGroupBox" name="groupBox_3"> + <property name="geometry"> + <rect> + <x>232</x> + <y>11</y> + <width>197</width> + <height>136</height> + </rect> + </property> + <property name="title"> + <string>System tray icon messages</string> + </property> + <layout class="QGridLayout"> + <item row="0" column="0"> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>Which messages to show:</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QComboBox" name="MessageShowComboBox"/> + </item> + <item row="2" column="0"> + <spacer> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType"> + <enum>QSizePolicy::Minimum</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>40</height> + </size> + </property> + </spacer> + </item> + </layout> + </widget> + <widget class="QGroupBox" name="groupBox"> + <property name="geometry"> + <rect> + <x>10</x> + <y>385</y> + <width>411</width> + <height>241</height> + </rect> + </property> + <property name="title"> + <string>Monitor button presses on devices</string> + </property> + <property name="checkable"> + <bool>true</bool> + </property> + <layout class="QGridLayout"> + <item row="4" column="0"> + <widget class="QListWidget" name="listWidget"/> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label"> + <property name="text"> + <string>Devices to monitor:</string> + </property> + </widget> + </item> + </layout> + </widget> + <widget class="QGroupBox" name="groupBox_4"> + <property name="geometry"> + <rect> + <x>10</x> + <y>130</y> + <width>411</width> + <height>231</height> + </rect> + </property> + <property name="title"> + <string>Update Settings</string> + </property> + <widget class="QCheckBox" name="checkBox"> + <property name="geometry"> + <rect> + <x>20</x> + <y>20</y> + <width>331</width> + <height>22</height> + </rect> + </property> + <property name="text"> + <string>Check for HPLIP Updates</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + <widget class="QLabel" name="label_3"> + <property name="geometry"> + <rect> + <x>50</x> + <y>44</y> + <width>221</width> + <height>17</height> + </rect> + </property> + <property name="text"> + <string>Repeat Check for Updates every </string> + </property> + </widget> + <widget class="QSpinBox" name="spinBox"> + <property name="geometry"> + <rect> + <x>270</x> + <y>40</y> + <width>55</width> + <height>27</height> + </rect> + </property> + <property name="minimum"> + <number>1</number> + </property> + <property name="maximum"> + <number>365</number> + </property> + <property name="value"> + <number>30</number> + </property> + </widget> + <widget class="QLabel" name="label_4"> + <property name="geometry"> + <rect> + <x>329</x> + <y>45</y> + <width>67</width> + <height>17</height> + </rect> + </property> + <property name="text"> + <string>Days</string> + </property> + </widget> + <widget class="QCheckBox" name="checkBox_2"> + <property name="geometry"> + <rect> + <x>49</x> + <y>78</y> + <width>301</width> + <height>22</height> + </rect> + </property> + <property name="text"> + <string>Check when ever new version available</string> + </property> + </widget> + <widget class="QTextEdit" name="textEdit"> + <property name="geometry"> + <rect> + <x>50</x> + <y>129</y> + <width>331</width> + <height>81</height> + </rect> + </property> + </widget> + <widget class="QLabel" name="label_5"> + <property name="geometry"> + <rect> + <x>50</x> + <y>107</y> + <width>61</width> + <height>17</height> + </rect> + </property> + <property name="text"> + <string>Status:</string> + </property> + </widget> + </widget> </widget> </item> </layout> diff --git a/ui4/ui_utils.py b/ui4/ui_utils.py index 37074dfcf..c6f453438 100644 --- a/ui4/ui_utils.py +++ b/ui4/ui_utils.py @@ -23,6 +23,7 @@ import os.path import re import os +import time # Local from base.g import * @@ -122,6 +123,10 @@ class UserSettings(QSettings): self.working_dir = '.' self.voice_phone = '' self.email_address = '' + self.upgrade_notify=True + self.upgrade_last_update_time=0 + self.upgrade_pending_update_time=0 + self.latest_available_version="" self.loadDefaults() @@ -186,6 +191,24 @@ class UserSettings(QSettings): self.voice_phone = unicode(self.value("voice_phone").toString()) self.email_address = unicode(self.value("email_address").toString()) self.endGroup() + + self.beginGroup("upgrade") + self.upgrade_notify= bool(self.value("notify_upgrade").toBool()) + self.latest_available_version=str(self.value("latest_available_version").toString()) + + i, Ok = self.value("last_upgraded_time").toInt() + if Ok and i >0: + self.upgrade_last_update_time =i + else: + self.upgrade_last_update_time = 0 + + i, Ok = self.value("pending_upgrade_time").toInt() + if Ok and i >0 : + self.upgrade_pending_update_time = i + else: + self.upgrade_pending_update_time = 0 + + self.endGroup() def save(self): @@ -222,6 +245,16 @@ class UserSettings(QSettings): self.setValue("voice_phone", QVariant(self.voice_phone)) self.setValue("email_address", QVariant(self.email_address)) self.endGroup() + + self.beginGroup("upgrade") + self.setValue("notify_upgrade", QVariant(self.upgrade_notify)) + if self.upgrade_last_update_time <1: + self.upgrade_last_update_time = time.time() # <---Need to verify code once + + self.setValue("last_upgraded_time", QVariant(self.upgrade_last_update_time)) + self.setValue("pending_upgrade_time", QVariant(self.upgrade_pending_update_time)) + self.endGroup() + self.sync() diff --git a/ui4/upgradedialog.py b/ui4/upgradedialog.py new file mode 100644 index 000000000..c747ff3c0 --- /dev/null +++ b/ui4/upgradedialog.py @@ -0,0 +1,127 @@ +# -*- coding: utf-8 -*- +# +# (c) Copyright 2001-2011 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Authors: Amarnath Chitumalla +# + +#Global +import os +import time + +# Local +from base.g import * +from base import device, utils, pkit +from ui_utils import * + +# Qt +from PyQt4.QtCore import * +from PyQt4.QtGui import * + +# Ui +from upgradedialog_base import Ui_Dialog + +MANUAL_INSTALL_LINK = "http://hplipopensource.com/hplip-web/install/manual/index.html" + + +class UpgradeDialog(QDialog, Ui_Dialog): + def __init__(self, parent, distro_tier, msg): + QDialog.__init__(self, parent) + self.distro_tier = distro_tier + self.msg = msg + self.result = False + self.setupUi(self, distro_tier, msg) + self.initUi() + + + def initUi(self): + # connect signals/slots + self.connect(self.NextButton, SIGNAL("clicked()"), self.NextButton_clicked) + self.connect(self.CancelButton, SIGNAL("clicked()"), self.CancelButton_clicked) +# self.connect (self.comboBox, SIGNAL ("currentIndexChanged (const QString&)"), self.slotIndexChanged) + self.connect(self.installRadioBtton, SIGNAL("toggled(bool)"), self.installRadioBtton_toggled) + self.connect(self.remindRadioBtton, SIGNAL("toggled(bool)"), self.remindRadioBtton_toggled) + self.connect(self.dontRemindRadioBtton, SIGNAL("toggled(bool)"), self.dontRemindRadioBtton_toggled) + + # Application icon + self.setWindowIcon(QIcon(load_pixmap('hp_logo', '128x128'))) + + + def installRadioBtton_toggled(self, radio_enabled): + if radio_enabled is True: + self.installRadioBtton.setChecked(True) + else: + self.installRadioBtton.setChecked(False) + + + def remindRadioBtton_toggled(self, radio_enabled): + if radio_enabled is True: + self.remindRadioBtton.setChecked(True) + self.daysSpinBox.setEnabled(True) + else: + self.remindRadioBtton.setChecked(False) + self.daysSpinBox.setEnabled(False) + + + def dontRemindRadioBtton_toggled(self, radio_enabled): + if radio_enabled is True: + self.dontRemindRadioBtton.setChecked(True) + else: + self.dontRemindRadioBtton.setChecked(False) + + + def NextButton_clicked (self): + if self.dontRemindRadioBtton.isChecked(): + log.debug("HPLIP Upgrade, selected Don't remind again radiobutton") + user_conf.set('upgrade', 'notify_upgrade', 'false') + msg= "Check for HPLIP updates is disabled. To enable it again, change 'Settings' in 'HP systemtray' " + SuccessUI(self, self.__tr(msg)) + + elif self.remindRadioBtton.isChecked(): + schedule_days = str(self.daysSpinBox.value()) + log.debug("HPLIP Upgrade, selected remind later radiobutton days= %d" %(int(schedule_days))) + next_time = time.time() + (int(schedule_days) *24 * 60 *60) + user_conf.set('upgrade', 'pending_upgrade_time', str(int(next_time))) + else: + log.debug("HPLIP Upgrade, selected Install radiobutton distro_type=%d" %self.distro_tier) + self.NextButton.setEnabled(False) + if self.distro_tier != 1: # not tier 1 distro + log.debug("OK pressed for tier 2 distro pressed") + utils.openURL(MANUAL_INSTALL_LINK) + + ## TBD::open browser + else: + terminal_cmd = utils.get_terminal() + if terminal_cmd is not None and utils.which("hp-upgrade"): + cmd = terminal_cmd + " 'hp-upgrade'" + log.debug("cmd = %s " %cmd) + os.system(cmd) + self.result = True + else: + log.error("Failed to run hp-upgrade command from terminal =%s "%terminal_cmd) + ErrorUI(self, self.__tr("Failed to run hp-upgrade")) + + self.close() + + + def CancelButton_clicked(self): + log.debug("User exit") + self.close() + + def __tr(self,s,c = None): + return qApp.translate("UpgradeDialog",s,c) + diff --git a/ui4/upgradedialog_base.py b/ui4/upgradedialog_base.py new file mode 100644 index 000000000..2486f553c --- /dev/null +++ b/ui4/upgradedialog_base.py @@ -0,0 +1,62 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'upgradedialog_base.ui' +# +# Created: Thu Feb 9 18:16:03 2012 +# by: PyQt4 UI code generator 4.7.4 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +class Ui_Dialog(object): + def setupUi(self, Dialog, distro_tier,msg): + self.distro_tier = distro_tier + self.msg= msg + Dialog.setObjectName("Dialog") + Dialog.resize(369, 205) + self.centralwidget = QtGui.QWidget(Dialog) + self.centralwidget.setObjectName("centralwidget") + self.MainLabel = QtGui.QLabel(self.centralwidget) + self.MainLabel.setGeometry(QtCore.QRect(10, 10, 351, 51)) + self.MainLabel.setObjectName("MainLabel") + self.installRadioBtton = QtGui.QRadioButton(self.centralwidget) + self.installRadioBtton.setGeometry(QtCore.QRect(10, 65, 350, 22)) + self.installRadioBtton.setChecked(True) + self.installRadioBtton.setObjectName("installRadioBtton") + self.remindRadioBtton = QtGui.QRadioButton(self.centralwidget) + self.remindRadioBtton.setGeometry(QtCore.QRect(10, 96, 141, 22)) + self.remindRadioBtton.setObjectName("remindRadioBtton") + self.dontRemindRadioBtton = QtGui.QRadioButton(self.centralwidget) + self.dontRemindRadioBtton.setGeometry(QtCore.QRect(10, 126, 161, 22)) + self.dontRemindRadioBtton.setObjectName("dontRemindRadioBtton") + self.daysSpinBox = QtGui.QSpinBox(self.centralwidget) + self.daysSpinBox.setGeometry(QtCore.QRect(152, 94, 55, 27)) + self.daysSpinBox.setMinimum(1) + self.daysSpinBox.setMaximum(365) + self.daysSpinBox.setEnabled(False) + self.daysSpinBox.setObjectName("daysSpinBox") + self.DaysLabel = QtGui.QLabel(self.centralwidget) + self.DaysLabel.setGeometry(QtCore.QRect(211, 98, 67, 21)) + self.DaysLabel.setObjectName("DaysLabel") + self.CancelButton = QtGui.QPushButton(self.centralwidget) + self.CancelButton.setGeometry(QtCore.QRect(270, 160, 91, 31)) + self.CancelButton.setObjectName("CancelButton") + self.NextButton = QtGui.QPushButton(self.centralwidget) + self.NextButton.setGeometry(QtCore.QRect(159, 160, 96, 31)) + self.NextButton.setObjectName("NextButton") + self.retranslateUi(Dialog) + QtCore.QMetaObject.connectSlotsByName(Dialog) + + def retranslateUi(self, Dialog): + Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "HP Upgrade Manager", None, QtGui.QApplication.UnicodeUTF8)) + self.MainLabel.setText(QtGui.QApplication.translate("Dialog", self.msg, None, QtGui.QApplication.UnicodeUTF8)) + self.CancelButton.setText(QtGui.QApplication.translate("Dialog", "Cancel", None, QtGui.QApplication.UnicodeUTF8)) + self.NextButton.setText(QtGui.QApplication.translate("Dialog", "Ok", None, QtGui.QApplication.UnicodeUTF8)) + if self.distro_tier == 1: + self.installRadioBtton.setText(QtGui.QApplication.translate("Dialog", "Download and Install", None, QtGui.QApplication.UnicodeUTF8)) + else: + self.installRadioBtton.setText(QtGui.QApplication.translate("Dialog", "Follow steps from www.hplip.net", None, QtGui.QApplication.UnicodeUTF8)) + self.remindRadioBtton.setText(QtGui.QApplication.translate("Dialog", "Remind me after", None, QtGui.QApplication.UnicodeUTF8)) + self.dontRemindRadioBtton.setText(QtGui.QApplication.translate("Dialog", "Don\'t remind again", None, QtGui.QApplication.UnicodeUTF8)) + self.DaysLabel.setText(QtGui.QApplication.translate("Dialog", "days", None, QtGui.QApplication.UnicodeUTF8)) diff --git a/ui4/upgradedialog_base.ui b/ui4/upgradedialog_base.ui new file mode 100644 index 000000000..15737527a --- /dev/null +++ b/ui4/upgradedialog_base.ui @@ -0,0 +1,143 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>MainWindow</class> + <widget class="QMainWindow" name="MainWindow"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>369</width> + <height>239</height> + </rect> + </property> + <property name="windowTitle"> + <string>MainWindow</string> + </property> + <widget class="QWidget" name="centralwidget"> + <widget class="QPushButton" name="pushButton_2"> + <property name="geometry"> + <rect> + <x>270</x> + <y>160</y> + <width>91</width> + <height>31</height> + </rect> + </property> + <property name="text"> + <string>OK</string> + </property> + </widget> + <widget class="QPushButton" name="pushButton"> + <property name="geometry"> + <rect> + <x>159</x> + <y>160</y> + <width>96</width> + <height>31</height> + </rect> + </property> + <property name="text"> + <string>Cancel</string> + </property> + </widget> + <widget class="QRadioButton" name="radioButton"> + <property name="geometry"> + <rect> + <x>10</x> + <y>65</y> + <width>181</width> + <height>22</height> + </rect> + </property> + <property name="text"> + <string>Download and Install</string> + </property> + </widget> + <widget class="QRadioButton" name="radioButton_2"> + <property name="geometry"> + <rect> + <x>8</x> + <y>96</y> + <width>141</width> + <height>22</height> + </rect> + </property> + <property name="text"> + <string>Remind me after</string> + </property> + </widget> + <widget class="QRadioButton" name="radioButton_3"> + <property name="geometry"> + <rect> + <x>9</x> + <y>126</y> + <width>161</width> + <height>22</height> + </rect> + </property> + <property name="text"> + <string>Don't remind again</string> + </property> + </widget> + <widget class="QSpinBox" name="spinBox"> + <property name="geometry"> + <rect> + <x>152</x> + <y>94</y> + <width>55</width> + <height>27</height> + </rect> + </property> + <property name="minimum"> + <number>1</number> + </property> + <property name="maximum"> + <number>365</number> + </property> + <property name="value"> + <number>30</number> + </property> + </widget> + <widget class="QLabel" name="label"> + <property name="geometry"> + <rect> + <x>211</x> + <y>98</y> + <width>67</width> + <height>21</height> + </rect> + </property> + <property name="text"> + <string>days</string> + </property> + </widget> + <widget class="QLabel" name="label_2"> + <property name="geometry"> + <rect> + <x>10</x> + <y>10</y> + <width>351</width> + <height>51</height> + </rect> + </property> + <property name="text"> + <string>New version of HPLIP-X.X.X is available. +Do you want to install</string> + </property> + </widget> + </widget> + <widget class="QMenuBar" name="menubar"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>369</width> + <height>27</height> + </rect> + </property> + </widget> + <widget class="QStatusBar" name="statusbar"/> + </widget> + <resources/> + <connections/> +</ui> diff --git a/ui4/wifisetupdialog.py b/ui4/wifisetupdialog.py index 7fd232c62..95ea617ac 100644 --- a/ui4/wifisetupdialog.py +++ b/ui4/wifisetupdialog.py @@ -86,10 +86,12 @@ class WifiSetupDialog(QDialog, Ui_Dialog): self.adapterName = 'Wifi0' self.wifiObj = wifi - if self.device_uri is None: - QTimer.singleShot(0, self.showIntroPage) - else: - QTimer.singleShot(0, self.showNetworkPage) + #if self.device_uri is None: + # QTimer.singleShot(0, self.showIntroPage) + #else: + # QTimer.singleShot(0, self.showNetworkPage) + + QTimer.singleShot(0, self.showIntroPage) # @@ -685,6 +687,7 @@ class WifiSetupDialog(QDialog, Ui_Dialog): if row != -1: self.device_uri = self.DevicesTableWidget.item(row, 0).device_uri self.mq = device.queryModelByURI(self.device_uri) + self.getWifiObject(self.mq['wifi-config']) back_end, is_hp, bus, model, serial, dev_file, host, zc, port = device.parseDeviceURI(self.device_uri) self.model = models.normalizeModelName(model).lower() diff --git a/uninstall.py b/uninstall.py new file mode 100755 index 000000000..8b940a859 --- /dev/null +++ b/uninstall.py @@ -0,0 +1,132 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# (c) Copyright 2011-2014 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Amarnath Chitumalla +# + +__version__ = '1.0' +__title__ = 'HPLIP Uninstaller' +__mod__ = 'hp-uninstall' +__doc__ = "Uninstaller for HPLIP ." + +# Std Lib +import getopt, os, sys, re, time + +# Local +from base.g import * +from base import utils, tui +from installer.core_install import * + + +USAGE = [(__doc__, "", "name", True), + ("Usage: %s [OPTIONS]" % __mod__, "", "summary", True), + utils.USAGE_SPACE, + utils.USAGE_OPTIONS, + utils.USAGE_LOGGING1, utils.USAGE_LOGGING2, utils.USAGE_LOGGING3, + ("Non-interactive mode:", "-n (without asking for permission)","option",False), + utils.USAGE_HELP, + ] + + +def usage(typ='text'): + if typ == 'text': + utils.log_title(__title__, __version__) + + utils.format_text(USAGE, typ, __title__, __mod__, __version__) + sys.exit(0) + +mode = INTERACTIVE_MODE +auto = False +log_level = None + + + +log.set_module(__mod__) + + +try: + opts, args = getopt.getopt(sys.argv[1:], 'hl:gn', + ['help', 'help-rest', 'help-man', 'help-desc', 'gui', 'lang=','logging=', 'debug']) + +except getopt.GetoptError, e: + log.error(e.msg) + usage() + sys.exit(1) + +if os.getenv("HPLIP_DEBUG"): + log.set_level('debug') + +for o, a in opts: + if o in ('-h', '--help'): + usage() + + elif o == '--help-rest': + usage('rest') + + elif o == '--help-man': + usage('man') + + elif o in ('-q', '--lang'): + language = a.lower() + + elif o == '--help-desc': + print __doc__, + sys.exit(0) + + elif o in ('-l', '--logging'): + log_level = a.lower().strip() +# if not log.set_level(log_level): +# usage() + + elif o in ('-g', '--debug'): + log_level = 'debug' +# log.set_level('debug') + + elif o == '-n': + mode = NON_INTERACTIVE_MODE + + +if log_level is not None: + if not log.set_level(log_level): + usage() + +log_file = os.path.normpath('/var/log/hp/hplip-uninstall.log') +if os.getuid() != 0: + log.error("To run 'hp-uninstall' utility, you must have root privileges.(Try using 'sudo' or 'su -c')") + sys.exit(1) + +if os.path.exists(log_file): + os.remove(log_file) + +log.set_logfile(log_file) +log.set_where(log.LOG_TO_CONSOLE_AND_FILE) + +log.debug("Log file=%s" % log_file) +log.debug("euid = %d" % os.geteuid()) + +utils.log_title(__title__, __version__, True) + +log.info("Uninstaller log saved in: %s" % log.bold(log_file)) +log.info("") + +core = CoreInstall(MODE_CHECK, INTERACTIVE_MODE) +core.init() + +core.uninstall(mode) + diff --git a/upgrade.py b/upgrade.py new file mode 100755 index 000000000..11f303a77 --- /dev/null +++ b/upgrade.py @@ -0,0 +1,365 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# (c) Copyright 2011-2014 Hewlett-Packard Development Company, L.P. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Amarnath Chitumalla +# + +__version__ = '1.0' +__title__ = 'HPLIP upgrade latest version' +__mod__ = 'hp-upgrade' +__doc__ = "HPLIP installer to upgrade to latest version." + +# Std Lib +import getopt, os, sys, re, time + +# Local +from base.g import * +from base import utils, tui, module +from installer.core_install import * + + + +USAGE = [(__doc__, "", "name", True), + ("Usage: %s [OPTIONS]" % __mod__, "", "summary", True), + utils.USAGE_SPACE, + utils.USAGE_MODE, + ("Run in interactive mode:", "-i or --interactive (Default)", "option", False), + ("Run in graphical UI mode:", "-u or --gui (future use)", "option", False), + utils.USAGE_SPACE, + utils.USAGE_OPTIONS, + utils.USAGE_HELP, + utils.USAGE_LOGGING1, utils.USAGE_LOGGING2, utils.USAGE_LOGGING3, + ("Check for update and notify:","--notify","option",False), + ("Check only available version:","--check","option",False), + ("Non-interactive mode:","-n(Without asking permissions)(future use)","option",False), + ("Download Path to install from local system:","-p<path>","option", False), + ("Download HPLIP package location:","-d<path> (default location /tmp/)","option", False), + ("Override existing HPLIP installation even if latest vesrion is installed:","-o","option",False), + ("Take options from the file instead of command line:","-f<file> (future use)","option",False) + ] + +def usage(typ='text'): + if typ == 'text': + utils.log_title(__title__, __version__) + + utils.format_text(USAGE, typ, __title__, __mod__, __version__) + sys.exit(0) + +def clean_exit(code=0, waitTerminal=True): + change_spinner_state(True) + mod.unlockInstance() + if CHECKING_ONLY is False and NOTIFY is False and waitTerminal is True: + uInput = raw_input("\npress enter to quit.") + sys.exit(code) + + +def parse_HPLIP_version(hplip_version_file, pat): + ver = "0.0.0" + if not os.path.exists(hplip_version_file): + return ver + + try: + fp= file(hplip_version_file, 'r') + except IOError: + log.error("Failed to get hplip version since %s file is not found."%hplip_version_file) + return ver +# pat = re.compile(r"""HPLIP (.*) Public Release""") + data = fp.read() + for line in data.splitlines(): + if pat.search(line): + ver = pat.search(line).group(1) + break + + log.debug("Latest HPLIP version = %s." % ver) + return ver + + +log.set_module(__mod__) + +mode = INTERACTIVE_MODE +auto = False +HPLIP_PATH=None +TEMP_PATH="/tmp/" +FORCE_INSTALL=False +CHECKING_ONLY=False +NOTIFY=False +HPLIP_SOURCEFORGE_SITE = "http://feed2js.org/feed2js.php?src=http%3A%2F%2Fsourceforge.net%2Fexport%2Frss2_projnews.php%3Fgroup_id%3D149981" +HPLIP_WEB_SITE ="http://hplipopensource.com/hplip-web/index.html" + +try: + mod = module.Module(__mod__, __title__, __version__, __doc__, USAGE, + (INTERACTIVE_MODE, GUI_MODE), + (UI_TOOLKIT_QT3, UI_TOOLKIT_QT4), True, True) + + opts, device_uri, printer_name, mode, ui_toolkit, loc = \ + mod.parseStdOpts('hl:gniup:d:of:', ['notify','check','help', 'help-rest', 'help-man', 'help-desc', 'interactive', 'gui', 'lang=','logging=', 'debug'], + handle_device_printer=False) + + + + mod.lockInstance() +except getopt.GetoptError, e: + log.error(e.msg) + usage() +# sys.exit(1) + +if os.getenv("HPLIP_DEBUG"): + log.set_level('debug') + +for o, a in opts: + if o in ('-h', '--help'): + usage() + + elif o == '--help-rest': + usage('rest') + + elif o == '--help-man': + usage('man') + + elif o in ('-q', '--lang'): + language = a.lower() + + elif o == '--help-desc': + print __doc__, + clean_exit(0,False) + + elif o in ('-l', '--logging'): + log_level = a.lower().strip() + if not log.set_level(log_level): + usage() + + elif o in ('-g', '--debug'): + log.set_level('debug') + + elif o == '-n': + mode = NON_INTERACTIVE_MODE + log.info("NON_INTERACTIVE mode is not yet supported.") + usage() + clean_exit(0,False) + + elif o == '-p': + HPLIP_PATH=a + + elif o == '-d': + TEMP_PATH=a + + elif o == '-o': + FORCE_INSTALL = True + + elif o in ('-u', '--gui'): + log.info("GUI is not yet supported.") + usage() + clean_exit(0, False) + elif o == '--check': + CHECKING_ONLY = True + elif o == '--notify': + NOTIFY = True + elif o == '-f': + log.info("Option from file is not yet supported") + usage() + clean_exit(0, False) + +if not NOTIFY and not CHECKING_ONLY: + mod.quiet= False + mod.showTitle() + +log_file = os.path.normpath('/var/log/hp/hp-upgrade.log') + +if os.path.exists(log_file): + os.remove(log_file) + +log.set_logfile(log_file) +log.set_where(log.LOG_TO_CONSOLE_AND_FILE) + + +log.debug("Upgrade log saved in: %s" % log.bold(log_file)) +log.debug("") +try: + change_spinner_state(False) + core = CoreInstall(MODE_CHECK) +# core.init() + if not core.check_network_connection(): + log.error("Either Internet is not working or Wget is not installed.") + clean_exit(0) + + installed_version=sys_conf.get("hplip","version","0.0.0") + log.debug("HPLIP previous installed version =%s." %installed_version) + + + + HPLIP_latest_ver="0.0.0" + # get HPLIP version info from sourceforge + pat = re.compile(r"""HPLIP (.*) Public Release""") + sts, HPLIP_Ver_file = utils.download_from_network(HPLIP_SOURCEFORGE_SITE) + if sts is True: + HPLIP_latest_ver = parse_HPLIP_version(HPLIP_Ver_file, pat) + + # get HPLIP version info from hplip site + if HPLIP_latest_ver == "0.0.0": ## if failed to connect the sourceforge site, then check HPLIP site. + pat = re.compile(r"""The current version of the HPLIP solution is version (.*)\. \(.*""") + sts, HPLIP_Ver_file = utils.download_from_network(HPLIP_WEB_SITE) + if sts is True: + HPLIP_latest_ver = parse_HPLIP_version(HPLIP_Ver_file, pat) + + if HPLIP_latest_ver == "0.0.0": + log.error("Failed to get latest version of HPLIP.") + clean_exit(0) + + + if CHECKING_ONLY is True: + user_conf.set('upgrade','latest_available_version',HPLIP_latest_ver) + log.debug("Available HPLIP version =%s."%HPLIP_latest_ver) + elif NOTIFY is True: + user_conf.set('upgrade','latest_available_version',HPLIP_latest_ver) + if not utils.Is_HPLIP_older_version(installed_version, HPLIP_latest_ver): + log.debug("Latest version of HPLIP is already installed.") + else: + + msg = "Latest version of HPLIP-%s is available."%HPLIP_latest_ver + if core.is_auto_installer_support(): + distro_type= 1 + else: + distro_type= 2 + + + if ui_toolkit == 'qt3': + if not utils.canEnterGUIMode(): + log.error("%s requires GUI support. Is Qt3 Installed?.. Exiting." % __mod__) + clean_exit(1) + + try: + from qt import * + from ui.upgradeform import UpgradeForm + except ImportError: + log.error("Unable to load Qt3 support. Is it installed? ") + clean_exit(1) + + + # create the main application object + app = QApplication(sys.argv) + QObject.connect(app, SIGNAL("lastWindowClosed()"), app, SLOT("quit()")) + dialog = UpgradeForm(None, "",0,0,distro_type, msg) + dialog.show() + + log.debug("Starting GUI loop...") + app.exec_loop() + + + else: #qt4 + if not utils.canEnterGUIMode4(): + log.error("%s requires GUI support . Is Qt4 installed?.. Exiting." % __mod__) + clean_exit(1) + + try: + from PyQt4.QtGui import QApplication, QMessageBox + from ui4.upgradedialog import UpgradeDialog + except ImportError: + log.error("Unable to load Qt4 support. Is it installed?") + clean_exit(1) + + app = QApplication(sys.argv) + dialog = UpgradeDialog(None, distro_type, msg) + + + dialog.show() + log.debug("Starting GUI loop...") + app.exec_() + + else: + if FORCE_INSTALL is False: + if utils.Is_HPLIP_older_version(installed_version, HPLIP_latest_ver): + ok,choice = tui.enter_choice("\nPress 'y' to continue to upgrade HPLIP-%s (y=yes*, n=no):"%HPLIP_latest_ver, ['y','n'],'y') + if not ok or choice == 'n': + clean_exit(0, False) + else: + log.info("Latest version of HPLIP is already installed.") + clean_exit(0,False) + + # check distro information. + if not core.is_auto_installer_support(): + log.info("Please install HPLIP manually as mentioned in 'http://hplipopensource.com/hplip-web/install/manual/index.html' site") + clean_exit(0) + + # check systray is running? + status,output = utils.Is_Process_Running('hp-systray') + if status is True: + ok,choice = tui.enter_choice("\nSome HPLIP applications are running. Press 'y' to close applications or press 'n' to quit upgrade(y=yes*, n=no):",['y','n'],'y') + if not ok or choice =='n': + log.info("Manually close HPLIP applications and run hp-upgrade again.") + clean_exit(0, False) + + try: + # dBus + #import dbus + from dbus import SystemBus, lowlevel + except ImportError: + log.error("Unable to load DBus.") + pass + else: + try: + args = ['', '', EVENT_SYSTEMTRAY_EXIT, prop.username, 0, '', ''] + msg = lowlevel.SignalMessage('/', 'com.hplip.StatusService', 'Event') + msg.append(signature='ssisiss', *args) + log.debug("Sending close message to hp-systray ...") + SystemBus().send_message(msg) + time.sleep(0.5) + except: + log.error("Failed to send DBus message to hp-systray/hp-toolbox.") + pass + + + toolbox_status,output = utils.Is_Process_Running('hp-toolbox') +# systray_status,output = utils.Is_Process_Running('hp-systray') + if toolbox_status is True: + log.error("Failed to close either HP-Toolbox/HP-Systray. Manually close and run hp-upgrade again.") + clean_exit(0) + + + if HPLIP_PATH is not None: + if os.path.exists(HPLIP_PATH): + download_file = HPLIP_PATH + else: + log.error("%s file is not present. Downloading from Net..." %HPLIP_PATH) + HPLIP_PATH = None + + if HPLIP_PATH is None: + url="http://sourceforge.net/projects/hplip/files/hplip/%s/hplip-%s.run/download" %(HPLIP_latest_ver, HPLIP_latest_ver) + download_file = None + if TEMP_PATH: + download_file = "%s/hplip-%s.run" %(TEMP_PATH,HPLIP_latest_ver) + log.info("Downloading hplip-%s.run file..... Please wait. "%HPLIP_latest_ver ) + sts,download_file = utils.download_from_network(url, download_file, True) + + if not os.path.exists(download_file): + log.error("Failed to download %s file."%download_file) + clean_exit() + + # Installing hplip run. + cmd = "sh %s" %(download_file) + log.debug("Upgrading %s and cmd =%s " %(download_file, cmd)) + os.system(cmd) + + change_spinner_state(True) + mod.unlockInstance() +# log.info("HPLIP upgrade is completed") +except KeyboardInterrupt: + change_spinner_state(True) + mod.unlockInstance() + log.error("User exit") + |