Opinions on different parts of Linux with emphasis on the printing system.
Accsnmp is an accounting wrapper backend for CUPS that queries a printer's page counter over SNMP both before and after a job to arrive at a job page count. A simple accounting function stores user pagecounts in text files.
This backend does not parse jobs trying to glean accounting information, so there is no requirement for any particular printer job language. This avoids the complication of supporting multiple printer job languages, accounting for language syntax complexities, etc.
Accsnmp is ideal for raw queues, for which CUPS does not have true accounting information. It also works for non-raw queues.
Accsnmp is written in Perl and offers a high degree of flexibility. Nearly all variables can be overridden on a per-queue basis through the use of an external "qconf" file (described in the README)
The Perl script is a wrapper that wraps either the pdftops utility of the xpdf (3.0x) suite or the Adobe reader (acroread) to act as a CUPS filter.
The Gentoo bug # 201042 (insecure tempfile creation) has been fixed by using Perl's File::Temp package.
As Acroread (at least the 7.01 version on Solaris) needs a valid X display to run (even for only converting PDF to PostScript). the local X server's display number is looked for and, if not found, a fake X server (usually Xvfb) is launched.
See the comments at the top of the script for details.
This is a modified version of the pstops filter that implements the image shift options, same-up processing (same-up=2; same-up=4), and alternate banner pages (banner-pages=name). In addition, some environment variables and job options are passed to the PS job. Level 1 PostScript is NOT supported.
Details see pstops.txt at the same location
aXon Linux is a server distribution, based on E-Smith 4.1.2, geared toward small and medium-sized businesses. Axon contains a large feature set that has previously only been available in enterprise-sized operating systems. For starters, aXon is based on the 2.4 Linux kernel with extensions for SGI’s XFS journaling file system and FreeSwan IPSEC VPN. Extensive firewalling allows Internet connection sharing via masquerading and improved security. Even more, out of the box, axon is capable of NT Domain controlling and support for Window 2000’s roaming profiles. HylaFax serves as the Fax Server that allows receiving and sending faxes through any workstation on the network. Next CUPS provides a great way to share and monitor printers throughout the network and can be combined with the VPN to provide remote desktop printing. Qmail is next on the list, providing high performance email serving with IMP acting as a secure Webmail interface. Web serving is provided by Apache and accelerated by mod_GZIP for improved performance. Development support includes Python 2.1.1, Perl 5.6.0 with more than 25 modules pre-installed, Sun’s Java SDK, and GNU’s gcc 2.96. All of these features are manageable through a web interface or the console.
The prtofile backend implements printing to a user selectble file and optional postprocessing.
The Bluetooth printing backend can be used for printing to Bluetooth enabled printers and printer adapters. It allows printing over the Serial Port Profile (SPP) and the Hardcopy Cable Replacement Profile (HCRP).
"Brother is now developing drivers which are designed to work on Linux distributions, Redhat, Mandriva(Mandrake), SuSE, Debian and FedoraCore. We have developed two types of driver: LPR drivers and CUPS drivers.
Brother will provide updated information about Brother's Linux capabilities via this web site. We recommend you bookmark this site and return to it at a later date to check on the status of these new drivers and any new developments from Brother."
For PostScript color printers, this filter determines which pages contain really colored content and prints only the colored pages in color mode.
For detailed information, see colorfilter.pdf .
CUPS is the standards-based, open source printing system developed by Apple Inc. for Mac OS® X and other UNIX®-like operating systems.
CUPS uses the Internet Printing Protocol ("IPP") as the basis for managing print jobs and queues and adds network printer browsing and PostScript Printer Description ("PPD") based printing options to support real-world printing.
A CUPS text file filter that converts text files to postscript using the a2ps (any to postscript) tool.
CUPS: Common UNIX Printing System is the definitive guide to CUPS.
THIS PROJECT IS NOW PART OF CUPS
The CUPS Driver Development Kit (DDK) provided a suite of standard drivers, a PPD file compiler, and other utilities that can be used to develop printer drivers for CUPS and other printing environments. This software is now part of the standard CUPS release as of CUPS 1.4.0.
The CUPS driver for Windows is an extension for the Windows 2000 PostScript driver that is supported by CUPS 1.2 and higher. The driver adds support for the job-billing and page-label options.
Cups drivers lets you use CUPS without having particular drivers. It uses GhostScript to do it. So if your actual printing system can print using GS, then it can do with CUPS.
Filter This filter is designed to force a duplex print - independend what the user want. We noticed that 99% of the user print simplex - the normal system setting. The users only know how to click a button. A lot of people print 100 page script documents in simplex - though a duplex print is recogmended.
Thus why use this filter:
+ Save paper
+ Save money
+ Save the world
A 'backdoor' allows (if enabled in the filter) the user to print simplex just by renaming the document and include the word 'simplex' in it.
Disclamer: At the moment this is only tested with Samba print from Windows systems.
Filter Mod This is a modification of the filter pstops.
It prints the user ID on each page (very small on the bottom).
An alternative to a title page.
Filter: This is yet another way for a quota and better logging of Cups printing job. Different to other
solutions is that this is a Filter and not a Backend and thus you can use it
with your favourite backend.
Following my philosophy it is simple and nearly independend from other software componentes.
You can install this quota and logging filter by adding one file!
Filter : NOP Filter - This filter/backend do nothing but you can use it for a development of an own filter. Use it as start point. Written in simple Perl.
A Backend ist the last Filter.
For more information and screenshots please visit www.cups-monitor.com
RedHat 6.1/i386 RPMS (and SRPM) for CUPS
A tutorial on how make this combination work for you!
CUPS backend for the canon proprietary network printing protocol, BJNP. This backend is based on reverse engineering using TCP/IP. It supports CUPS 1.2 and 1.3 from the same source tree.
More than 180 Questions (and less Answers ;-)) on CUPS and ESP PrintPro -- so far German 'only'... [Ask for an english translation snapshot] -- Suggestions for new Q&A or Tipps&Tricks are readily accepted.
Mehr als 180 Fragen (und etwas weniger Antworten ;-)) zu CUPS und ESP PrintPro -- bisher 'nur' in Deutsch... [Momentaufnahme des Stands der englischen Übersetzung auf Anfrage] -- Vorschläge für zusätzliche F&A oder auch zu Tipps&Tricks bitte an den Autor.
cups-lpd supporting printer instances.</br> Thus, printer options defined by lpoptions can be used with jobs submitted by LPD clients.
This version is rather outdated. The support of printer instances has been built into the original in the meantime.
cups-mailto is a backend for the Common Unix Printing System.
The mailto backend emails the filtered output to the user who requested the print job. The print job's output will be MIME attached to the email.
One purpose of the mailto backend is to deliver a PDF generation service where the users get the PDF output back in an email.
Page_log statistics: Cups2ana is a small simple Perl program that is able to transform the page_log statistic into a file that Analog 6.0 can process. You have the feature of seeing user, printer, pages and documents. You can have a look at an example report.
CUPS4Lazarus is a library for Lazarus /FreePascal programer. With Lazarus, you have some user-friendly graphical printing front-end using CUPS. Allows users to set few possible printer's options easily or work easily with printer's jobs.
All helps is come well it .
CupsClient for Windows connects to a Cups server, retreives all printers (with name, model, location, comment, color, media, ppm). You can filter the result according to all information and install a printer (with a postscript driver) of your choice.
cups_fontfilter is a PostScript to PostScript filter written in Perl that parses a PostScript job for font-related DSC comments and embeds fonts as needed.
To circumvent problems with one specific printer I created a new backend for CUPS to use the ftp protocol and a loop to transfer the print data stream. It works now on Linux and AIX for print servers made by SEH (KYOCERA), HP and Intel. As a sideeffect you can transfer your print data to a ftp server (sometimes I use it to print pure ascii from SAP R/3 to my workstation and to import those files into some office software). For details please see the header of the script.
Debian provides packages called cupsys-base and cupsys-bsd which provide the basic CUPS functionality. There are other packages of interest which are available through the URL given here.
Debian's CUPS packages. There are four in stable: cupsys, cupsys-bsd (with the BSD commands), libcupsys1, and libcupsys1-dev, all of 1.0.4. 1.1.x is now in unstable, and includes another package (cupsys-client).
Epson Printers
THIS PROJECT IS DISCONTINUED AND ALL ADDITIONS HAVE BEEN MERGED INTO GPL GHOSTSCRIPT.
ESP Ghostscript was a customized version of Ghostscript based off GPL Ghostscript 8.15. All changes from ESP Ghostscript were merged into GPL Ghostscript 8.60.
Foomatic is the printer/driver database of Linuxprinting.org. The XML-based system integrates free software printer drivers with all common spoolers (CUPS, LPRng, LPD, GNUlpr, PPR, PDQ, CPS, etc.) in UNIX and alike operating systems. It generates Adobe-compliant PPD files which, together with the "foomatic-rip" filter script, allow easy setup of print queues with access to all driver options.
Foomatic ships with every major Linux distro and its Web site is used as a reference by vendors. It is an up-to-date and distribution-independent repository of printer and driver data, scripts, and utilities, accompanied by the wealth of knowledge, tips and tricks, solutions, and enlightenment provided by its newsgroups.
Download the LATEST CUPS printer drivers and filters for your printer! All the printer drivers and filters are packaged into an easy to use RPM package called "fcpd". You will find an amazing 80 WORKING CUPS drivers and filters. You will also find two extremely useful tools. One of which allows you to clean and align your printer head, check the amount of ink left and much more!
Shellscript to generate a PDF-File from a CUPS print job. It allows to customize the path(es) and attributes of the later PDFs. Is currently in use with sap2cups to allow printing of PDFs from SAP R/3 installations.
High quality drivers for Canon, EPSON, Lexmark, and PCL printers for use with Ghostscript, CUPS, Foomatic, and the Gimp.
This filter converts both PostScript and PDF to CUPS raster, accepts the same options as the pstoraster filter and in addition honours the *LandscapeOrientation PPD key.
Iff the PPD specifies
*ColorDevice: False
CMYK black only CMYK colors are replaced by the equivalent gray value to work around weird handling of /DeviceCMYK color space in Ghostscript 9.xx .
GtkLP is an gtk+ forntend to all the cups and printer-specific options. There`s also an small Queue-Tool included.
This guide at http://sprysgi.sghms.ac.uk/~cspry/computing/Indy_admin/printing.html explains how I enable my networked computers running Microsoft ‘Windows’ to print files on a Hewlett Packard LaserJet printer attached to the printer port of my SGI Indy, which is running IRIX 6.5.5.
The gvdpy backend displays PostScript printout on a X display using gv. With this backend, CUPS may be used as a print preview application.
Information and FAQ for CUPS, ESP, IPP other themes and english version comming soon,
Hewlett Packard website and FTP site
This an HOWTO setup CUPS on (RedHat) Linux that supports as many printers as GhostScript does. It requires cups_filters that can be found on my web page
hpnpf is an alternate backend to drive PostScript printers which support HP's PJL language
It supports backchannel messages and optionally enables TBCP as defined by Adobe.
Includefonts is a filter for the CUPS print system, which embeds the fonts required by PostScript print jobs, given that the PostScript contains the necessary DSC comments and that the required fonts are available on the system.
Includefonts queries the printer's PPD file (via the CUPS API) to find out which of the required fonts are resident in the printer and thus don't need to be included. Various options can be used to control the search path and the inclusion of fonts.
If the printer contains a TrueType rasterizer, TrueType fonts are automatically wrapped as Type42 fonts.
<div>
Internet Remote Print
Internet Remote Print allows users to print from any application, select output options, and send the job to a central print shop. The print shop can then release the job to any output device (or cluster of devices!) along with a receipt/routing ticket for the job.
The backend for Internet Remote Print is driven by CUPS and IPP technology and currently runs under Linux. The client currently runs under Windows(all versions) with Mac, *nix, and Java clients under development.
</div>This is one of several IPP standards documents.
This is one of several standards documents describing IPP/1.1.
J-CUPS backend is a cups backend, written in Java. It provides an accounting and quota solution for CUPS. It is part of the ESUP-Portail software (ESUP name : esup-cups-backend).
JASmine is a page accounting system for Cups. It is composed of two parts:
Features
JASmine needs Apache, PHP, Perl, Python and MySQL database. You can install all JASmine modules on a single server, or balance the load on three or more servers (Cups print server(s), MySQL database server and http server).
JASmine is currently in stage of developpement, and musn’t be considered neither as stable, nor reliable. The last release is JASmine 0.0.3.
Adding print quotas management/enforcement is planned for future releases.
JASmine is based on the work of Jerome Alet, author of Pykota.
Jipsi is an implementation of the Java Print Service to communicate with cups over IPP.
KUPS is a CUPS administrator for KDE
Kyocera Mita is one of the world's largest manufacturers and leading providers of computer-connectable peripherals, including network-ready digital copiers/printers, laser printers, color copiers/printers, digital laser facsimiles, multi-functional and wide format imaging solutions. Kyocera Mita is a group company of Kyocera Corporation, the world's leading developer and manufacturer of advanced ceramics and associated products, including telecommunications equipment, semiconductor packages and electronic components. Kyocera Corporation's consolidated net revenues totaled $9.0 billion during the year ended March 31, 2002. Kyocera Mita's headquarters for the Americas are in Fairfield, New Jersey.
Contains the LATEST documentation on using CUPS on your Linux machine. You will learn to install CUPS and its drivers. You will also learn to add your first printer in Linux. Finally, you will get that first printed page in Linux FAST!!! It's a very good starting point for someone who has never setup a printer to print in Linux!
Lexmark Printers
From version 7.2 on Linux Mandrake comes with full integration of CUPS as default printing system with support for 1200 printer models. It includes all PPD files from http://www.linuxprinting.org, GhostScript with all drivers (including GIMP-Print and a lot of Lexmark winprinter drivers), KUPS, XPP, and QTCUPS.
You can also download single RPM packages here to improve printing in your RedHat-compatible distribution (RedHat, Mandrake, Conectica, ...).
A simple accounting backend wrapper, written in Perl. It parses postscript looking for pages, and copies, storing the total in a series of files named for the username. Also built-in blacklisting by username. This is a wrapper around the existing lpd backend.
This tutorial covers printing in Linux. By the end of this tutorial, you will know how to manage printers, print queues, and user print jobs on a Linux system. PDF versions available within the tutorial.
The tutorial is the third in a series of nine tutorials covering topics for exam 102 of the Linux Professional Institute LPIC-1 certification.
Registration (no cost) is required if you do not already have an id for IBM developerWorks.
The patch provides a new AuthType directive (lpr) for the cups printing system. This does Authentication checking on the username (only, no password required) supplied by the lpr client (requesting user) without needing a password.
This is useful especially when cups is providing service to non-cups clients (lpr, lprNG)!
Net::CUPS is a Perl module for interfacing with the Common Unix Printing System. You can download it via http://www.cpan.org/.
These filters provide converting both OpenOffice documents as well as Microsoft Office documents (to a certain extent) to PostScript and PDF, respectively, using OpenOffice.org or LibreOffice in headless mode (i. e. without displaying any windows and without any user interaction).
Thus office documents can be printed directly.
Omni print project Modular driver model based on XML structures. Supports approx. 400 printers. CUPS support can be found in the OmniAllxxx.rpm files or in the CVS tree in the Omni/CUPS directory
This CUPS filter sanitizes the PostScript jobs created by OpenOffice 2.x. It makes the PostScript jobs DSC compliant, thus further processing by the pstops filter works without problems.
See the manual (PDF file) for the details.
(After downloading, you should delete the filter's ".pl" extension).
Panasonic (Matsushita) printers
The pap backend is a perl script that drives the netatalk papcommand to talk to apple talk printers.
Yet another PAP backend. Has the following (partially unique) features:
This is a script to be used as a CUPS backend, for PDF creation on the fly. Just copy it to your backend directory (use "pdf" as filename), and add a printer (with CUPS web interface) using an URI like: pdf:/path/to/dir/. When printing to this printer, a PDF file will be generated in the directory specified.
phpPrintAnalyzer is a Web Application for CUPS system to analyze the "page_log" files and get HTML graphics (with JpGraph):
pkipplib is a Python library which can create, manage or parse IPP requests through an object oriented interface. This library also implement the basic functionnalities to dialog with a CUPS server, and exposes a CUPS() client class which currently supports a few methods of the CUPS' API. Entirely written in Python, there's no need to link with the CUPS libraries, and doesn't even need any CUPS related software to be installed to work. A mid to long term goal is to support all of the IPP calls offered by CUPS, and to include both Python counterparts to CUPS command line tools, and additional commands not yet existing in CUPS.
pkipplib can be downloaded freely from http://www.pykota.com
pkpgcounter is a 100% Python written script and library distributed under the terms of the GNU General Public License of the Free Software Foundation, either version 3 of the license, or (at your option) any later version.
pkpgcounter is a generic Page Description Language parser which can either count the number of pages or compute the percent of ink coverage needed to print various types of documents.
It currently recognizes the following file formats :
The ten latter ones, as well as some TIFF documents, are currently only supported in page counting mode.
When launched, pkpgcounter prints on its standard output a single integer representing the total number of pages in all the files which filenames you've passed on the command line.
With no argument, or with a single dash in non-option arguments, pkpgcounter reads datas to parse from its standard input in addition to other non-options arguments which are treated as filenames representing the files to parse.
For more informations, type 'pkpgcounter --help'
You can now see the list of supported GhostScript drivers.
Utility for creating printers in OS X. Files printed to the printers will be collected in a local or network mounted folder just for convinience, or further processing in a production environment. The printers will be treated as normal OS X printers (CUPS). They can be shared over the network using OS X Client printer sharing or OS X Server print Queue.
This Tool generates statistics from the CUPS page_log file.
Features:
Queue usage, Pages per queue and user (accounting), Jobsize histogram (all queues in one), Number of copies histogram (all queues in one), Jobs/Pages per hour (all queues in one),
Jobs/Pages per day (all queues in one),
Jobs/Pages per user (all queues in one),
Pages per Billingcode (all queues in one), and Pages per User per Billingcode (all queues in one)
The CUPS printer driver repository is an on-line resource for finding PPD files to use with CUPS.
PrinterSetup is a CUPS queue management tool.
To get started quickly check out the PrinterSetup screencasts.
This version adds support for rapidly generating multiple Apple packages from multiple PSF files.
PrinterSetup is aimed at system administrators who manage many CUPS print queues.
PT is an easy-to-use, fast and configurable printing tool for viewing and managing print jobs. It is written in C/GTK+ and uses the CUPS API. You can delete, hold and remove print jobs, change the priority or move them to another printer.
pyCUPS is a Python module allowing access to the CUPS C library from within Python programs. pyCUPS is an attempt to bring a common, portable printing solution to Python applications.
PyKota is a full featured, internationalized, centralized and extensible Print Quota system for CUPS, available under the terms of the GNU GPL of the Free Software Foundation.
It supports both PostgreSQL, MySQL, SQLite and OpenLDAP (or other LDAP servers) as the quota database backend.
This software features most of what you might expect from a modern Print Quota and Accounting Solution. It's unprecedented flexibility and configurability greatly eases its integration into your own computing environment. At the same time, its reliability can make it a strong basis on which you'll plug your own management or reporting tools in the improbable case you'd judge PyKota's ones to be inadapted.
QTCUPS is a user-friendly graphical printing front-end using CUPS and Qt. It is a replacement for lpr and allows users to set all possible printer's options easily.
RasterView is a CUPS raster file viewer for CUPS 1.2 and higher. It basically allows you to look at the raster data produced by any of the standard CUPS RIP filters (cgimagetoraster, cgpdftoraster, imagetoraster, and pstoraster) and is normally used to either test those filters or look at the data that is being sent to your raster printer driver.
New draft (version 0.97beta11) of the "Printing" part for the new "Samba HOWTO Collection" now available. The complete HOWTO Collection will be published alongside the Samba 3.0 software release by the Samba Team (planned for the May/June this year).
Please provide feedback for this draft and help to make the Samba printing documentation a better one!
Thanks, Kurt Pfeifle
(2nd of June, 2003)
Replace lpr to gain speed on machines with an extreme number of defined printers; we receive a known printfile and don't need to process parameters or anything else. Instance's profile needs adaption (see also SAP note 190218).
Backend for printing via ssh by calling a remote command (e.g. lpr -Psomeprinter).
Tea4CUPS's basic functionnality is similar to the GNU/Linux 'tee' command, but available as a 100% plug and play generic CUPS backend wrapper. But Tea4CUPS is much more than that !
Tea4CUPS is the Swiss Army's knife of the advanced CUPS administrator, and can easily replace or extend most of the existing specialized CUPS backends (pdf, email, ftp, etc...)
You are greatly encouraged to use this software instead of writing your own CUPS backends : Tea4CUPS will let you plug your own scripts, filters, tools or commands wherever you want, while giving them access to all the print job's characteristics in a consistent way.
Tea4CUPS is a 100% Python written standalone script distributed under the terms of the GNU General Public License of the Free Software Foundation.
This package contains CUPS filters to print TeX, LaTeX, DVI, and Texinfo source files. In combination with the gvdpy backend, CUPS can be used as a preview application when creating (LaTeX) and Texinfo documents.
In case of errors, an error page is printed; with the option "log=yes" the log messages can be printed instead to investigate the cause of errors or why the output doesn't look like expected.
As of CUPS 1.3.x, the texttops filter accepts only UTF-8 encoded input data. The wrapper script provided here tries tu guess the encoding of the input data from the first (at most) 16 K using Perl's Encode::Guess package and permits in addition explicite specification of the input data character set via job attributes.
For the details see the documentation.
Various driver settings for quality levels, the media that should be used, performance, etc. What I
have done is printed out a benchmark image with various driver settings, scan in the resulting print and make a
comparison table. This way, you can see quickly and easily how to "tune" your printer to your needs.
CUPS is available in the OpenBSD packages and ports collection and can easily be installed using the package tools.
The tifftops filter converts multipage TIFF files to a (DSC conforming) PostScript stream. The filter is written in Perl (5.83 ot higher). The TIFF handling and conversion routines are completely written in PostScript, thus Ghostscript (version 7.0 or higher) is needed.
This web page provides access to manufacturer-supplied PPD files for genuine Adobe PostScript printers.
The X Printing Panel (XPP) is a fast, light, and completely free graphical replacement for the command line printing commands for easy choosing of the desired printer out of a list of all available printers and for setting printer options by an easy-to-use graphical user interface. One simply calls the program (xpp) instead of the usual utilities (lpr or lp) at the command line or out of applications.
Enable CUPS to print XPS files: They will be recognized as
and converted to
So you should be able to print those Microsoft XPS files to any of your CUPS printers. Prerequisite for this functionality is the installation of GhostPDL >= 1.54 ( http://www.artifex.com/downloads/ ) and the URW fonts ( http://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/GhostPCL/urwfonts-1.41.tar.bz2 | http://mirror.cs.wisc.edu/pub/mirrors/ghost/AFPL/GhostPCL/urwfonts_t1-1.40.tar.bz2 ).
You need to adapt some variables in the filter xps2ps and to install the filter and the mime.{convs|types} files.
These experimental filters convert Microsoft XPS (Xml Paper Specification) documents to PDF or PostScript, based on Gostpdl's gxps utility.
Added functionality to the cups driver for the following Zebra Technologies printers:
KR403 (ZPL) TTP20x0 TTP2130 TTP7030 TTP8200