[gpm] splitted libgpm and gpmd, 9p, ...

Enrico Weigelt weigelt@metux.de
Tue Jun 3 00:17:56 CEST 2008

* Nico Schottelius <nico-gpm@schottelius.org> wrote:


> >
> > Maybe you could give me an quick howto for git ?
> Imho git is really easy, once one understood the model of a
> decentralized system.
> In general you do:
<big_snip />

thx, I'll try it out in a few day.

> > Well, the first point is that internal status and runtime configuration
> > can now be accessed via a simple filesystem interface. Not special 
> > protocol and tools needed - just mount it (my mc-9p has an 9p vfs :))
> > and use plain file io. With 9P it's completely network agnostic.
> Sounds nice.


Maybe you'd like to try it out. You need:

a) libmixp:	http://releases.metux.de/libmixp/
   (it also includes an little cmdline in the cmd/ dir)
b) libmixpsrv:	http://releases.metux.de/libmixpsrv/
c) libgpm:	svn://svn.metux.de/public/gpm/libgpm/	(use latest tag)
d) gpmd:	svn://svn.metux.de/public/gpm/gpmd/	(use 9psrv branch)

> > The next step is an 9P-based event interface (a bit like linux-evdev,
> > but purely text-based and network agnostic), which just sends the input 
> > events (not only mouse) line per line. No special protocol needed,
> > a read loop and a bunch of strcmp() and sscanf() will be enough.
> I would advise against sscanf(), as it makes error prone coding quite
> easy.

Well, then use another simple-text-parsing function of your choice ;-o
The major point is that evrything goes through an _simple_ text 
representation, so things like typesizes, bytesex etc are irellevant.

> > One day this new interface should completely replace the current 
> > gpm protocol, so libgpm isn't really necessary for many apps anymore.
> I am not sure, whether this will happen (though actually it may), but I
> would be interested in your plans about integration in the mainline of
> gpm.

Both protocols could be optional (via --enable-* switch), so user/packager
can decide. Or the old protocol is simply provided by an proxy.

> In my opinion you should base your work on the gpm-2-* branches, add a
> configure option --enable-9p and put your stuff below src/9p/.

I'll have a look at the gpm-2 branch and check what's changed. 
But at least there should be an backwards-compatible libgpm.

 Enrico Weigelt    ==   metux IT service - http://www.metux.de/
 Please visit the OpenSource QM Taskforce:
 Patches / Fixes for a lot dozens of packages in dozens of versions:

More information about the gpm mailing list