printing under Linux
Printer drivers are incredibly frustrating.
If you don't need to use every obscure feature that your particular printer model might offer then you can probably use a generic printer driver. The frustrating part is that this fact is poorly document, is not the default, and there isn't a way to autodetect which generic printer driver may work for your obscure printer. Luckily, most printer support PCL (Printer Control Language). If you just want to print text and graphics on paper then usually you can go with a generic PCL printer driver. You can also try PostScript, but more printers support PCL. Choosing a generic printer driver saves a lot of trouble and avoids the frustration searching for some stupid driver specific to your printer.
There are a number of different versions of PCL. Usually I start with PCL 6/PCL XL. It usually works. There is also PCL 6/PCL XL LF, but it doesn't seem to give as good quality as PCL 6/PCL XL. I don't know what the LF is supposed to mean. None of this is documented.
Under Printer Properties find the Make and Model field and select a printer from database. The first make in the list you will see is Generic. Choose Generic then click Forward. Under the list of models select PCL 6/PCL XL. You might have to choose PCL 5 or some earlier version of PCL.