Hi!,
I just wanted to let you know I came to Guix for the exact same reason -
Nix was way too cryptic for me 😅
I don't have any answer (sorry I am not familiar with what you
mentioned) but here's my configuration (I use Wayland and "Corrupt"
(meaning non-deblobbed, I guess) Linux)
https://github.com/yugawara/workers-cafe/tree/main/workers-memo/guix
-Yasu
On 2/20/22 09:33, Cássio Tavares wrote:
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