Hmmm ...
I'm feeling a little better today ... I see cups still giving the hiccups ... Allow me to assist with the first part:
Solving the device permission denied ie. /dev/lp#
Explanation:
--------------
I traced this back in January and understood the reason for this behaviour. It is not cups fault as I have stated in my old thread. It is due partly to how the kernel handles /dev/lp# ...
Back in the old days, LPT printer was the norm and USB was not. So /dev/lp# points to LPT ... nowadays, USB is the norm and LPT is not. So /dev/lp# now gets assigned to USB printers. This is fine if LPT printers is not going to be used but it starts clashing when both USB and LPT printers wants attention ...
To fix this, we need to reassign these USB and LPT to the previous assignment method. That is USB goes to /dev/usb/lp# and LPT goes to /dev/lp# ... That's the fix I've used in my cups-1.4b2 and cups-retro-1.3.9 pets ...
I haven't had anymore usb+lpt printing problems since then ... this method was tested to work with gutenprint 5.2.3 that ttuuxxx provided earlier ...
For now, I've put cups integration on hold while I sort some other stuffs first ... Its on hold as I have come to realized the gravity of integrating all the latest cups + samba + gutenprint + hpijs + hplip + foo2zjs + etc + etc + etc ... really, whoever doing this will have to sit down and learn each package requirement and how they interact ... I got burnt meself when I thought getting cups to work was peanuts ...
The Fix:
---------
Those /dev/ path assignments can be automatically handled by udevd ... for that to work, I added specific rules to udevd to assign usb and lpt printers dev path appropriately ...
All you have to do now is copy this udevd rules to /etc/udev/rules.d/ and overwrite the old one. Best to reboot your pc to ensure that the new rules is enforced. Alternatively, you can try killall udevd and restart udevd again ... My previous tests seems inconsistent when restarting udevd. Maybe I'm too dumb to properly restart it ... (That is the reason for my earlier cups pet wanting to reboot. Be safe than sorry).
Once the new rules are enforced, usb printers will always be assigned to /dev/usb/lp# and lpt printers will always be assigned to /dev/lp# .... No more problems using either one or both simultaneously ... No more "ttuuxxx, I got a /dev/lp# permission denied" ... At the same time, permissions is automagically fixed at 0666 as required by cups backend .....
Thus this will end once and for all those permission denied related errors.
To the spoolers/printers, there is no difference between the two /dev paths ... they're just links ...
Rgds