AU
  
You are currently viewing the Australia version of the site.
Would you like to switch to your local site?
15 MIN READ TIME

Printing

Master printing in Linux

Unlucky Nick Peers has to untangle a cornucopia of acronyms to reveal how to get his printer working at its best and in full colour!

CUPS

Credit: https://openprinting.github.io

OUR EXPERT

Nick Peers has gone through more printers than he cares to remember. Despite his best efforts, though, he’s yet to find one that wouldn’t work with Linux.

QUICK TIP

You can administer certain aspects of CUPS from your web browser (go to localhost:631 to do so). It’s not as comprehensive as the options built into your distro and is best used on servers where no desktop interface is available for use. When prompted for access to certain areas, enter your Linux username and password.

Printers and Linux have never been the most comfortable of bedfellows. For decades, we’ve relied on the CUPS print server to manage printers (and printing), and there have been times when getting your printer set up has been a real struggle. Even now, despite the huge changes going on under the hood of CUPS, there are times when your printer doesn’t do what you want.

We’re going to explore how CUPS works – including the various ways to get your printer successfully set up – as well as look at ways in which you can exert more control over your printer to produce better looking and more consistent printouts. But first, a quick refresher.

CUPS – not the devil incarnate

CUPS stands for Common Unix Printing System, and has long been used to manage print jobs, queues and even provide support for network printing. In the early days, it relied on PPD (Postscript Printer Definition) files to communicate with printers, which meant having access to the right PPD for your specific printer model.

The emergence of the Internet Printing Protocol (IPP) has – in theory – simplified this task. IPP is an agreed standard that underpins various driverless technologies, such as AirPrint, and Wi-Fi Direct, and is found in 98% of printers sold today.

If your printers are relatively new – say 2010 or later – there’s a very good chance they support IPP, which means that as soon as you connect to your printer for the first time – either via USB or over the network – it should magically appear in the Printer settings dialog in your distro (switch it on if this isn’t the case).

IPP works in most cases but it’s a not a magic bullet. Even assuming your printer is detected, you can’t access the full range of its capabilities. That’s why many printers are still shipped with dedicated Linux drivers (which include the all-important PPD files to link up with CUPS) to unlock more of their capabilities. However, it does mean that if you have an IPP printer that the manufacturer hasn’t provided Linux support for, it should still be at least partially usable with CUPS.

When you print via CUPS, documents are converted to a format compatible with the printer. In the past, this was plain text or PostScript, the latter allowing formatted documents and images to be printed correctly. PostScript has been replaced by PDF, so now all print jobs are processed using this as a ‘filter’. CUPs has undergone some radical changes over the years – indeed, from February 2007 until 2019, the source code was owned and developed by Apple for its own Unix-based OS X operating system, with OpenPrinting (https://openprinting.github.io) given the tasks of maintaining the code for Linux.

Unlock this article and much more with
You can enjoy:
Enjoy this edition in full
Instant access to 600+ titles
Thousands of back issues
No contract or commitment
Try for $1.48
SUBSCRIBE NOW
30 day trial, then just $14.99 / month. Cancel anytime. New subscribers only.


Learn more
Pocketmags Plus
Pocketmags Plus

This article is from...


View Issues
Linux Format
December 2023
VIEW IN STORE

Other Articles in this Issue


Linux Format
Linux Format
Future Publishing Limited, Quay House, The Ambury, Bath, BA1
WELCOME
MEET THE TEAM
This issue we’re grappling with Podman to handle our services and make life easier, so what technology have you found that has made things simpler?
Docking apps…
Wasn’t technology supposed to make life easier? Sometimes
REGULARS AT A GLANCE
Newsdesk
THIS ISSUE: FOSS collaboration hit by embargo AI power use rockets KDE 6 arrives on desktops Linux boosts Cyberpunk 2077
Kernel Watch
Jon Masters keeps up with all the latest happenings in the Linux kernel, so you don’t have to.
Answers
Got a burning question about open source or the kernel? Whatever your level, email it to answers@linuxformat.com upgraded to v2.0; we’re still finding bugs…
Mailserver
Still very much supported: TurboPrint for Linux. CREDIT:
HotPicks
THE BEST NEW OPEN SOURCE SOFTWARE ON THE PLANET
REVIEWS
REVIEWS Addlink A93 4TB
Shane Downing is always cheap and usually pretty cheerful!
Intel Arc A580
Often rooting for the little guy, Jarred Walton wonders what Intel’s up to.
Tails 5.18
Shunting all his traffic through the darknet, we’re not sure whether this Nate Drake is real…
SpiralLinux 12.231008
Nate Drake gets his head in a spin over this customised version of Debian, which offers easy setup and proprietary firmware.
Pisi Linux 2.3.4
Nate Drake tastes this Turkish delight, marvelling at its originality and efficiency. Just don’t expect much help if you get stuck.
ROUNDUP
Raspberry Pi 5 killers
Industrial and professional single-board computer use can be a hairy business. Tam Hanna has seen it all, though, and guides you along.
MANAGE YOUR APPS!
MANAGE YOUR APPS!
David Rutland looks at dependency hell and the benefits of containers, and gets to grips with Podman, the newest container tool.
Pi USER
CoderDojo and Code Club become global hits
The help given to young coders is reaching around the world and everyone can get involved!
Dual-Fan Heatsink
During the hot summer months, Les Pounder’s poor Raspberry Pi Zero 2W was sweating in the heat. Can this case keep it cool?
Creality Ender 3 V3 SE
A low-cost, high-speed act has swept Denise Bertacchi off her feet!
RP2040 Matrix
Les Pounder dons his trench coat and shades, journeys into The RP2040 Matrix, then realises it’s the wrong matrix and he’s now in his mid-40s.
AnkerMake M5C
It seems Denise Bertacchi is in trouble as she’s misplaced her phone…
Create a Pi Pico USB camera trigger
Les Pounder’s drawers are full of old tech. No, he’s not smuggling technology, but he is reusing it in this project!
Control your own custom robotic arm
Matt Holder discovers how to take a standard model, apply some custom electronics and enable it all to be computer-controlled!
IN DEPTH
ENTROPY ISN’T WHAT IT USED TO BE
Nate Drake provides a brief history of randomness in Linux and how the kernel uses it to keep your data safe.
TUTORIALS
Get your life organised!
Shashank Sharma knows more CLI tools than he does people, and is always looking for more. It’s why he misses deadlines. But no more!
Customise your home WordPress site
Michael Reed provides some words to the wise and explains how to add some content to your WordPress website and customise it.
Tweak and tune your own kernel scheduler
Mats Tage Axelsson explains how Linux keeps all its plates up in the air and when it can be helpful to intervene and stop it all crashing down.
Build the ultimate Amiga PC system
Les Pounder turns a lowly 2019 Intel Celeron-based laptop into a high-end Amiga machine – 1994 Les would be so envious!
ADMINISTERIA
Artificial intelligence rules of the road
AI is great, but caution is needed to make sure that it works as expected.
AI coded Bash scripts
Use ChatGPT to make your life easier by asking it the right questions.
CDNetworks CDN Pro
A powerful, programmable CDN with a strong China presence that pleases the notoriously hard-to-please Mike Williams.
Mozilla VPN
A standalone VPN from the people behind Firefox – Mike Williams wonders what’s not to like?
WordPress vs Wix
Running a website needn’t be a technical challenge. Nik Rawlinson compares the two leading platforms that can help anyone create and manage their own pages.
CODING ACADEMY
Scan and scrape websites using Python
David Bolton shows how to safely scrape the Linux Format archives in just 70 lines of Python without incurring our wrath!
Process your smarthome sensor data
HOME ASSISTANT
Chat
X
Pocketmags Support