Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-27 Thread Michael Biebl
Am 27.11.2016 um 14:36 schrieb Norbert Preining:

> Done so. Please check the issue and add any comments you might find useful
> from your side. Thanks

I think it has all necessary information, thanks.


-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-27 Thread Norbert Preining
forward 845442 https://github.com/systemd/systemd/issues/4750
thanks

Hi Michael,

> The initramfs does *not* include the hwdb, which is deliberate (the hwdb
> is rather large and not crucial during the initramfs stage).
> 
> The hwdb information is applied after the switch_root when the
> systemd-udev-trigger.service is run.

Ok, thanks, that excludes one possible probem.

> So my *guess* is, that the builtin{hwdb} is perhaps behaving differently
> then systemd-hwdb query.

Umpf. Well...

> If you want, please file the issue at

Done so. Please check the issue and add any comments you might find useful
from your side. Thanks

Thanks a lot

Norbert

--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13



Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-27 Thread Michael Biebl
Am 27.11.2016 um 14:00 schrieb Norbert Preining:
> Hi Michael, hi Martin,
> 
>> When reading the hwdb(7) man page, it only talks about overriding
>> *files* not individual *entries*. So what you want to do might indeed
>> not be supported and it is working as documented.
> 
> Well, not exactly. It reads that one can add arbitrary files and they
> are loaded in the numerical order, where files named the same way
> the /etc version takes precedence.

Tbh, the documentation is not super clear on this particular issue.
At some point it might make sense to involve upstream to ask for
clarification.

> which is correct. But this was the very setup I had in the very beginning, 
> so it seems that either the initramfs is not constructed correctly, or the
> udev in the initramfs works differently.

The initramfs does *not* include the hwdb, which is deliberate (the hwdb
is rather large and not crucial during the initramfs stage).

The hwdb information is applied after the switch_root when the
systemd-udev-trigger.service is run.

You confirmed that naming the file 60-keyboard.hwdb, thus overriding the
one from /lib, does ensure the correct mapping is applied.

So my *guess* is, that the builtin{hwdb} is perhaps behaving differently
then systemd-hwdb query.

I guess we have to take this upstream. The first step would be, to
clarify whether overriding individual entries is supported or not (and
update the documentation while at it).

If you want, please file the issue at
https://github.com/systemd/systemd/issues

I can reproduce the issue though (I own the same keyboard), so I can
file it myself as well, if you don't want to.

Regards,
Michael




-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-27 Thread Norbert Preining
Hi Michael, hi Martin,

> When reading the hwdb(7) man page, it only talks about overriding
> *files* not individual *entries*. So what you want to do might indeed
> not be supported and it is working as documented.

Well, not exactly. It reads that one can add arbitrary files and they
are loaded in the numerical order, where files named the same way
the /etc version takes precedence.

That means, in principle, adding
/etc/udev/hwdb.d/61-local.hwdb
with only my entries should work, right.

And indeed, using systemd-hwdb query I *do* get the correct results:

$ pwd
/etc/udev/hwdb.d
$ ls
61-local.hwdb
$ cat 61-local.hwdb
evdev:input:b0003v045Ep00DB*
 KEYBOARD_KEY_c022d=pageup
 KEYBOARD_KEY_c022e=pagedown

$ udevadm hwdb --update
$ 

And now:
$ systemd-hwdb query evdev:input:b0003v045Ep00DB
KEYBOARD_KEY_c022d=pageup
KEYBOARD_KEY_c022e=pagedown
$

which is correct. But this was the very setup I had in the very beginning, 
so it seems that either the initramfs is not constructed correctly, or the
udev in the initramfs works differently.
Or something else I don't undestand - like most of systemd.

All the best

Norbert

--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13



Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-27 Thread Michael Biebl
Am 27.11.2016 um 09:35 schrieb Michael Biebl:
> When reading the hwdb(7) man page, it only talks about overriding
> *files* not individual *entries*. So what you want to do might indeed
> not be supported and it is working as documented.

Let me put that differently: "might be working as documented". I'm not sure.
-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-27 Thread Michael Biebl
Am 27.11.2016 um 07:25 schrieb Norbert Preining:
> Hi Michael,
> 
>> Does it work if you rename the file to /etc/udev/hwdb.d/60-keyboard.hwdb?
> 
> Yes. But this will disable all the entries in the original one, right?

Correct.

> # To update this file, create a new file
> #   /etc/udev/hwdb.d/70-keyboard.hwdb
> # and add your rules there. To load the new rules execute (as root):
> #   udevadm hwdb --update
> #   udevadm trigger /dev/input/eventXX
> # where /dev/input/eventXX is the keyboard in question. If in
> # doubt, simply use /dev/input/event* to reload all input rules.
> 
> Does that mean this works only for *new* entries, but overriding another
> one I need to copy the whole file and edit it?

When reading the hwdb(7) man page, it only talks about overriding
*files* not individual *entries*. So what you want to do might indeed
not be supported and it is working as documented.

Martin knows a bit more about hwdb though, maybe he can comment here.


Michael



-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-26 Thread Norbert Preining
Hi Michael,

> Does it work if you rename the file to /etc/udev/hwdb.d/60-keyboard.hwdb?

Yes. But this will disable all the entries in the original one, right?

> I'm asking, because /lib/udev/hwdb.d/60-keyboard.hwdb already contains
> an entry for evdev:input:b0003v045Ep00DB* and I'm not entirely sure if
> you can override an existing entry by adding it again to a file which is
> sorted later.
> The documentation is clear though, that an existing
> /etc/udev/hwdb.d/60-keyboard.hwdb will take precedence over
> /lib/udev/hwdb.d/60-keyboard.hwdb


But the /l/u/hwdb.d/60.. file also mentiones:
# To update this file, create a new file
#   /etc/udev/hwdb.d/70-keyboard.hwdb
# and add your rules there. To load the new rules execute (as root):
#   udevadm hwdb --update
#   udevadm trigger /dev/input/eventXX
# where /dev/input/eventXX is the keyboard in question. If in
# doubt, simply use /dev/input/event* to reload all input rules.

Does that mean this works only for *new* entries, but overriding another
one I need to copy the whole file and edit it?

Is there no way to *override* entries?

All the best

Norbert

--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13



Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-25 Thread Michael Biebl
Am 25.11.2016 um 20:55 schrieb Michael Biebl:
> Am 23.11.2016 um 14:16 schrieb Norbert Preining:
>> Package: udev
>> Version: 232-6
>> Severity: important
>>
>> Dear all,
>>
>> I have added a config file
>>  /etc/udev/hwdb.d/61-keyboard-local.hwdb
>> containing:
>>  evdev:input:b0003v045Ep00DB*
>>   KEYBOARD_KEY_c022d=pageup
>>   KEYBOARD_KEY_c022e=pagedown
>> to remap the default "zoomin" and "zoomout" to pageup and pagedown.
> 
> Does it work if you rename the file to /etc/udev/hwdb.d/60-keyboard.hwdb?

I'm asking, because /lib/udev/hwdb.d/60-keyboard.hwdb already contains
an entry for evdev:input:b0003v045Ep00DB* and I'm not entirely sure if
you can override an existing entry by adding it again to a file which is
sorted later.
The documentation is clear though, that an existing
/etc/udev/hwdb.d/60-keyboard.hwdb will take precedence over
/lib/udev/hwdb.d/60-keyboard.hwdb


-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-25 Thread Michael Biebl
Am 23.11.2016 um 14:16 schrieb Norbert Preining:
> Package: udev
> Version: 232-6
> Severity: important
> 
> Dear all,
> 
> I have added a config file
>   /etc/udev/hwdb.d/61-keyboard-local.hwdb
> containing:
>   evdev:input:b0003v045Ep00DB*
>KEYBOARD_KEY_c022d=pageup
>KEYBOARD_KEY_c022e=pagedown
> to remap the default "zoomin" and "zoomout" to pageup and pagedown.

Does it work if you rename the file to /etc/udev/hwdb.d/60-keyboard.hwdb?



-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-24 Thread Michael Biebl
Am 24.11.2016 um 00:09 schrieb Norbert Preining:

>> If so, udev should use that one instead of the one from
>> /lib/udev/hwdb.bin. Can you provide us with a debug log from udev and/or
>> strace.
> 
> Output of journalctl with udev log level set to debug is attached.

The Microsoft Natural Ergonomic Keyboard 4000 keyboard is attached via
USB, right? Was it connected when you created the debug log.
I can't seem to find anything in the log file.

-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-23 Thread Norbert Preining
Hi Michael,

thanks for taking this up.

> > /etc/udev/hwdb.d/61-keyboard-local.hwdb
> > containing:
> > evdev:input:b0003v045Ep00DB*
> >  KEYBOARD_KEY_c022d=pageup
> >  KEYBOARD_KEY_c022e=pagedown
> > to remap the default "zoomin" and "zoomout" to pageup and pagedown.
> > 
> > And indeed, after doing:
> > udevadm hwdb --update
> > udevadm trigger /dev/input/eventXX
> > and unplugging/replugging the keyboard the additional key
> > can be used for scrolling.
> > 
> 
> Do you have a /etc/udev/hwdb.bin?

Yes.

> If so, udev should use that one instead of the one from
> /lib/udev/hwdb.bin. Can you provide us with a debug log from udev and/or
> strace.

Output of journalctl with udev log level set to debug is attached.

Few words about my setup: system is on whole disk md_crypt and
initramfs uncrypts it and then uses the partitions from there 
including /

All the best

Norbert

--
PREINING Norbert + TeX Live & Debian Developer + http://www.preining.info
GPG: 0x860CDC13fp: F7D8 A928 26E3 16A1 9FA0  ACF0 6CAC A448 860C DC13


journal.log.gz
Description: application/gzip


Bug#845442: udev: does not honor configuration files in /etc/udev/hwdb.d

2016-11-23 Thread Michael Biebl
Control: tags -1 moreinfo

Am 23.11.2016 um 14:16 schrieb Norbert Preining:
> 
> I have added a config file
>   /etc/udev/hwdb.d/61-keyboard-local.hwdb
> containing:
>   evdev:input:b0003v045Ep00DB*
>KEYBOARD_KEY_c022d=pageup
>KEYBOARD_KEY_c022e=pagedown
> to remap the default "zoomin" and "zoomout" to pageup and pagedown.
> 
> And indeed, after doing:
>   udevadm hwdb --update
>   udevadm trigger /dev/input/eventXX
> and unplugging/replugging the keyboard the additional key
> can be used for scrolling.
> 

Do you have a /etc/udev/hwdb.bin?
If so, udev should use that one instead of the one from
/lib/udev/hwdb.bin. Can you provide us with a debug log from udev and/or
strace.

This should give an indication if the file from /etc/ is loaded.


-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?



signature.asc
Description: OpenPGP digital signature