$ ./change-override -c main -S sane-airscan
Override component to main
sane-airscan 0.99.25-0ubuntu1 in hirsute: universe/misc -> main
sane-airscan 0.99.25-0ubuntu1 in hirsute amd64: universe/graphics/optional/100%
-> main
sane-airscan 0.99.25-0ubuntu1 in hirsute arm64: universe/graphics/optional/100%
-> main
sane-airscan 0.99.25-0ubuntu1 in hirsute armhf: universe/graphics/optional/100%
-> main
sane-airscan 0.99.25-0ubuntu1 in hirsute ppc64el:
universe/graphics/optional/100% -> main
sane-airscan 0.99.25-0ubuntu1 in hirsute riscv64:
universe/graphics/optional/100% -> main
sane-airscan 0.99.25-0ubuntu1 in hirsute s390x: universe/graphics/optional/100%
-> main
Override [y|N]? y
7 publications overridden.
** Changed in: sane-airscan (Ubuntu)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to sane-airscan in Ubuntu.
https://bugs.launchpad.net/bugs/1891682
Title:
[MIR] sane-airscan
Status in sane-airscan package in Ubuntu:
Fix Released
Bug description:
Driverless Scanning
-------------------
TL;DR: sane-airscan provides perfect support for driverless scanning,
making thousands of devices working
Printer manufacturers have introduced driverless printing standards to
allow easy use of their (usually network) printers also from mobile
phones, tablets, and IoT devices and not only from desktop computers
which in most cases run Windows or Mac OS. This we have made use of to
be able to print on a huge amount of printers from Linux and other
free software operating systems.
But multi-function devices with a scanner do also allow scanning from
mobile devices and have a scan standard for that. Every device which
supports Apple's AirPrint supports also AirScan and AirScan means that
the device either scans via eSCL (from HP and Apple) or via WSD (from
Microsoft and W3C).
Also of this we make use to get a wide range of devices "just" working
under Linux. This covers practically any modern network multi-function
device, thousands of models. Finally we can also scan on multi-
function devices which are not from HP (but scanning on the HP ones
gets also easier, without needing HPLIP). And we even have discovered
a USB-only stand-alone scanner doing driverless scanning, the Canon
Lide 400.
sane-airscan is the a SANE backend for supporting this. It supports
both eSCL and WSD to their full extent, especially also for scanners
with extra functionality like an Automatic Document Feeder (ADF). It
is designed as a universal SANE backend for high-level scanning
protocols, as much of the code as possible is shared between
protocols, the protocol-specific parts are small. So easily new
protocols, like TWAIN Direct or IPP Scan, can get added later. IPP
Scan is especially important as it will help us to make scanner
drivers snappable in the future.
Why not sane-escl which sane-backends already ships?
----------------------------------------------------
TL;DR: sane-escl is deprecated in favor of sane-airscan
The first approach of driverless scanning which made it into Ubuntu
was the sane-escl SANE backend, as part of the sane-backends package
which we already include. This was easier to get in before Feature
Freeze of 20.04 back in February, not requiring to get sane-airscan
through NEW and then through a MIR. Also it was unclear in that time
whether sane-airscan would be integrated into sane-backends.
Now a lot has changed with the time:
The authors of sane-escl and sane-airscan started their projects
independently both also only supporting eSCL and not yet WSD. They
were competing with each other and had some different priorities in
their developments. I talked with them and asked them why they would
not collaborate and succeeded to make them agree with each other. Now
development of sane-escl has stopped and all effort goes into sane-
airscan.
In addition, WSD support was added to sane-airscan and sane-airscan
has matured a lot, with a lot of users reporting their devices working
and the author having fixed a lot of bugs based on reports and logs
from users.
sane-airscan supports both WSD and eSCL, sane-escl only eSCL.
sane-airscan supports ADF scanning, sane-escl only scanning from the
glass.
Why not add sane-airscan to sane-backends upstream?
---------------------------------------------------
Tl;DR: Developemnt and release pace is much faster than of SANE, with
the IPP-Scan-based scanning architecture in the future only sane-
airscan and not the scanner driver arsenal of sane-backends will be
needed by applications.
The author of sane-airscan asked for adding his backend to sane-
backends in the beginning:
https://gitlab.com/sane-project/backends/-/issues/202
In the end it seems that they have settled to keep sane-airscan
separate, mainly due to its much faster development pace. sane-
backends is only released one or two times per yer and in these
intervals a lot is happening with sane-airscan. Therefore it gets
released much more often.
I also think that it is good that it is separate, as soon the scanning
architecture will change to allow snapping everything. Scanner drivers
will get hidden in a so-called Scanner Application, an emulation of an
IPP scanner. As IPP is a network protocol with only IP communication
and no need of dropping driver files into certain directories of the
system the scanner driver can be easily snapped this way. User
Applications will only need to support IPP scanners than, nothing
else. As sane-airscan will get added IPP Scan in the future, this will
be the only SANE backend needed to be available, so sane-backends does
not need to be installed. User Applications can also be snapped with
sane-airscan include in the Snap.
[Availability]
sane airscan is available in Universe:
https://launchpad.net/ubuntu/+source/sane-airscan/0.99.12-1ubuntu2
It made it also into Debian Unstable. The packaging is practically the
same. There are only slight differences in the build dependencies due
to different software versions available in Debian and Ubuntu.
It builds on all currently supported architectures.
[Rationale]
See introduction above. Replaces sane-escl in sane-backends. As soon
as sane-airscan makes it into Main I recommend building sane-backends
without sane-escl and also let it recommend sane-airscan, to guide the
user to the correct backend.
[Security]
No CVE on http://cve.mitre.org/cve/search_cve_list.html
No mention on https://www.openwall.com/lists/oss-security/
Not listed on http://people.ubuntu.com/~ubuntu-
security/cve/universe.html
No SUID/SGID
sane-airscan is a SANE backend, a scanner driver in the form of a
shared library which gets dynamically linked by SANE clinets (SANE
frontends). It runs always as the user running the client, whee the
cleint is usually some GUI application, like simple-scan or XSane
which is run as ordinary user. As the scanning protocols this backend
supports are all network (IP) protocols no special group ownerships
(SUID/SGID).
The package also contains the diagnostic utility /usr/bin/airscan-
discover which is also run as ordinary user only, manually for
debugging purposes. It lists supported scanners, also only using
network (IP) communication.
[Quality assurance]
To use sane-airscan one simply installs it and starts any SANE
frontend, like simple-scan or XSane. The frontend lists all available
driverless scanners then and the user can select a device and scan as
with any other scanner. No configuration is required, all absolutely
intuitive. The config file /etc/sane.d/airscan.conf is only for
debugging and rare corner cases. To use it with USB devices ipp-usb
(MIR bug 1891157) needs to be installed in addition, also no
configuration by the user required.
sane-airscan does not use debconf at all.
sane-airscan is maintained upstream very well and actively developed,
by the same author as ipp-usb.
Upstream site:
https://github.com/alexpevzner/sane-airscan
Recent commits:
https://github.com/alexpevzner/sane-airscan/commits/master
Bugs:
https://github.com/alexpevzner/sane-airscan/issues
(Only 2 open ones, 47 closed, issues mainly concerning certain hardware model)
The author of sane-airscan, Alexander Pevzner, is very responsive,
usually answers on the same day. He is actively working on driverless
scanning (will mentor 2 students in LFMP on IPP Scan in Sep-Nov). He
works closely together with OpenPrinting.
No known open bugs in Debian and Ubuntu (Launchpad only lists this
MIR).
Debian maintainer OdyX also very responsive.
No exotic hardware required, is for supporting the absolute standard
hardware, most modern multi-function devices and several modern stand-
alone scanners, even very cheap ones. See introduction above.
The package has a debian/watch file and the content of the file seems
to be correct.
No dependencies on obsolete stuff.
[Dependencies]
Build-depends only on standard packages in Main: libavahi-..., libxml,
libjpeg, libpng, libgnutls, also build-depends on libsane-dev
For USB scanners Avahi needs to support localhost, but Ubuntu's Avahi
does this already for some years.
The ipp-usb needed for USB scanners is treated in bug 1891157.
For network scanners everything is readily available in Main.
[Standards compliance]
Package fulfills the standards concerning FHS. Files are at the
expected location. Especially the SANE backend and its config files
are where Ubuntu's SANE packages expect them.
The package declares Debian's "Standards-Version" as 4.5.0, Debian
maintainer takes care of verifying and updating this. debian/
directory and debian/rules file are simple, fairly standard.
[Maintenance]
See [Quality assurance] above for upstream and Debian maintenance. I
have subscribed myself to bugs in both packages and also the Ubuntu
Printing Team. Also "Desktop Packages" (~desktop-packages) is
subscribed to this package.
[Background information]
See introduction above.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/sane-airscan/+bug/1891682/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp