HomePage > ComponentHowTo Components and HowTos > PrintersScanners Printers and Scanners

Further Question when using a Printer with Puppy Linux


Printing to a printer on another computer on your network?
If you want to print to a linux compatible printer (i.e. you have a driver, so you can install it if you connect it to your Puppy machine), shared from a Windows computer, go to http://localhost:631 the CUPS configuration page to add a new printer. Under device, specify "windows printer via SAMBA", and for the URI: smb://exact-name-or-IP-address-of-computer-attached-to-the-printer/exact-name-of-printer using the names as shown in LinNeighborhood. Choose the printer make and model, and you should be away. Prior to Puppy 3, you might (I'm not sure) need to download and extract smbspool to /usr/bin. To ensure Puppy automatically sees the printer, you probably need to add the URI as a line at the end of /etc/rc.d/rc.local. If you have a version of Puppy older than 2.17, and do not want to install CUPS, see here.


To print to a printer that is connected to another computer running Puppy, either read the 3rd post here, or if you've installed the full version of Samba on the "server", you can share the printer through Samba, and then connect to it the same way as to a Windows printer:

Sharing the printer connected to your Puppy computer, so that other computers (Windows or Linux) can print to it?
To use SAMBA and CUPS, to share a printer just like Windows does: http://murga-linux.com/puppy/viewtopic.php?t=22363
If you do not have CUPS, I think it is still supposed to be trivial, but I don't know how :)
I believe you can also share a printer with other Linux (and maybe Windows) computers without having SAMBA :)


Printing to a printer other than default?
Many programs like Seamonkey allow you to choose a printer when you print. For those that don't, like Leafpad, you print to the default printer with the lpr command, but you can print to another printer with a custom command. ~For example, I have two printers, called hp and CUPS-PDF. I can specify a printer with the command lpr -P hp or lpr -P CUPS-PDF.


Other printing options?
Printing some pages of a document:
lpr -o page-ranges=1-4,7,9-12
lpr -o page-set=odd
lpr -o page-set=even
Printing pages in reverse order:
lpr -o outputorder=reverse
Printing more than one page to a sheet:
lpr -o number-up=1
lpr -o number-up=2
lpr -o number-up=4
lpr -o number-up=16
There are all sorts of other options (see the CUPS manual mentioned below - if you have CUPS). You would combine options like this:
lpr -P hp -o page-ranges=1,3-9 outputorder=reverse number-up=2


CUPS Printing (default in Puppies from version 2.17)?
From version 2.17, PDQ has been replaced by CUPS printing (Barry is talking about having both as some people say CUPS won't work for them). If you want CUPS in an older Puppy, Pakt created a CUPS dotpup. It is large (19MB), and cannot be uninstalled. It works even with very old Puppies (at least back to 1.04).


CUPS is an industrial strength application, so is has lots more functionality than most people need. You should be able to get to the software users manual from the web interface, but if Barry has taken the docs out of Puppy send me (disciple) a message on the forum and I'll post the important stuff here or on the forum. Most of what you want starts here - mostly sections 2 and 3.


CUPS administration is usually done in a web browser at http://localhost:631/admin, but there is a small GTK gui called GTKLP. This seems much more convenient, but cannot be used to add printers. It also includes GTKLPQ for managing printer queues. I don't know if Barry will add GTKLP to Puppy.

When I print from xxx program (eg Seamonkey, Firefox) and select a paper size, it does not work?
At least sometimes (with CUPS anyway) you have to set the correct page size in CUPS, otherwise what you print will either just come out at the size set in CUPS, or will be scaled down to the size you specify, but be put on the paper size specified in CUPS. This is noticeable when printing to PDF. The solution is to set the right page size for the printer in CUPS.


I ran the Printer Wizard and I can now print from Firefox, Xpaint and Abiword, but I can't print a plain text file, nor Postscript or PDF files?
Printing support in Puppy is a work-in-progress. For now, the PDQ print manager handles Postscript files only, to any kind of printer, Postscript or otherwise. Firefox, Xpaint and Abiword convert to Postscript before sending to the PDQ print manager (note, the program lpr is a link to program pdq).
Sylpheed, the email client, can also print its plain text emails, as it has been configured to call a little program, /usr/bin/lprshell, which is invoked like this:
# lprshell myfile.txt
lprshell uses Abiword in commandline mode to convert plain text or RTF files to Postscript then print via PDQ. You can also use this script directly to print any plain text or RTF file (printout has the same page layout and font that Abiword is setup for).
If you have a Postscript file, you can open the Xpdq manager and choose the file, then print it (see Utilities menu).
If you have a Postscript or PDF file, open Gsview (also known as Ghostview) from the Utilities menu (or just click on the file in Rox), choose File/Print, choose a generic Postscript printer such as "psmono", check the "Postscript printer" checkbox, the number of pages to print, then print.
Note that the print-dialog box in Gsview brings up a large list of printers, however these are not used in Puppy. These are printers supported by the Ghostscript package, however Puppy is configured to use the GIMP-Print IJS drivers and you will have already chosen a printer IJS driver when you ran the Printer Wizard (and PDQ would have been setup to use this printer as default). So, just choosing a generic Postscript printer in GSview will pass the Postscript file onto PDQ which will print to whatever is your default printer.

Sharing Printers over a network
Puppy 4.3.1, it had CUPS 1.1.23. This version automatically shared its printers with other machines on the network.


In Puppy 5.1, you has CUPS 1.4.x. In this version you need to specify that you want to share a printer. This is done in two places.
1. When you add a printer, there is a checkbox for Share This Printer.
2. Under the Administration tab, look in the Server section. There is a checkbox for Share Printers Connected to this System.



Printing to Windows
"Lupu's CUPS has two protocols for printing to a Windows shared printer. The first, "Windows Printer via SAMBA" is the Puppy standard and uses the smb: backend. However, Barry has introduced an alternate method called "Windows Printer using smbclient" which uses the smbc: backend. This one is broken and requires the following patch:
ln -s /opt/samba/bin/smbclient /usr/bin/smbclient
Both methods work correctly after the patch."

CUPS and Fonts

How to Print to a PDF
To print to a PDF use CUPS-PDF


Categories
CategoryHardware
CategoryTutorial
There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki