help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: how to add hwdb of keyboard


From: Ricardo Wurmus
Subject: Re: how to add hwdb of keyboard
Date: Sun, 20 Sep 2020 08:52:33 +0200
User-agent: mu4e 1.4.13; emacs 27.1

Stefan Huchler <stefan.huchler@mail.de> writes:

>>> I forked now the eudev definition to add my hwdb data:
>>>
>>> (add-before 'build-hwdb 'add-my-hwdb-file
>>>                  (lambda* (#:key outputs #:allow-other-keys)
>>>                    (let ((out (assoc-ref outputs "out")))
>>>                      (call-with-output-file
>>>                          (string-append out 
>>> "/etc/udev/hwdb.d/90-X220-keyboard.hwdb")
>>>                        (lambda (port)
>>>                          (display
>>>                           
>>> "keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:pvrThinkPadX220*\n" port)
>>>                          (display "KEYBOARD_KEY_7b=compose\n" port)
>>>                          (display "KEYBOARD_KEY_39=enter\n" port)
>>>                          (display "KEYBOARD_KEY_79=space\n" port)
>>>                          (display "KEYBOARD_KEY_70=tab\n" port)
>>>                          (display "KEYBOARD_KEY_0f=backspace\n" port)
>>>                          (display "KEYBOARD_KEY_3a=home\n" port)
>>>                          (display "KEYBOARD_KEY_1c=end\n" port)
>>>                          (display "KEYBOARD_KEY_0e=backspace\n" port)
>>>                          (display "KEYBOARD_KEY_7d=backspace\n"
>>>                  port))))))
>>>
>>> Is there a way to make guix system priotise my modified eudev over the
>>> upstream one?
>>
>> No, you would need to rebuild with your eudev as a replacement.  
>
>
> When I try to do that:
>
> (define udev-service-type
>   (service-type (name 'udev)
>                 (extensions
>                  (list (service-extension shepherd-root-service-type
>                                           udev-shepherd-service)))
>                 (compose concatenate)       ;concatenate the list of rules
>                 (extend (lambda (config rules)
>                           (match config
>                             (($ <udev-configuration> udev initial-rules)
>                              (udev-configuration
>                               (udev my-eudev)   ;the udev package to use
>                               (rules initial-rules))))))))

Why not use modify-services?  All you want to do is change the
configuration of an existing service, no?

-- 
Ricardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]