Re: How to replace a system package with a patched version in system configuration?

2021-01-10 Thread miyamoto moesasji
I use a heavily customised keyboard layout
(https://github.com/moesasji/xkeyboard-config/commit/23fdb4a6966fd65b98b1fd303cfaecf8fcae8556);
as I result I need to add my customized layout to the system before I
can use the existing keyboard configuration mechanism in guix for the
system as a whole.

The reason I want to patch xkeyboard-config is that is what is used in
keyboard.scm to define the various keyboard formats used by Guix

On Sun, Jan 10, 2021 at 12:26 PM John Soo  wrote:
>
> Hello,
>
> The operating system and several services and bootloader configurations 
> already have keyboard-layouts as parameters. What keyboard configuration do 
> you need?
>
> Hth,
>
> John



How to replace a system package with a patched version in system configuration?

2021-01-10 Thread miyamoto moesasji
I want to add my custom keyboard layout by patching xkeyboard-config
so that this layout can
be used in the rest of the system configuration.

>From the manual on defining package variants it is clear how to define
such a patched variant.
However it is not at all clear to me how to use the various
package-rewrite options in that
manual page to make my system configuration use the patched
xkeyboard-config. The only
related question
(https://lists.gnu.org/archive/html/help-guix/2018-07/msg8.html)
that I
have been able to find managed to work around it.

As I'm at a loss how to do this cleanly**: could someone give me a
pointer on how to adapt the
default desktop example
(https://guix.gnu.org/manual/en/html_node/Using-the-Configuration-System.html)
to add a patched system package such as xkeyboard-config?

**) I can see that a work-around is to use a custom guix channel.
However that seems a lot of
additional work as it would require keeping the channel in sync. There
must be a cleaner approach
to achieve this.