Chapter 7. Setting up a legacy printer
You can use the printer applications for supporting legacy printers which do not support driverless standards. After you install the legacy printer in a printer application, the application makes the legacy printer available for CUPS to use.
Installing printers with classic drivers in CUPS is deprecated.
You can utilize classic CUPS drivers with a modern printing architecture by configuring a legacy printer in a printer application. Currently, RHEL includes printer applications based on the PAPPL, such as lprint
and legacy-printer-app
. The current PAPPL-based printer applications in RHEL and their TCP ports they are listening at are the following:
- LPrint: 8000
- Legacy Printer Application: 8001
7.1. Setting up PAPPL-based printer application
To easily and effectively support various printing requirements and prepare it for installing legacy printers, you can set up a PAPPL-based printer application.
Prerequisites
- CUPS is configured with TLS certificate.
Procedure
Install a PAPPL-based printer application package, for example,
lprint
:dnf install <printer_application_name>
# dnf install <printer_application_name>
Copy to Clipboard Copied! Optional: Enable the port
8000
in firewalld to access the printer application web interface from a remote host:firewall-cmd --permanent --add-port=8000/tcp firewall-cmd --reload
# firewall-cmd --permanent --add-port=8000/tcp # firewall-cmd --reload
Copy to Clipboard Copied! Enable and start the service:
systemctl enable --now <printer_application_name>
# systemctl enable --now <printer_application_name>
Copy to Clipboard Copied!
You can check the port in the /etc/lprint.conf
configuration file.
7.1.1. Installing a legacy printer in PAPPL based printer application by using web interface
You can install the legacy printer by using the PAPPL-based printer application web interface.
Prerequisites
- CUPS is configured with TLS certificate.
- Printer application is configured and running.
Procedure
-
In the printer application home page, click
Add Printer
. Choose
printer name
,device
,hostname/IP address
in case of network printers, select the driver name from the offered list, and click on theAdd Printer
. You can also use auto-detect option to search for the driver.Using the auto-detection option for driver might result in finding an incompatible driver for your device, if the device model is too different from available drivers. It is recommended to check the assigned driver before printing and change the driver manually to prevent any printing issues.
-
The used driver is on the second line in the
block Status
. You can test the functionality by clicking on thePrint Test Page
.
7.1.2. Installing a legacy printer in PAPPL based printer application by using the command line interface
You can install a legacy printer in the PAPPL-based printer application by using the command-line interface.
Prerequisites
- CUPS is configured with TLS certificate.
- Printer application is set and running.
Procedure
Search the available drivers in PAPPL based printer application:
lprint drivers
# lprint drivers zpl_2inch-203dpi-dt "Zebra ZPL 2-inch/203dpi/Direct-Thermal
Copy to Clipboard Copied! Install the printer. For example, to install a network printer with a specified driver, enter:
lprint add -d <printer name> -v socket://<hostname> -m zpl_2inch-203dpi-dt
# lprint add -d <printer name> -v socket://<hostname> -m zpl_2inch-203dpi-dt
Copy to Clipboard Copied!
Verification
Check printer is visible in the printers list, together with its raw socket for sending raw data:
lprint printers
# lprint printers <printer_name> - printer - ipp://localhost/ipp/print/<printer_name> <printer_name> - raw socket - socket://localhost:9101/
Copy to Clipboard Copied!
7.2. Setting up a generated network printer as CUPS permanent queue
You can set up a generated network printer from a dedicated printer application as CUPS permanent queue by using the command line interface.
In the following procedure, the LPrint
printer application is used as an example. However, the similar steps are valid for any PAPPL-based printer application.
Prerequisites
- CUPS is configured with TLS certificate.
- You have permission in CUPS to manage printers.
- The legacy printer is installed in a printer application.
Procedure
Check if the generated network printer is available:
lpstat -e
# lpstat -e <printer_name_in_printer_application>
Copy to Clipboard Copied! Search for the port that the printer application is using:
grep 'server-port=' /etc/lprint.conf
# grep 'server-port=' /etc/lprint.conf server-port=8000
Copy to Clipboard Copied! Install the permanent queue by using the port number
8000
:lpadmin -p <printer_name_in_CUPS> -v ipps://localhost:8000/ipp/print/<printer_name_in_printer_application> -m everywhere -E
# lpadmin -p <printer_name_in_CUPS> -v ipps://localhost:8000/ipp/print/<printer_name_in_printer_application> -m everywhere -E
Copy to Clipboard Copied! Check if CUPS queue is installed:
lpstat -a
# lpstat -a <printer_name_in_CUPS> accepting requests since Wed 07 May 2025 02:31:04 AM EDT
Copy to Clipboard Copied!