[sane-devel] incompatible iscan-2.11.0

Johannes Meixner jsmeix at suse.de
Thu Apr 24 08:48:57 UTC 2008

Hello Olaf,

first of all many thanks for your answers.
Of course I know that it is not and never was you who is
responsible for the mess with the proprietary parts in IScan.

I hope I made it sufficiently clear that the management
of Epson or Avaysy is responsible for the mess, in particular
because those managers seem to be either chicken-hearted or
arrogant because they just do not talk to the people who try
to provide out-of-the-box support for their proprietary crap
but finally this ordeal seems to come to an end soon.

On Apr 24 16:35 Olaf Meeuwissen wrote (shortened):
> Johannes Meixner <jsmeix at suse.de> writes:
> >
> > For example I would of course still distribute the free part
> > of Iscan in our iscan-free package but drop the packages which
> > contain proprietary stuff and add an explanatory message to
> > the YaST scanner config to direct the user to the Epson Avasys
> > web site if a proprietary model is used.
> You know what would be even better?  YaST being able
> to offer the user to download, install and configure
> that proprietary "crap" automatically.

Because of legal issues we cannot do anything automatically
with proprietary stuff.

For example when currently a proprietary model requires
our proprietary iscan package from our CD/DVD/repository,
I cannot install it via the YaST scanner configuration
because here the installation would happen somewhat
silently and automatically in the background.

All I can do is to show a message which tells the user
to install it manually (with the YaST installer module)
because only the manual installation makes sure that the
popup regarding the proprietary license is shown and that
possible conflicts (iscan conflicts with iscan-free)
are shown in full detail together with the matching
choices/buttons what to do regarding a proprietary
license and/or regarding conflicts.

Those are the messages that the YaST scanner config shows
for openSUSE 11.0 if the proprietary iscan is needed:
The package iscan should be installed
but it contains proprietary binary-only i386-only software.
Therefore it is only available for i386-compatible architectures.
Some scanners are also supported by another driver.
If you really want to install iscan, you must do it manually.

And an addendum if iscan is needed on AMD 64-bit systems:
Iscan is only available as 32-bit software.
On AMD 64-bit (x86_64) systems the scanner driver in
the iscan package works only if also the scanning user
frontend is 32-bit software.
You can use the special frontend /usr/bin/iscan for Epson
scanners which is included in the iscan package.
If you like to use a standard frontend like scanimage,
xscanimage, xsane, or kooka, you must explicitely install
the 32-bit package version (i.e. get the package from
the right media or repository).

The 32-bit-only mess with the proprietary stuff is another
reason not to try to do anything automated here.

Compare for example the proprietary stuff in HPLIP
HP was in contact with me regarding how to provide support
for ZJStream printers in compliance to the free licenses.

In the end they do it the same way as IScan:
Via an optional external library (via dlopen).
The crucial point is that the HPLIP software works well in general
even without such a library. Only the ZJStream printers need it.

HP checked the third-party license stuff and all what is requird
is a EULA which must be accepted by the user.

The download functionality of hp-setup does "the right thing"
which is needed to support ZJStream printers.

We take only the perfectly free-software upstream HPLIP
package and distribute it.
We do not download and/or distribute any proprietray stuff
from HP.
We distribute the HP setup tool as is in the free-software
upstream package.
We rely on HP's setup tool as is to take care of everything
regarding their proprietray stuff (e.g. displaying the EULA,
downloading the right proprietray stuff from the right server,
install the proprietary stuff at the right place with the
right permissions, set up the printer accordingly,
whatever else...).

I think for future openSUSE versions (not for 11.0 which
provides iscan 2.10.0 packages as we did before) I will do
the same for IScan:
I distribute only the free parts of IScan.
I do not distribute and/or download and/or install
any proprietray stuff from Avasys (or elsewhere).

Because there is no "iscan-setup" tool available,
I can only show a message to the user to go to
the Avasys web site.

Perhaps a free "iscan-setup" tool in the IScan package
would be nice to have.
This way Avasys has full control over their proprietray stuff
and on the other hand it would remove the load from the
distributors to deal with their proprietray stuff.

By the way:
Again I request to split any non-free stuff from IScan
(i.e. the whole content of the non-free/ source directory)
and provide the iscan frontend as separated package.

> The LSB's OpenPrinting workgroup is heading in that direction and IIRC
> Till has already added support for something like that to Fedora's
> printerconfig if I'm not mistaken.  It gets the printer "driver" from
> the Foomatic database (or via a URL registered) there.  Something like
> this could be done for scanners as well.

We will support this for printers in the future, see
(note the preselected "[X] Show Only Free Software").
For the full story see

I look forward to the moment when there are LSB compatible
IScan packages available at the LSB/OpenPrinting server!

To make a maximum number of users and distributors happy,
provide well separated packages:
- One free software package for all architectures
  which contains the epkowa backend and the free
  iscan-setup tool.
- One proprietary package for those architectures
  which you like which contains the iscan frontend.
- For each proprietary model a proprietary package
  for those architectures which you like which contains
  the proprietary plugin.
- For each proprietary model which needs firmware upload
  a proprietary package for all architectures which contains 
  the firmware file.

Note the difference:
Proprietary plugins are architecture dependant.
Firmware files are not architecture dependant.

Kind Regards
Johannes Meixner
SUSE LINUX Products GmbH, Maxfeldstrasse 5, 90409 Nuernberg, Germany
AG Nuernberg, HRB 16746, GF: Markus Rex

More information about the sane-devel mailing list