This is my first topic on this forum. I’ve recently switched from using Ubuntu 24.10 to Clear Linux OS.
I’ve run into a bit of a roadblock while trying to set up my HP 4100 Series multifunction printer and scanner. Using CUPS, I managed to get the printer working perfectly. However, I’m struggling with the scanner setup. I installed the GNOME scanning software, but unfortunately, it doesn’t recognize the scanner.
I’m running Clear Linux version 42790 on my device which is an HP product: 550-132nl (X6Z04EA#ABZ).
CL does provide the hplip package needed for hp printing GitHub - clearlinux-pkgs/hplip
however, based on the .spec file, it’s built without a lot of the options which eg: fedora uses. Here’s a comparison
HPLIP takes some work to setup, and it’s not always clear which scanner models require proprietary binary components that we don’t ship. Have you tried using hp-setup to configure the scanner or scanimage -L to try to detect it directly via sane?
If you can’t get it working with our open-source-only build of hplip, it might be worth downloading and installing the official package from HP (HP Linux Imaging and Printing | hp's Developer Portal) as shown earlier in that guide.
I’m adding sane-airscan to the hardware-printing bundle. Once it’s in a release, you should be able to run airscan-discover to try to find your scanner.
I used CUPS to configure the printer and performed a test print, which was successful. Afterwards, I installed Document Scanner from Flathub and started it, but the scanner was not detected. This morning, I uninstalled the printer and used hp-setup to reinstall it. Due to time constraints, I wasn’t able to check if the scanner works. I will update you this evening.
I have just returned, and now the app is listing it. However, when I press ‘acquire images,’ it returns ‘Unable to connect to the scanner.’ From the app settings, it doesn’t seem possible to choose the paper tray. Now I’ll start learning how to install sane-airscan, unfortunately, I’m not very familiar with command-line instructions.
org.gnome.SimpleScan is already in the distro. If you can wait a couple of days for a new release to come out, then sane-airscan will be in there too. It’s at least easier to debug natively-installed vs. Flatpak, especially when trying to connect to an external device.
When I installed ClearLinux 42100 (because if I try to install directly from 42790, the installer triggers a Kernel Panic during startup), I didn’t find SimpleScan preinstalled. I had to download it from Flatpak. I’ll wait a few days, thanks again.
It’s provided by the desktop-apps bundle, and shows up in the menu under GNOME/GTK/Graphics/Scanning, or just launch the menu and start typing ‘scan’, for example. Or launch from the command line as ‘simple-scan’.
During installation, I didn’t choose to add any ‘additional bundles,’ so it wasn’t preinstalled. At this point, I’ll uninstall it from Flatpak and install it via swupd.
One last thing, I’ve noticed that launching SimpleScan requires administrative rights each time. Is it possible to remove this requirement since the scanner is already listed? Unfortunately, without entering the password, I cannot scan.
I did some testing here. I believe it’s prompting for administrative rights in order to scan USB for devices. If I cancel that prompt, my wireless scanner still shows up. If you’re connected via USB, you’ll need to add yourself to the scanner group (see /usr/lib/udev/rules.d/60-libsane.rules) to access your device.
When I did that (sudo usermod -a -G scanner $(whoami) and reboot), I still got the prompt for the sake of discovery, but should be able to access a USB-connected scanner. I don’t know if there’s a way to configure simple-scan to use a specific scanner by default vs. trying to discover them every time.
Hi, I’m doing a bit of troubleshooting. My scenario is that, since it’s a multifunction device, it works both as a scanner and a printer. To print, I need to use the hplip software, while to scan, I use airscan-discover. This is why in the list on Simple Scan, I see two entries: one with the printer model and the other with the wsd prefix. Using the scanner with the second entry, I can indeed scan without administrative rights. However, if I remove the first entry, I can’t print anymore.
Sure, there are multiple printing and scanning protocols, such as LPR, IPP, eSCL, and WSD, and many devices support 2-4 protocols across multiple interfaces (and the print interfaces may support multiple languages). In addition to the common protocols, hplip provides both printing and scanning interfaces in a way that looks more uniform, though under the hood it’s still two completely different drivers for the different functions, just with the same name. You can certainly leave both hplip and WSD enabled and just select the WSD interface when you need to scan – it would be nice if simple-scan supported some persistent configuration there.
But the permissions issue comes down to USB. You can see it if you run sane-find-scanner as a user and then as root. And you can find the group for the USB devices it complains about with ls -lR /dev/bus/usb/. I mentioned adding yourself to the scanner group, but if the HP device presents as a single USB device, it might have the group lp instead, so just add yourself to that group as well.
All of this is moot if you’re only connected to the device wirelessly, though, as that isn’t affected by device permissions.
$ scanimage -L
which: no avahi-browse in (/usr/local/bin:/usr/bin/haswell:/usr/bin:/opt/3rd-party/bin)
device `airscan:w0:HP DeskJet 4100 series' is a WSD HP DeskJet 4100 series ip=192.168.1.3
device `hpaio:/net/DeskJet_4100_series?ip=192.168.1.3' is a Hewlett-Packard DeskJet_4100_series all-in-one
On this forum, they suggest the solution: Comment out hpaio in /etc/sane.d/dll.d/hplip
But while searching /etc/, I can’t find this folder.
Right, because this is a stateless distribution, we don’t dump stuff in /etc by default. If it really bugs you, you could try:
# Disable all *extra* SANE backends
$ sudo mkdir -p /etc/sane.d/dll.d
# Enable the airscan backend as an extra (excluding epsonscan2 and hpaio, for example)
$ sudo ln -s ../../../usr/share/defaults/sane/dll.d/airscan /etc/sane.d/dll.d/airscan
Or if you want to make sure that absolutely no other scanner drivers are used:
$ sudo mkdir -p /etc/sane.d
# *Only* enable the airscan backend, completely disabling any other backends
$ echo airscan | sudo tee /etc/sane.d/dll.conf
…because sane configuration files or directories in /etc will overrule the defaults we provide in /usr/share/defaults/sane.