"Desktop Packages" (~desktop-package) is now also subscribed to sane-
airscan.

** Description changed:

  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 "Ubuntu Desktop Bugs" (~desktop-bugs) is subscribed
+ Printing Team. Also "Desktop Packages" (~desktop-packages) is subscribed
  to this package.
  
  [Background information]
  
  See introduction above.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1891682

Title:
  [MIR] sane-airscan

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/sane-airscan/+bug/1891682/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to