Then start the printing service (cups) and make sure it autostarts on boot:
# Autostart at Boot:sudosystemctlenablecups# Start Now:sudosystemctlstartcups# IMPORTANT: If you get an error when starting cups, try to run cups manually as root.# It will print the reason why it failed. For example:# $ sudo /usr/bin/cupsd -l# /usr/bin/cupsd: error while loading shared libraries: libpaper.so.2: cannot open shared object file: No such file or directory
And last but not least install simple-scan to use a simple UI for scanning:
sudopacman-Ssimple-scan
If you want OCR in addition, there is a neat little trick: Download the simple-scan-postprocessing.sh script from its code repository, make it executable and store it somewhere safe on your machine. Then open Document Scanner > Preferences configure its postprocessing:
The script is going to apply an OCR algorithm you saved the scan as PDF and makes it searchable.
Please Note: The postprocessing script requires Docker for its work - so make sure you installed it on your machine.
Download the latest "Driver Install Tool" for Linux from the Brother MFC-L2710DW download page (linux-brprinter-installer-2.2.3-1.gz at the time of this writing).
Then install the drivers as documented on the download page (open the Terminal and execute the following commands):
# Change to the download directory:cd~/Downloads# Extract the downloaded filegunziplinux-brprinter-installer-*.gz# Make the extracted shell script executablechmod+xlinux-brprinter-installer-*# Run the install tool with the printer type with root permissions:sudo./linux-brprinter-installer-*MFC-L2710DWYouaregoingtoinstallfollowingpackages.mfcl2710dwpdrv-4.0.0-1.i386.debbrscan4-0.4.11-1.amd64.debbrscan-skey-0.3.1-2.amd64.debOK? [y/N] -> y...Doyouagree? [Y/n] -> Y...# For USB Users: Choose N(No)# For Network Users: Choose Y(Yes) and DeviceURI number.WillyouspecifytheDeviceURI? [Y/n] -> Y...0:cups-brf:/1:lpd2:http3:socket4:hp5:beh6:ipps7:https8:ipp9:dnssd://Brother%20MFC-L2710DW%20series._ipp._tcp.local/?uuid=e3248000-80ce-11db-8000-3c2af4943c7a10:lpd://BRW802BF9F1CFD8/BINARY_P111:ipp://Brother%20MFC-L2710DW%20series._ipp._tcp.local/12 (I): Specify IP address.13 (A): Auto. (dnssd://Brother%20MFC-L2710DW%20series._ipp._tcp.local/?uuid=e3248000-80ce-11db-8000-3c2af4943c7a)select the number of destination Device URI. -> 13...TestPrint? [y/N] -> y...Youaregoingtoinstallfollowingpackages.brscan4-0.4.11-1.amd64.deb...Doyouagree? [Y/n] -> Y...Youaregoingtoinstallfollowingpackages.brscan-skey-0.3.1-2.amd64.deb...Doyouagree? [Y/n] -> Y...Settingupbrscan-skey (0.3.1-2) ...enterIPaddress ->192.168.1.234# Enter the printer's IP address
HP Color Laser Jet Pro MFP M281 fdw
Printing
In order to be able to print with a HP Color Laser Jet Pro MFP M281 fdw on elementary OS 6.1, you don't have to do anything. It works right out of the box.
Scanning
Even though the printer itself works out of the box, you need to install a proprietary plugin from HP to be able to scan anything. Because HPLIP added official support for elementary OS 6.1 in a newer HPLIP version, the easiest way to do so is to update the installed HPLIP version.
To do so, go to the HPLIP download page and download the latest version for elementary OS (v3.22.2 at the time of this writing).
For installation, execute the following commands in your Terminal:
Now we are finally ready to download the proprietary plugin with the following command:
$hp-plugin-iHPLinuxImagingandPrintingSystem (ver. 3.22.2)PluginDownloadandInstallUtilityver.2.1...-----------------------------------------|PLUG-ININSTALLATIONFORHPLIP3.22.2|-----------------------------------------ThedriverpluginforHPLIP3.22.2appearstoalreadybeinstalled.Do you wish to download and re-install the plug-in? (y=yes*, n=no, q=quit) ? yerror: No system tray detected on this system. Unable to start, exiting.
OptionDescription------------------------------------------------------------dDownloadplug-infromHP (recommended) pSpecifyapathtotheplug-in (advanced) qQuithp-plugin (skip installation) Enteroption (d=download*, p=specifypath,q=quit) ? d...Doyouacceptthelicensetermsfortheplug-in (y=yes*, n=no,q=quit) ? yDone.