Printing on Linux

PrinterIn the old days printing on a Linux computer could be a bit of a hassle and it was anything but a  matter of simply plug & play. CUPS (the Common Unix Printer System) has always done a great job organizing and executing print jobs. (It still does, even now Apple has required the source code and made it the standard for its own OS X, so Windows users should be jealous for such a capable printing system.) Therefore the problem with printing was not so much in the Linux operating system or applications, as it was in the drivers the manufacturers would provide – or rather: not provide. In recent years much has improved, but buying a printer still requires the user to do some research first, particularly regarding the Linux driver support. The OpenPrinting website is a good starting point.

Early days

Star NX-1000Let me share my History of Printers. It started back in 1989 with my first brandnew 9-pin dot matrix printer, using fanfold forms, a Star NX-1000. I can still recall its buzzing sounds. It worked well on DOS, some time later it could run on Windows 95, and even today I would have been able to keep it working on a Linux system, that is, provided the computer still has a good old parallel port.

HP DeskJet 510Along with my Windows days came a second hand HP DeskJet 510 black & white inkjet printer. Very reliable and it worked out of the box (yes, Win95 plug & play actually did work occasionally) and it moved along to Linux without any problem. Of course, HP has always been supportive in making Linux drivers possible. The 510 has served me very well for quite a few years.

HP DeskJet 5150Next came a newer model, the HP DeskJet 5150, somewhere around 2003, which also worked just as good on Windows as on Linux. I bought it because it could print colours and because, with an extra module, it also could print double-sided. Now I could produce my own worship sheets as A5 brochures. But inkjet print-outs do not like moist, be it rain or tears, and the colour quality can be disappointing too.


Kyocera FS-C5350dnSo, in came my first colour laser printer, a Kyocera FS-C5350dn. Meanwhile it was 2009 and I carefully checked if it had Linux drivers. The machine was a rather bulky and heavy box, but it worked really well. Double-sided, nice colours, fast enough for my needs, and it was even network connected, so my wife could use it from her computer too. Initially I had a problem with paper jams, but that turned out to be a warranty issue. An engineer came up all the way from Edinburgh to Kintyre to repair it, in under 5 minutes and of course for free. It happened to be his only job that day.

Kyocera ECOSYS P6021cdnThe Kyocera served me well, it even survived the transition from the UK power grid to the Dutch, but in the end it stopped printing decent colours. Perhaps I did not use it frequently enough, perhaps it was just worn out. I replaced it with a newer model, a Kyocera ECOSYS P-6021cdn. Also a colour laser printer, and networked, and also lighter and less bulky. Initially it worked well, but within a year it let me down. The colour printing got out of order, I needed an engineer, and because he noticed I did not have Kyocera’s own toner installed, I lost my warranty. The problem was fixed for one toner distributor box, but soon another box started to fail. It may have been due to the use of cheaper toner, but actually I suspect that was not the real problem.


HP LaserJet Pro MFP M277dwSo I returned to good old HP. Right now I am sitting beside a HP LaserJet Pro MFP M277dw All-in-one colour laser printer, scanner and fax. To have a fax part may seem a bit old-fashioned nowadays, but no need to use it. If you do want to use it, you would need a traditional (analogue) telephone connection. The scanner is absolutely fine and it beats the (basic) Canon Lide-100 flatbed scanner I had. Especially it cooperates better with the default Linux scanning software, sane. For the Canon scanner I always had to adjust gamma after scanning, with the HP it is just fine on first scan. Common scanning applications, like XSane, Simple Scan or Skanlite, can be used to operate the scanner from your desktop. The printer too is nice. Faster, more silent than my previous Kyocera, and apart from LAN networking it can also do Wifi. The machine as a whole is surprisingly small and does not break your back when you lift it. Cherry on the cake: this printer comes with a shiny touchscreen panel to operate it – much easier than pushing wee buttons.

To install your HP printer on Linux, start here. Although the hplip libraries and tools are included in most Linux distros, you may need a newer version, but HP explains it all in detail. Once you have installed hplip, run hp-setup to install the printer. This script will also check whether or not you need a plugin to make the scanner part work well (has something to do with licenses). I needed both a newer hplip version plus the plugin. Finally, you will have hp-toolbox active in your system tray, which comes with a lot of options. Mind: although you may not want to use the fax, you still need to install its drivers and have it active.

NOTE 1: The package you download from the HP website contains elaborate scripts to check and setup everything. The script also checks whether an older version of hplip is already installed and then offers to remove it before installing the newer version (if you need that version). If you say ‘yes’ to that, hplip will be removed, but some configuration files will remain and may cause mayhem later, eg. the HP Toolbox will not work or your network printer cannot be found. So, if you find you need to install a newer version of hplip, first open Synaptic and completely remove anything *hp*. Also remove the printer from your control panel or the CUPS webinterface.

NOTE 2: If you print only a few sheets, there is no problem. But when you print more, the scanner part’s downside will get damp. Simple solution (which I only found out after a fortnight…): just lift the scanner part as shown on the picture.

Previously my wife has used a HP OfficeJet 4215 All-in-one inkjet printer, scanner and fax. Very compact and light and it worked fine. Considering we saved it from the bin… The fax we never used. Since it was a UK version, it also had a UK telephone connection, which would not work on this side of the North Sea anyway. But it probably still is continuing to print and scan fine, somewhere.


So far for HP and Kyocera. Apart from that I have had some Canon printers connected to other computers in our home. Now Canon used to have a poor record on Linux support. For some time it even actively obstructed attempts to reverse engineer their devices. Recently that has changed very much for the better. Linux drivers can be downloaded from Canon’s website as RPM or DEB packages. Ubuntu users even have a better option: installing an extra PPA repository, so they can always have the most recent updates. To do so, open a terminal and run the following commands:

sudo add-apt-repository ppa:inameiname/stable
sudo apt-get update

After that open your software manager, e.g. Synaptic, and select the cnijfilter and scangearmp packages for installation. ScanGear MP is Canon’s own scanning application (which actually uses the usual Linux sane packages). Some additional packages may be required. That’s it. Now you can connect the printer and install it using your distro’s printer manager.

Canon PIXMA MP210Also, in between Kyocera and HP, a Canon PIXMA MP210 All-in-one inkjet printer and scanner saved my day. It had had some problems when our son upgraded his computer to Windows 10 (not a good choice anyway), but on Linux it worked out-of-the-box. The scanner actually did a better job than my own Lide-100 and the ScanGear software is nice to work with.

Canon PIXMA MG6350For over a year now my wife is happily using a Canon PIXMA MG6350 All-in-one inkjet printer and scanner. Printing or scanning are no problem at all. The ScanGear software is easy to use. This printer also has a special feature: it can print on CD’s or DVD’s. Not something to do on a daily basis, but it can be nice to have the capability.

So, nowadays all Canon stuff runs fine on Linux.