= Printing
Frugalware uses the Common Unix Printing System (CUPS) for handling
printers and to manage printing.
== Before you start
Here comes a few advice depending on what manufacturer made your printer.
=== Hewlett-Packard
You need 'hpijs' at least, but you can also install 'hplip' for advanced
HP support. Also if you have got some priter&scanner machine it's a good idea
to use 'hplip'.
=== Canon
Most likely you need one of the bjfilter packages. The following list tell
you which package you should use.
* bjfilter-2.2: Canon Pixus 550i / 850i / 950i (i550 / i850 / i950) and iP90 Driver
* bjfilter-2.4: Canon Pixus 560i / 860i / 960i (i560 / i860 / i960) Driver
* bjfilter-2.5: Canon Pixus iP3100 / iP4100 / iP8600 (and Pixma iP1000 / iP1500) Driver
* bjfilter: Canon Pixus iP2200 / iP4200 / iP6600D / iP7500 / MP500 Driver
Please report us if your printer does not listed or listed, but in the wrong line!
=== Epson
If you own an Epson Color InkJet Printer you need the 'pipslite' package. After
installing the package do not forget to restart 'cups' and start the 'ekp' daemon!
-------------------------
sudo service cups restart
sudo service ekpd start
sudo service ekpd add
-------------------------
NOTE: Till now nobody confirmed that this package actually works.
=== Samsung
The Samsung printer driver for cups is called 'splix'. After installing it and restarting
'cups' you will find your printer when you add it in 'cups'.
== Configuring the printer
1. Open your favorite Internet browser and go to http://localhost:631[http://localhost:631].
This is the Web interface of CUPS.
2. Select Administration from the top menu. If a username is required,
type root, and give your root password.
3. You can do almost everything here in connection with printing.
In our example, we will add a new local printer.
4. Click Add Printer, type in a name and optionally fill the
Location and Description lines, then click on continue.
5. Select Device, in most cases it is Parallel Port #1 for older models
and one of the USB ports for newer ones. I you have got a USB printer cups
will write the printer name next to the proper port.
6. On the next page, select your vendor and your printer type (the driver/filter).
To set up a remote Windows share with password, give a string
like this for location (the share name is the
printer's assigned name on the remote system):
'smb://user:passwd@Netbios_Name_or_ip_address/Share_name'
Notice that, when you view the printer configuration, the
credentials will not be shown but will be used.
== My printer is not listed
If your vendor or printer type isn't listed in the wizard, you have to check
http://www.openprinting.org/printers[the OpenPrinting site]
whether if is supported under Linux or not. Usually it's enough to install the
proper printer driver (see above) or 'gutenprint'. After installing do not forget
to restart cups:
----------------------
# service cups restart
----------------------
If it's not on the page mentioned above, then try to Google after. If listed
but said to be "paperweight", then there is nothing to do. If it is supported
and said to be working on the site, then please file a bug report with your
printer details. While we fix the bug, you can install the driver (the ppd) by
yourself.
On the left side, select Printer Listings. Then select your device's
vendor and proper type. On the results page, select download PPD.
After download, there will be a file named someting_that_ends_with.ppd.
Save the PPD file in the directory /usr/share/cups/model/. The PPD file
doesn't have to be executable, but it should be world-readable and
should have the file extension ".ppd".
If you do not want to search ppd, try to install foomatic-filters-ppds
package. It has a bunch of ppd files for various printers.
Then restart the CUPS service: `su -c \'service cups restart\'`. The driver
installation is now completed, now you can add your printer via the web
interface. A good howto can be found at
http://www.linux-foundation.org/en/OpenPrinting/Database/CUPSDocumentation[http://www.linux-foundation.org/en/OpenPrinting/Database/CUPSDocumentation].
== Multiple pages on a single sheet
This is also known as n-up printing. If an application doesn't support it
natively, print the document to a file as PostScript and use psnup:
-----------------------------------
$ psnup -2 print.ps > print2page.ps
-----------------------------------
The first option specifies the number of pages stacked on one physical sheet,
the second is the filename of the original one-sided document, and the last
is the n-up (two-sided) document. You can then print it with
-------------------------------------
$ cupsdoprint -P nameofprinter foo.ps
-------------------------------------
or open it in your favourite PS viewer.
== Troubleshooting
If something goes wrong, check out CUPS log at '/var/log/cups'. There is a
verbose error log and an access log, too.