Hi 宋文武, thanks for taking a look. I messed up my system, but will update the patch once I got everyting working again. Roman 宋文武 writes: > Roman Scherer writes: > >> Hello Guix, >> >> I would like to replace the Mesa package in my Xorg configuration. I >> tried to do this with the following snippet: >> >> ``` >> (modify-services %desktop-services >> (slim-service-type config => >> (slim-configuration >> (inherit config) >> (xorg-configuration >> (xorg-configuration >> (server (replace-mesa xorg-server))))))) >> ``` >> >> But this unfortunately does not work, because the xorg-wrapper uses >> static paths for the mesa, xkbcomp and xkeyboard-config packages in the >> derivation. >> >> The xserver starts now with the replaced mesa, but some paths still >> point to the hard coded packages in Guix itself (and not the >> replacement), which cause some things to not work. >> >> This patch changes this to lookup the paths from the inputs of the >> server field of the xorg-configuration instead. That way the correct >> paths are setup in the xor-wrapper script. If those inputs are not found >> for some reason it falls back to the current behavior, using the >> packages from Guix. >> >> Could you please review this? >> >> Thanks, Roman. > > Sorry for a long deley.. >> >> From d035c99ed4703da0e3e9b62299c390560c074a17 Mon Sep 17 00:00:00 2001 >> From: r0man >> Date: Sat, 11 Feb 2023 19:36:16 +0100 >> Subject: [PATCH] services: xorg-wrapper: Support xorg server input >> transformations. > > I think it's better add some explaination to commit message like: > The xorg-wrapper uses [...] > This patch [...] > > Should be good. >> >> * gnu/services/xorg.scm (xorg-wrapper): Support xorg server input transformations. >> --- >> gnu/services/xorg.scm | 22 +++++++++++++++++++--- >> 1 file changed, 19 insertions(+), 3 deletions(-) >> >> diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm >> index 5f073d05d3..92735e6004 100644 >> --- a/gnu/services/xorg.scm >> +++ b/gnu/services/xorg.scm >> @@ -355,6 +355,21 @@ (define files >> files) >> #t)))) >> >> +(define (xorg-configuration-append-input config input default-input path) >> + (let ((server (xorg-configuration-server config))) >> + (file-append (or (lookup-package-direct-input server input) default-input) >> + path))) > I'm not sure about the procedure name, maybe add a docstring explain > it's function? > > > Otherwise, look good to me, thank you!