Hello there! Well, I need help...
## Context: * I have just a little familiarity with Guile Scheme, because I'm a LilyPond user; * I finally have a desktop that doesn't need non-libre drivers; * Although I'm not in the Tech world, I love GNU's (and the FSF's) philosophy; * I have been playing with Nix, but find it very cryptic -- not easy to understand at all. So, Guix seems to be the path I'm on now. ## Situation: I have several problems to fix, but the most important right now is to get my keyboard to work with sddm, and I need sddm for Wayland. So, without sddm, this works: ``` ... (define %this-keyboard (keyboard-layout "br" "abnt2")) ... (operating-system ... (keyboard-layout %this-keyboard) ... ) ``` But `guix system reconfigure /etc/config.scm` fails when this is this: ``` (use-modules (gnu) (gnu system nss) (gnu services networking) (gnu services sddm) (gnu services cups) (gnu services desktop) (gnu services ssh) (gnu services xorg)) ... (define %this-keyboard (keyboard-layout "br" "abnt2")) ... (operating-system ... (keyboard-layout %this-keyboard) ... (services (append (list (service dhcp-client-service-type) (service ntp-service-type) (service gpm-service-type) (service cups-service-type) (service elogind-service-type) (service sddm-service-type (sddm-configuration (display-server "wayland") (numlock "on") (theme "guix-simplyblack-sddm-theme") (xorg-configuration (keyboard-layout %this-keyboard))))) %base-services)) ... ) ``` Then, when I try to run `guix system reconfigure /etc/config.scm`, I get this backtrace: > root@udu ~# > Backtrace: > 19 (primitive-load "/root/.config/guix/current/bin/guix") > In guix/ui.scm: > 2229:7 18 (run-guix . _) > 2192:10 17 (run-guix-command _ . _) > In ice-9/boot-9.scm: > 1752:10 16 (with-exception-handler _ _ #:unwind? _ # _) > In guix/status.scm: > 829:3 15 (_) > 809:4 14 (call-with-status-report _ _) > In guix/scripts/system.scm: > 1256:4 13 (_) > In ice-9/boot-9.scm: > 1752:10 12 (with-exception-handler _ _ #:unwind? _ # _) > In guix/store.scm: > 658:37 11 (thunk) > 1320:8 10 (call-with-build-handler #<procedure 7faf357d0060 at g…> …) > 2129:25 9 (run-with-store #<store-connection 256.99 7faf38008190> …) > In guix/scripts/system.scm: > 827:2 8 (_ _) > 703:8 7 (_ #<store-connection 256.99 7faf38008190>) > In gnu/system.scm: > 1227:19 6 (operating-system-derivation _) > 748:11 5 (operating-system-services #<<operating-system> kernel:…>) > 782:20 4 (services _) > In /etc/config.scm: > 185:14 3 (services #<<operating-system> kernel: #<package linux-…>) > 185:14 2 (services #<<keyboard-layout> name: "br" variant: "abnt…>) > In ice-9/boot-9.scm: > 1685:16 1 (raise-exception _ #:continuable? _) > 1685:16 0 (raise-exception _ #:continuable? _) > > ice-9/boot-9.scm:1685:16: In procedure raise-exception: > Wrong type to apply: #<<keyboard-layout> name: "br" variant: "abnt2" model: #f options: ()> ## Conclusion: Two things tell me that the problem is really in the keyboard configuration within the configuration of the sddm service: * When I remove the `xorg-configuration` from the `sddm-configuration`, the reconfiguration returns no error, and the sddm service works normally. * And in this setup, the keyboard works on the console, just not on the desktop environment. Best regards, And thank you. Cassio