|
Bugzilla – Full Text Bug Listing |
| Summary: | YaST finds and selects non-matching PPDs | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE 10.2 | Reporter: | Glenn Holmer <gholmer> |
| Component: | Printing | Assignee: | Michal Zugec <mzugec> |
| Status: | RESOLVED FIXED | QA Contact: | Johannes Meixner <jsmeix> |
| Severity: | Major | ||
| Priority: | P5 - None | ||
| Version: | Alpha 5 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Other | ||
| Whiteboard: | |||
| Found By: | Other | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: | y2log after printer re-installing printer | ||
|
Description
Glenn Holmer
2006-10-08 12:02:36 UTC
Seems to be because package "hplip" didn't get installed, but installing it manually poses another problem: even though I select "HP / DeskJet 6840", the driver that gets loaded is for the 6800. There is a driver in hplip for the 6840: shadow@shoggoth:~> rpm -ql hplip | grep 6840 /usr/share/cups/model/manufacturer-PPDs/hplip/HP-DeskJet_6840-hpijs.ppd.gz In any case, I don't get any output, and /etc/cups/printers.conf contains this: State Stopped StateMessage Filter "foomatic-rip" for printer "hp6840" not available: Too many levels of symbolic links Strange "Too many levels of symbolic links" message. /usr/lib/cups/filter/foomatic-rip should be only one level of symbolic link to /usr/bin/foomatic-rip Can you do on your system what I did on my system --------------------------------------------------------------------------- root@host# type -a foomatic-rip foomatic-rip is /usr/bin/foomatic-rip root@host# cd /usr/lib/cups/filter/ root@host# file foomatic-rip foomatic-rip: symbolic link to `../../../bin/foomatic-rip' root@host# file ../../../bin/foomatic-rip ../../../bin/foomatic-rip: perl script text --------------------------------------------------------------------------- and report the results of your system. shoggoth:~ # type -a foomatic-rip foomatic-rip is /usr/bin/foomatic-rip shoggoth:~ # cd /usr/lib/cups/filter shoggoth:/usr/lib/cups/filter # file foomatic-rip foomatic-rip: broken symbolic link to `foomatic-rip' shoggoth:/usr/lib/cups/filter # file ../../../bin/foomatic-rip ../../../bin/foomatic-rip: perl script text shoggoth:/usr/lib/cups/filter # ls -l foomatic-rip lrwxrwxrwx 1 root root 12 Oct 7 09:15 foomatic-rip -> foomatic-rip shoggoth:/usr/lib/cups/filter # There is a wrong link in the foomatic-filters package! To fix it now, do: cd /usr/lib/cups/filter ln -s ../../../bin/foomatic-rip foomatic-rip I meant cd /usr/lib/cups/filter rm foomatic-rip ln -s ../../../bin/foomatic-rip foomatic-rip Please test and report whether it works for you then. Submitted fixed foomatic-filters package to STABLE. Filed seperated bug #210984 because package "hplip" didn't get installed. It produces good output after fixing the symlink, but even though I selected the 6840 driver, YaST still shows using HP-DeskJet_6800-hpijs.ppd.gz. /usr/share/cups/model/manufacturer-PPDs/hplip does contain an HP-DeskJet_6840-hpijs.ppd.gz (in addition to the 6800). On 10.1 it shows the 6840 driver. /usr/share/cups/model/manufacturer-PPDs/hplip/HP-DeskJet_6800-hpijs.ppd.gz and /usr/share/cups/model/manufacturer-PPDs/hplip/HP-DeskJet_6840-hpijs.ppd.gz are identical regarding the "DeviceModel" entry (both have DeviceModel 'deskjet 5600') and the differences in both PPDs are only about the model names - the rest is identical. This is because both models are internally the same (they belong to the same "device/print class" DJGenericVIP), see the HP documentation /usr/share/doc/packages/hplip/supported_devices/inkjet.html and /usr/share/doc/packages/hplip/tech_docs/device_classes.html Therefore it does not really matter in this particular case which PPD you use. Nevertheless there may be a problem which PPDs YaST assigns to a specific model. Therefore I am interested to find out why YaST does not assign the 100% correct PPD in your case: YaST finds matching PPDs by comparing the autodetected model string with the "ModelName" entry in the PPDs. The "ModelName" entries are: *ModelName: "HP DeskJet 6800" *ModelName: "HP DeskJet 6840" so that the question is now what the autodetected model string is. This depends on how your printer is connected to the system. If it is via USB then attach the output of lsusb -v as plain text attachment to this bug. Furthermore attach also the output of hwinfo --printer as plain text attachment to this bug. Furthermore we need the YaST log for exactly one setup of your printer: Please provide the YaST log file as follows: 1. Have a clean state to start: Remove all your print queues in YaST and finish YaST. 2. Move the old YaST log file away: mv /var/log/YaST2/y2log /var/log/YaST2/y2log.old 3. Start YaST and do again setup your pinter. Finish YaST and save the log file: cp -p /var/log/YaST2/y2log /var/log/YaST2/y2log.save 4. Attach /var/log/YaST2/y2log.save as attachment with mime type "text plain" to this bug. Created attachment 101104 [details]
y2log after printer re-installing printer
The printer is network attached ("Print Directly to Network Printer").
Michal, there is the problem that YaST seems to find and select an incorrect PPD file, see starting at comment #8. Even if it doesn't matter for this particular printer, it is a major problem if this would happen for other printer models too. I increase severity to major because at the moment it seems YaST might find and select really wrong PPDs for a given model which would result non-working print queues. In attachment #101104 [details] there is: ------------------------------------------------------------------------------ Printerdb.ycp:615 Sorted PPD files for HP:DESKJET6840: ["/usr/share/cups/model/manufacturer-PPDs/hplip/HP-DeskJet_6800-hpijs.ppd.gz", "/usr/share/cups/model/manufacturer-PPDs/hplip/HP-DeskJet_6840-hpijs.ppd.gz"] ... Printerdb.ycp:666 Selected file: /usr/share/cups/model/manufacturer-PPDs/hplip/HP-DeskJet_6800-hpijs.ppd.gz ------------------------------------------------------------------------------ I do not understand why YaST selects HP-DeskJet_6800-hpijs.ppd.gz which has the ModelName entry "HP DeskJet 6800" when the user has manually chosen the model "HP:DESKJET6840" which should match perfectly to HP-DeskJet_6840-hpijs.ppd.gz which has the ModelName entry "HP DeskJet 6840". I also do not understand why YaST finds HP-DeskJet_6800-hpijs.ppd.gz as a matching PPD for the model "DESKJET6840" at all because the ModelName entry in this PPD should not match at all. fixed in yast2-printer-2.14.7 |