[sane-devel] Fwd: Ubuntu documentation

Olaf Meeuwissen paddy-hack at member.fsf.org
Mon Jun 24 14:04:19 BST 2019


Steven Santos writes:

> I neglected to send this reply to the list, only Allan got it...
> But also see #225 in the linked thread.
> ---------- Forwarded message ---------
> From: Steven Santos <steven at simplycircus.com>
> Date: Sun, Jun 23, 2019 at 6:22 PM
> Subject: Re: [sane-devel] Ubuntu documentation
> To: m. allan noah <kitno455 at gmail.com>
> Several scanners are having this issue, and the work-around has been to do
> the upload as root, then scan as a regular user.  It appears to be a
> permissions issue, but people have thus far been unable to solve it with
> udev rules.
> https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1728012  posts
> 41 and 45 as an example.

That bug report has also been reported against our backends project.
See https://gitlab.com/sane-project/backends/issues/45

BTW, a related Ubuntu bug reports is in

  https://bugs.launchpad.net/ubuntu/+source/sane-backends/+bug/1707352 is

I've only skimmed the first bug report (1728012) but it seems that a
large number of third-party backend supported scanners stopped working
when "artful" was released.  The bug reports starts with

  Many scanners can no more be used since sane has changed something

Fair enough, from zesty to artful, the SANE backends went from

  zesty : libsane 1.0.25+git20150528-1ubuntu4
  artful: libsane1 1.0.27-1~experimental2ubuntu1

but we did *not* change any of those third-party backends.  More
importantly, the dll backend did not change how it finds and loads any
of the backends that are configured in dll.conf or dll.d/*.  Anyone can
"easily" confirm this by inspecting the output of

  git log  RELEASE_1_0_25..RELEASE_1_0_27 -- backend/dll.*
  git diff RELEASE_1_0_25..RELEASE_1_0_27 -- backend/dll.*

If third-party backends are no longer loaded by the dll backend (you can
check with

  SANE_DEBUG_DLL=5 scanimage -L

what backends are and are not loaded), then that is *not* something that
the sane-backends broke.  It has everything to do with the directories
where the dll backend looks but that is something that is configured by
the distribution.  If the distribution stops looking where third-party
backends have been installed for ages (that's called breaking backward
compatibility), then that's the distribution's prerogative but it is
also *their* task to sort out the resulting breakage that their users

Of course, third-party also *should* follow the distributions they, eh,
"support" and update their packages accordingly.  Ideally, they'd even
reply to their users' support requests ...
# Eh, that's assuming they even have a place you can contact them :-/

> On Sun, Jun 23, 2019 at 1:14 PM m. allan noah <kitno455 at gmail.com> wrote:
>> I don't know of any reason that a sane backend would require the
>> firmware upload to be done as root. All of sane runs in user space.
>> Can you please elaborate?

All of SANE runs in user space all right, but whatever process tries to
upload that firmware file still needs write privileges to wherever that
scanner is located at.  Our SANE backends don't do anything tricky that
I'm aware of and upload firmware from the same process as the frontend's
but if a third-party "outsources" the upload to a separate process that
might not have the required write privilege.

It's a bit of a long shot, but I thought I'd mention it.

# I know that some of the third-party non-free EPSON plugins load the
# firmware from the plugin, which may be running in a separate process
# (depending on the plugin, I don't really remember all the details).

Other than that, from the bug report mentioned it looks like printer
related udev rules may be clobbering third-party scanner rules (more
likely so for all-in-one type devices).  To complicate matters further,
the *distribution* *specific* sane-backends rules may clobber part of
those printer rules yet again.

Hope this helps,
Olaf Meeuwissen, LPIC-2            FSF Associate Member since 2004-01-27
 GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13  F43E B8A4 A88A F84A 2DD9
 Support Free Software                        https://my.fsf.org/donate
 Join the Free Software Foundation              https://my.fsf.org/join

More information about the sane-devel mailing list