Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-03-02 Thread Daniel P. Berrange
On Thu, Mar 02, 2017 at 07:59:42AM +0100, Pavel Grunt wrote:
> On Mon, 2017-02-27 at 10:44 +, Daniel P. Berrange wrote:
> > On Mon, Feb 27, 2017 at 11:37:44AM +0100, Pavel Grunt wrote:
> > > Hello Daniel,
> > > 
> > > On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> > > > Consume the keymaps.csv file from a git submodule instead of
> > > > having
> > > > a private copy. This makes it easier to ensure all users of the
> > > > keymap
> > > > (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> > > > consistent
> > > > set of data.
> > > > 
> > > 
> > > besides that it also allow us to drop the dependency on perl (also
> > > perl-Text-CSV is not packaged in some distros)
> > 
> > True yes, I intentionally kept the python code so that it only
> > used modules base-python installs so we don't rely on external
> > modules from pypi.
> > 
> > > Are there contributing rules for the keycodemapdb (where to send
> > > the
> > > patches etc.)?
> > 
> > Just send pull requests to the repo is best I think. I don't think
> > we'd
> > have enough traffic to warrant creating a new mailing list. In any
> > case I would expect that most bug reports would start off with a
> > mail
> > and/or bug report to a project using the module. eg a mail on spice-
> > devel,
> > so there's little point trying to artificially move discussion to a
> > dedicated list.
> > 
> > I'm happy to add any of the people with experiance of this code to
> > the
> > admins/committers list of the gitlab project too, so I'm not a
> > potential
> > bottleneck.
> Feel free to add me (nickname "xerus")

Ok, I added you as co-owner to increase the bus factor

Regards,
Daniel
-- 
|: http://berrange.com  -o-http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org  -o- http://virt-manager.org :|
|: http://entangle-photo.org   -o-http://search.cpan.org/~danberr/ :|
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-03-02 Thread Daniel P. Berrange
On Thu, Mar 02, 2017 at 08:16:15AM +0100, Pavel Grunt wrote:
> On Thu, 2017-03-02 at 07:59 +0100, Pavel Grunt wrote:
> > On Mon, 2017-02-27 at 10:44 +, Daniel P. Berrange wrote:
> > > On Mon, Feb 27, 2017 at 11:37:44AM +0100, Pavel Grunt wrote:
> > > > Hello Daniel,
> > > > 
> > > > On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> > > > > Consume the keymaps.csv file from a git submodule instead of
> > > > > having
> > > > > a private copy. This makes it easier to ensure all users of
> > > > > the
> > > > > keymap
> > > > > (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> > > > > consistent
> > > > > set of data.
> > > > > 
> > > > 
> > > > besides that it also allow us to drop the dependency on perl
> > > > (also
> > > > perl-Text-CSV is not packaged in some distros)
> > > 
> > > True yes, I intentionally kept the python code so that it only
> > > used modules base-python installs so we don't rely on external
> > > modules from pypi.
> > > 
> > > > Are there contributing rules for the keycodemapdb (where to send
> > > > the
> > > > patches etc.)?
> > > 
> > > Just send pull requests to the repo is best I think. I don't think
> > > we'd
> > > have enough traffic to warrant creating a new mailing list. In any
> > > case I would expect that most bug reports would start off with a
> > > mail
> > > and/or bug report to a project using the module. eg a mail on
> > > spice-
> > > devel,
> > > so there's little point trying to artificially move discussion to
> > > a
> > > dedicated list.
> > > 
> > > I'm happy to add any of the people with experiance of this code to
> > > the
> > > admins/committers list of the gitlab project too, so I'm not a
> > > potential
> > > bottleneck.
> > 
> > Feel free to add me (nickname "xerus")
> > 
> > > 
> > > > (For the future) Do you consider adding the
> > > > vncdisplaykeymap.[ch]
> > > > to
> > > > the repo ?
> > > 
> > > I'm unsure of the direction to take for that at this time. It
> > > would
> > > certainly be interesting to look at sharing that logic. For
> > > sharing
> > > code though, I wonder if its better to create a
> > > libgtkkeycodemap.so
> > > library rather than do a sub-module thing for that code too.
> > 
> > we have both ways in spice-common
> > 
> > About the patch - the generated file are not the same (I used git
> > diff
> > --word-diff)
> > 
> > xorgkbd2xtkbd - empty
> > xorgxquartz2xtkbd - some values are different
> > 
> > Pavel
> > 
> > https://paste.fedoraproject.org/paste/N9n1q2y3dZHDNhMOaIA5c15M1UNdIG
> > Yh
> > yRLivL9gydE=
> > 
> Ok, I see it is fixed in the current git master (this submodule is one
> commit behind)

Yes, just verified that accounts for the difference you see - i'll send
a new patch.

Regards,
Daniel
-- 
|: http://berrange.com  -o-http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org  -o- http://virt-manager.org :|
|: http://entangle-photo.org   -o-http://search.cpan.org/~danberr/ :|
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-03-02 Thread Christophe Fergeau
On Thu, Mar 02, 2017 at 08:16:15AM +0100, Pavel Grunt wrote:
> On Thu, 2017-03-02 at 07:59 +0100, Pavel Grunt wrote:
> > On Mon, 2017-02-27 at 10:44 +, Daniel P. Berrange wrote:
> > > On Mon, Feb 27, 2017 at 11:37:44AM +0100, Pavel Grunt wrote:
> > > > Hello Daniel,
> > > > 
> > > > On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> > > > > Consume the keymaps.csv file from a git submodule instead of
> > > > > having
> > > > > a private copy. This makes it easier to ensure all users of
> > > > > the
> > > > > keymap
> > > > > (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> > > > > consistent
> > > > > set of data.
> > > > > 
> > > > 
> > > > besides that it also allow us to drop the dependency on perl
> > > > (also
> > > > perl-Text-CSV is not packaged in some distros)
> > > 
> > > True yes, I intentionally kept the python code so that it only
> > > used modules base-python installs so we don't rely on external
> > > modules from pypi.
> > > 
> > > > Are there contributing rules for the keycodemapdb (where to send
> > > > the
> > > > patches etc.)?
> > > 
> > > Just send pull requests to the repo is best I think. I don't think
> > > we'd
> > > have enough traffic to warrant creating a new mailing list. In any
> > > case I would expect that most bug reports would start off with a
> > > mail
> > > and/or bug report to a project using the module. eg a mail on
> > > spice-
> > > devel,
> > > so there's little point trying to artificially move discussion to
> > > a
> > > dedicated list.
> > > 
> > > I'm happy to add any of the people with experiance of this code to
> > > the
> > > admins/committers list of the gitlab project too, so I'm not a
> > > potential
> > > bottleneck.
> > 
> > Feel free to add me (nickname "xerus")
> > 
> > > 
> > > > (For the future) Do you consider adding the
> > > > vncdisplaykeymap.[ch]
> > > > to
> > > > the repo ?
> > > 
> > > I'm unsure of the direction to take for that at this time. It
> > > would
> > > certainly be interesting to look at sharing that logic. For
> > > sharing
> > > code though, I wonder if its better to create a
> > > libgtkkeycodemap.so
> > > library rather than do a sub-module thing for that code too.
> > 
> > we have both ways in spice-common
> > 
> > About the patch - the generated file are not the same (I used git
> > diff
> > --word-diff)
> > 
> > xorgkbd2xtkbd - empty
> > xorgxquartz2xtkbd - some values are different
> > 
> > Pavel
> > 
> > https://paste.fedoraproject.org/paste/N9n1q2y3dZHDNhMOaIA5c15M1UNdIG
> > Yh
> > yRLivL9gydE=
> > 
> Ok, I see it is fixed in the current git master (this submodule is one
> commit behind)
> 
> Ack from me with that fixed.
> Any other opinion about adding or not the submodule ?

I did not look at the submodule in details, but having the keymaps in a
submodule makes sense to me.

Christophe


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-03-01 Thread Pavel Grunt
On Thu, 2017-03-02 at 07:59 +0100, Pavel Grunt wrote:
> On Mon, 2017-02-27 at 10:44 +, Daniel P. Berrange wrote:
> > On Mon, Feb 27, 2017 at 11:37:44AM +0100, Pavel Grunt wrote:
> > > Hello Daniel,
> > > 
> > > On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> > > > Consume the keymaps.csv file from a git submodule instead of
> > > > having
> > > > a private copy. This makes it easier to ensure all users of
> > > > the
> > > > keymap
> > > > (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> > > > consistent
> > > > set of data.
> > > > 
> > > 
> > > besides that it also allow us to drop the dependency on perl
> > > (also
> > > perl-Text-CSV is not packaged in some distros)
> > 
> > True yes, I intentionally kept the python code so that it only
> > used modules base-python installs so we don't rely on external
> > modules from pypi.
> > 
> > > Are there contributing rules for the keycodemapdb (where to send
> > > the
> > > patches etc.)?
> > 
> > Just send pull requests to the repo is best I think. I don't think
> > we'd
> > have enough traffic to warrant creating a new mailing list. In any
> > case I would expect that most bug reports would start off with a
> > mail
> > and/or bug report to a project using the module. eg a mail on
> > spice-
> > devel,
> > so there's little point trying to artificially move discussion to
> > a
> > dedicated list.
> > 
> > I'm happy to add any of the people with experiance of this code to
> > the
> > admins/committers list of the gitlab project too, so I'm not a
> > potential
> > bottleneck.
> 
> Feel free to add me (nickname "xerus")
> 
> > 
> > > (For the future) Do you consider adding the
> > > vncdisplaykeymap.[ch]
> > > to
> > > the repo ?
> > 
> > I'm unsure of the direction to take for that at this time. It
> > would
> > certainly be interesting to look at sharing that logic. For
> > sharing
> > code though, I wonder if its better to create a
> > libgtkkeycodemap.so
> > library rather than do a sub-module thing for that code too.
> 
> we have both ways in spice-common
> 
> About the patch - the generated file are not the same (I used git
> diff
> --word-diff)
> 
> xorgkbd2xtkbd - empty
> xorgxquartz2xtkbd - some values are different
> 
> Pavel
> 
> https://paste.fedoraproject.org/paste/N9n1q2y3dZHDNhMOaIA5c15M1UNdIG
> Yh
> yRLivL9gydE=
> 
Ok, I see it is fixed in the current git master (this submodule is one
commit behind)

Ack from me with that fixed.
Any other opinion about adding or not the submodule ?

Pavel


> > 
> > Regards,
> > Daniel
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-03-01 Thread Pavel Grunt
On Mon, 2017-02-27 at 10:44 +, Daniel P. Berrange wrote:
> On Mon, Feb 27, 2017 at 11:37:44AM +0100, Pavel Grunt wrote:
> > Hello Daniel,
> > 
> > On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> > > Consume the keymaps.csv file from a git submodule instead of
> > > having
> > > a private copy. This makes it easier to ensure all users of the
> > > keymap
> > > (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> > > consistent
> > > set of data.
> > > 
> > 
> > besides that it also allow us to drop the dependency on perl (also
> > perl-Text-CSV is not packaged in some distros)
> 
> True yes, I intentionally kept the python code so that it only
> used modules base-python installs so we don't rely on external
> modules from pypi.
> 
> > Are there contributing rules for the keycodemapdb (where to send
> > the
> > patches etc.)?
> 
> Just send pull requests to the repo is best I think. I don't think
> we'd
> have enough traffic to warrant creating a new mailing list. In any
> case I would expect that most bug reports would start off with a
> mail
> and/or bug report to a project using the module. eg a mail on spice-
> devel,
> so there's little point trying to artificially move discussion to a
> dedicated list.
> 
> I'm happy to add any of the people with experiance of this code to
> the
> admins/committers list of the gitlab project too, so I'm not a
> potential
> bottleneck.
Feel free to add me (nickname "xerus")

> 
> > (For the future) Do you consider adding the vncdisplaykeymap.[ch]
> > to
> > the repo ?
> 
> I'm unsure of the direction to take for that at this time. It would
> certainly be interesting to look at sharing that logic. For sharing
> code though, I wonder if its better to create a libgtkkeycodemap.so
> library rather than do a sub-module thing for that code too.
we have both ways in spice-common

About the patch - the generated file are not the same (I used git diff
--word-diff)

xorgkbd2xtkbd - empty
xorgxquartz2xtkbd - some values are different

Pavel

https://paste.fedoraproject.org/paste/N9n1q2y3dZHDNhMOaIA5c15M1UNdIGYh
yRLivL9gydE=

> 
> Regards,
> Daniel
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-02-27 Thread Daniel P. Berrange
On Mon, Feb 27, 2017 at 11:37:44AM +0100, Pavel Grunt wrote:
> Hello Daniel,
> 
> On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> > Consume the keymaps.csv file from a git submodule instead of having
> > a private copy. This makes it easier to ensure all users of the
> > keymap
> > (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> > consistent
> > set of data.
> > 
> besides that it also allow us to drop the dependency on perl (also
> perl-Text-CSV is not packaged in some distros)

True yes, I intentionally kept the python code so that it only
used modules base-python installs so we don't rely on external
modules from pypi.

> Are there contributing rules for the keycodemapdb (where to send the
> patches etc.)?

Just send pull requests to the repo is best I think. I don't think we'd
have enough traffic to warrant creating a new mailing list. In any
case I would expect that most bug reports would start off with a mail
and/or bug report to a project using the module. eg a mail on spice-devel,
so there's little point trying to artificially move discussion to a
dedicated list.

I'm happy to add any of the people with experiance of this code to the
admins/committers list of the gitlab project too, so I'm not a potential
bottleneck.

> (For the future) Do you consider adding the vncdisplaykeymap.[ch] to
> the repo ?

I'm unsure of the direction to take for that at this time. It would
certainly be interesting to look at sharing that logic. For sharing
code though, I wonder if its better to create a libgtkkeycodemap.so
library rather than do a sub-module thing for that code too.

Regards,
Daniel
-- 
|: http://berrange.com  -o-http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org  -o- http://virt-manager.org :|
|: http://entangle-photo.org   -o-http://search.cpan.org/~danberr/ :|
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] [PATCH spice-gtk v3] Switch over to using keycodemapdb submodule

2017-02-27 Thread Pavel Grunt
Hello Daniel,

On Mon, 2017-02-27 at 10:25 +, Daniel P. Berrange wrote:
> Consume the keymaps.csv file from a git submodule instead of having
> a private copy. This makes it easier to ensure all users of the
> keymap
> (libvirt, gtk-vnc, spice-gtk, and eventually QEMU) to have a
> consistent
> set of data.
> 
besides that it also allow us to drop the dependency on perl (also
perl-Text-CSV is not packaged in some distros)

Are there contributing rules for the keycodemapdb (where to send the
patches etc.)?

(For the future) Do you consider adding the vncdisplaykeymap.[ch] to
the repo ?

Thanks,
Pavel


> Signed-off-by: Daniel P. Berrange 
> ---
> 
> Changed in v3:
> 
>  - Fix makefile rules to find generator script in VPATH build
> 
>  .gitmodules   |   3 +
>  configure.ac  |  11 --
>  src/Makefile.am   |  30 ++--
>  src/keycodemapdb  |   1 +
>  src/keymap-gen.pl | 214 ---
>  src/keymaps.csv   | 511 -
> -
>  6 files changed, 17 insertions(+), 753 deletions(-)
>  create mode 16 src/keycodemapdb
>  delete mode 100755 src/keymap-gen.pl
>  delete mode 100644 src/keymaps.csv
> 
> diff --git a/.gitmodules b/.gitmodules
> index 0c618ee..82467e4 100644
> --- a/.gitmodules
> +++ b/.gitmodules
> @@ -1,3 +1,6 @@
>  [submodule "spice-common"]
>   path = spice-common
>   url = ../spice-common
> +[submodule "src/keycodemapdb"]
> + path = src/keycodemapdb
> + url = https://gitlab.com/keycodemap/keycodemapdb.git
> diff --git a/configure.ac b/configure.ac
> index 463fbe0..763d14b 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -86,17 +86,6 @@ AC_SUBST(SPICE_GTK_MICRO_VERSION)
>  dnl
> 
> =
>  dnl Chek optional features
>  
> -srcdir="$(dirname $0)"
> -if test ! -e "$srcdir/src/vncdisplaykeymap_osx2xtkbd.c"; then
> -  AC_MSG_CHECKING([for Text::CSV Perl module])
> -  perl -MText::CSV -e "" >/dev/null 2>&1
> -  if test $? -ne 0 ; then
> -AC_MSG_RESULT([not found])
> -AC_MSG_ERROR([Text::CSV Perl module is required to compile this
> package])
> -  fi
> -  AC_MSG_RESULT([found])
> -fi
> -
>  SPICE_GLIB_REQUIRES=""
>  SPICE_GTK_REQUIRES=""
>  
> diff --git a/src/Makefile.am b/src/Makefile.am
> index 7542fac..594c0de 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -26,14 +26,13 @@ GLIBGENS =
> \
>   spice-widget-enums.h\
>   $(NULL)
>  
> -CLEANFILES = $(GLIBGENS)
> +CLEANFILES = $(GLIBGENS) $(KEYMAPS)
>  BUILT_SOURCES = $(GLIBGENS) $(KEYMAPS)
>  
>  EXTRA_DIST = \
> - $(KEYMAPS)  \
>   decode-glz-tmpl.c   \
> - keymap-gen.pl   \
> - keymaps.csv \
> + $(KEYMAP_CSV)   \
> + $(KEYMAP_GEN)   \
>   map-file\
>   spice-glib-sym-file \
>   spice-gtk-sym-file  \
> @@ -66,7 +65,8 @@ GTK_SYMBOLS_LDFLAGS = -export-symbols
> ${srcdir}/spice-gtk-sym-file
>  GTK_SYMBOLS_FILE = spice-gtk-sym-file
>  endif
>  
> -KEYMAP_GEN = $(srcdir)/keymap-gen.pl
> +KEYMAP_GEN = keycodemapdb/tools/keymap-gen
> +KEYMAP_CSV = keycodemapdb/data/keymaps.csv
>  
>  SPICE_COMMON_CPPFLAGS =  
> \
>   -DSPICE_COMPILATION 
> \
> @@ -483,32 +483,28 @@ spice-widget-enums.h: spice-widget.h
>  
>  
>  vncdisplaykeymap.c: $(KEYMAPS)
> +$(KEYMAPS): $(srcdir)/$(KEYMAP_GEN) $(srcdir)/$(KEYMAP_CSV)
>  
> -$(KEYMAPS): $(KEYMAP_GEN) keymaps.csv
> -
> -# Note despite being autogenerated these are not part of
> CLEANFILES, they
> -# are actually a part of EXTRA_DIST to avoid the need for
> perl(Text::CSV) by
> -# end users
>  vncdisplaykeymap_xorgevdev2xtkbd.c:
> - $(AM_V_GEN)$(KEYMAP_GEN) $(srcdir)/keymaps.csv xorgevdev
> xtkbd > $@ || rm $@
> + $(AM_V_GEN)$(PYTHON) $(srcdir)/$(KEYMAP_GEN) --lang glib2
> --varname keymap_xorgevdev2xtkbd code-map $(srcdir)/$(KEYMAP_CSV)
> xorgevdev xtkbd > $@ || rm $@
>  
>  vncdisplaykeymap_xorgkbd2xtkbd.c:
> - $(AM_V_GEN)$(KEYMAP_GEN) $(srcdir)/keymaps.csv xorgkbd
> xtkbd > $@ || rm $@
> + $(AM_V_GEN)$(PYTHON) $(srcdir)/$(KEYMAP_GEN) --lang glib2
> --varname keymap_xorgkbd2xtkbd code-map $(srcdir)/$(KEYMAP_CSV)
> xorgkbd xtkbd > $@ || rm $@
>  
>  vncdisplaykeymap_xorgxquartz2xtkbd.c:
> - $(AM_V_GEN)$(KEYMAP_GEN) $(srcdir)/keymaps.csv xorgxquartz
> xtkbd > $@ || rm $@
> + $(AM_V_GEN)$(PYTHON) $(srcdir)/$(KEYMAP_GEN) --lang glib2
> --varname keymap_xorgxquartz2xtkbd code-map $(srcdir)/$(KEYMAP_CSV)
> xorgxquartz xtkbd > $@ || rm $@
>  
>  vncdisplaykeymap_xorgxwin2xtkbd.c:
> - $(AM_V_GEN)$(KEYMAP_GEN) $(srcdir)/keymaps.csv xorgxwin
> xtkbd > $@ || rm $@
> +