Also,  I forgot to clarify which gtkrc you needed to edit:
This should go into ~/.gtkrc-2.0:

gtk-print-backends = "file,lpr,cups"

This is supposedly important. Be sure to save the original so you can roll back.

On Sun, Mar 18, 2012 at 4:09 PM, Lisa Kachold <lisakachold@obnosis.com> wrote:


On Sun, Mar 18, 2012 at 2:07 PM, Mark Phillips <mark@phillipsmarketing.biz> wrote:


On Sun, Mar 18, 2012 at 12:53 PM, Lisa Kachold <lisakachold@obnosis.com> wrote:
Hi Mark

On Sun, Mar 18, 2012 at 11:51 AM, Mark Phillips <mark@phillipsmarketing.biz> wrote:


On Sun, Mar 18, 2012 at 10:01 AM, Lisa Kachold <lisakachold@obnosis.com> wrote:
Hi Mark

On Sun, Mar 18, 2012 at 7:49 AM, Mark Phillips <mark@phillipsmarketing.biz> wrote:
I have Firefox 11.0 installed, as well as Google Chrome 17.0.963.65, Opera, and of course, Epiphany on my Debian testing machine. I use cups for printing over the network to my hp printer. Chrome, Opera, Epiphany all recognize all the installed printers on my network, but Firefox does not see any of them. I don't even have the print to file option that most posts on the subject talk about. When I look in firefox's about:config at all the print* settings, the printer is there, but it does not show up in the print dialog and I cannot print from firefox.
Anyone else have this problem, and know how to solve it?

Thanks,

Mark


Reference:  http://wiki.debian.org/SystemPrinting

A) Have you logged into Cups to see if there is an error?

http://localhost:631

WHAT IS THE ERROR message in the logs?

Yes, I have looked at the cups error logs as well as the admin portal. There are no errors from firefox, since it never sees any of the printers. All other applications (browsers, libreoffice, etc.) print without errors.

<snip>

B) If this is a "permissions issue", you might have to add the Firefox invoking user to the group file: 
sudo usermod -a -G lpadmin tom
firefox is running under user mark, and I am in the lpadmin group

C) Are you using a postscript printer?  I see you are using printers that require postscript, but cups and GTK should work.

gnome gtklp runs and finds all the printers.


Also, why would the type of printer make a difference? If cups can print to that printer, why would firefox care, unless firefox doesn't use cups?
 
Firefox (like all prebuilt binaries) can be sensitive to GTK issues.

Firefox:
1. First, if you haven't done so, you need to print to PostScript in order for the needed entry in prefs.js to be populated. This will be done automatically the first time you print. Open any web page and go to:

File --> Print --> choose PostScript/default (it should be the default if you haven't installed any printers yet) --> click "Print"

The problem is that there are no printers int he File --> Print dialog, so nothing to print to.

There are known issues with Mozilla and GTK that present this SAME way:  https://bugzilla.mozilla.org/show_bug.cgi?id=430818 
If you read that post they discuss reinstalling another version of GTK.

Did you verify the GTK?

Did you check for the gtkrc file? 

I have a lot of gtkrc files -
locate gtkrc
<snip>
 
Please try:
# "locate gtk-2.0"

 

You didn't give us your exact distro (there are many debian testing versions) so I could not be sure this was not the Firefox gtk bug:

E.  If you have an older version of debian (known gtk bug issues) you might try (verify) this:

1. From the terminal change into the gtk-2.0 directory...
cd /etc/gtk-2.0  [if you have a different version,check for the gtkrc file as in 2.]

2. Use sudo and a text editor (my editor of choice is "vi") to create the gtkrc file in the /etc/gtk-2.0 directory...
sudo vi gtkrc

3. Add the following to your newly-created gtkrc file...
gtk-print-backends="lpr,file"

4. Exit the text editor and save your newly-created gtkrc file.

5. Re-start your computer to incorporate the changes.  [Not sure why they suggest this step, but it's in all the posts...]

6. Re-open firefox and you should be able to print to "lpr" from it!


Set the default printer:

lpoptions -d printer-name

The ‘d’ option sets the default printer.

If your shell is bash (which is the most common), you’d use the syntax in your ~/.bashrc file:

export PRINTER=printer-name



I can print from the command line with lpr with no problem. If I go to about:config in firefox, my printer is there with all its different options. But the line print.printer_list is empty. The print.print_command has lpr ${MOZ_PRINTER_NAME:+-P"$MOZ_PRINTER_NAME"}, so I know it is trying to use lpr (same as the print.postscrip.print_command). But lpr works from the command line.
 
A command line print to lpr is a completely different program etc. 
If you didn't do the two options above, adding your default printer name, how can you expect it to be inherited in firefox as the variable name MOZ_PRINTER_NAME? Also add to your ~.bashrc file:

export MOZ_PRINTER_NAME=printer-name

There are a few links that indicate an UPGRADE will break printers.  Is this a Firefox upgrade?



It seems to be that firefox is not finding the list of printers from wherever it is supposed to find them, and so it cannot print.

Right....let's reset the printer:

As a first step, reset the selected printer in your Firefox preferences:

  1. Type about:config in the Location Bar and press Enter. A list of preferences will appear.
  2. Find the preference print.print_printer (Note: this preference is missing in Firefox profiles where you've never used the printer.)
  3. Right-click (context-click) that preference and select Reset. (Some users may need to reset all the print.printer preferences for a particular printer, if resetting this one master preference doesn't solve the problem.)
  4. Restart Firefox and see if the problem is resolved.
about:config does not have a print.print_printer entry.

Correct, Mark, if you upgraded Mozilla or never used this Firefox printer yet, you are not going to see it (that's what that red means up there...)


I tried adding a print.print_printer entry, and then reset it, but it is just an empty string. There are no instructions on how to manually add the printer.....the red text was not very helpful. (I don't mean you are not helpful, just I ran across this info earlier in one of my many google searches on this problem, and found the red text somewhat humorous and not very helpful). 

Try setting your print.print_printer to Officejet_Pro_L7600

Note: If you get the warning dialog, "Printing failed when starting the document" and if the print.print_printer preference has no printer shown, either you don't have a printer selected, or Firefox doesn't know it is installed on your system.

Be sure you have added the ~/.bashrc entries above.


Follow this instruction to reset by double clicking on print.print_printer and setting your default:  http://www.linuxquestions.org/questions/linux-newbie-8/firefox-not-seeing-cups-printers-869422/   My default printer is already installed, since I can print from the command line using lpr.

Mark, your printer is not installed for FIREFOX!  Forget your lpr command line printing <laugh>!
It is not installed for Firefox.


When I run lpoptions, I get
auth-info-required=none collate=false ColorModel=RGB copies=1 device-uri=hp:/net/Officejet_Pro_L7600?ip=192.168.25.102 Duplex=None finishings=3 InputSlot=Auto job-hold-until=no-hold job-priority=50 job-sheets=none,none marker-change-time=0 MediaType=Automatic number-up=1 number-up-layout=btlr OptionDuplex=False OutputMode=Normal outputorder=normal PageSize=Letter position=center printer-commands=none printer-info=Officejet_Pro_L7600 printer-is-accepting-jobs=true printer-is-shared=true printer-location=office printer-make-and-model='HP Officejet Pro l7600, hpcups 3.11.12' printer-state=3 printer-state-change-time=1332096319 printer-state-reasons=none printer-type=167948 printer-uri-supported=ipp://localhost:631/printers/Officejet_Pro_L7600 wrap=false
 


Respond with logs and test output with exact versions please?

What is:
# uname -a
Linux orca 3.1.0-1-amd64 #1 SMP Tue Jan 10 05:01:58 UTC 2012 x86_64 GNU/Linux

Do you have a 64bit distro? 
Yes
If so, Firefox cannot use the 64bit GTK (another bug); just install the 32 bit.
It is installed - /usr/lib32/libgtk2.0-0

Please give us an idea what linker libs Firefox needs using:

# ldd $PATH/$FIREFOX.bin
 
<snip>
 

But just manually adding or resetting your Firefox printer (if everything else is normal) (after upgrade) should fix it.

I guess I expect it to find all the printers, and not make me add them manually, like every other program. I would add it manually, if I knew how! I have tried various combinations of Officejet_Pro_L7600 (see the lpoptions output above), and then resetting firefox, but it never shows up in the printing dialog. I have also tried the option of using gtklp instead of lpr in the print.print_command option, but no luck there either.

Gee, if you reset all those options and restart Firefox, (after adding the "default lpr" and .bashrc entries) and you still don't see a printer, please reply with the ldd info, so we can verify which GTK libs and linkers it's needing?


Thanks for the suggestions!

Mark




--
(503) 754-4452 Android
(623) 239-3392 Skype
(623) 688-3392 Google Voice
**
it-clowns.com