Scanners in HAL

Étienne Bersac bersace03 at laposte.net
Mon Aug 28 05:49:23 PDT 2006


Hello all.

Since march 2006, I'm designing and building a Gnome solution for scan.
I wrote most of the code for the Google Summer of Code 2006 which is now
closed.

As a first step. I create two libraries. libgnomescan which provide a
sane GLib wrap and more. And libgnomescanui which is a bunch of widget
ready for use in app and plugins. I also wrote a tiny app and a Gimp
plugin that use the libraries.

The homepage of the project is http://home.gna.org/gnomescan/index .
I've just uploaded this webpage this morning. You'll see there links,
screenshots or app and Gimp plugin, and documentations of libraries.

Currently, GnomeScan is just like other scan app on Linux : it use
directly SANE and probe devices at each run. No buttons are handle and
sharing scanner need editing /etc files.


What we all want in the desktop is a daemon that handle the list of
devices, emit buttons events and share scanner. I want to get ride of
that probe dialog at each UI run.

I think that HAL can at least list devices. Maybe handle buttons event.
I search HAL for scanner support and obviously there is a huge lake.
Scanning had always lake attention. I heard that SuSE had a "HAL patch
for sane" or similar. But i can't reach to install SuSE from network :(.
(And don't want to burn 5 CD at all).

There is a sanebuttonsd deamon which just execute scripts when a button
is pressed. saned is responsible to publish devices. I mean that each of
these piece of software use libsane to probe themselve devices. Each
have to "maintain" the list of devices.

I want a daemon that handle at least device probe and publish them to
application. A daemon that handle buttons event and emit a dbus signal
would be nice. Patching saned to publish share with avahi would rock.

I would be glad to implement all of this features.

However, i don't have a clue of what is needed. As far as i understand,
a good solution would be to have a service that handle the list of
devices, tell hald for each devices and fill scanner namespace fields.
(Maybe a sane namespace would be nice to include sane device name and
other sane specific infos). This dbus service monitor devices for button
press. Once a button is pressed, a signal is emitted. I don't know how
g-v-m handle device signal, is that all hal signals ? Does the dbus
service have to trigger hal signals or trigger its own signals ?

I have many questions about the design and the implementation. That
would be nice to be mentored.


So, do you want this feature ? Do you want me to implement this ? Do you
want to help me to implement this ? Do you want to make me a HAL
contributor ? Is HAL able to trigger buttons-pressed signals ?

Thanks.

Étienne.
-- 
Verso l'Alto !



More information about the hal mailing list