* Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
@ 2019-05-09 5:55 znavko
2019-05-09 7:26 ` rendaw
2019-05-09 9:13 ` znavko
0 siblings, 2 replies; 3+ messages in thread
From: znavko @ 2019-05-09 5:55 UTC (permalink / raw)
To: help-guix
[-- Attachment #1: Type: text/plain, Size: 1846 bytes --]
Hello! I try to reconfigure system with Gnome, sddm and wayland.
I also use sddm-configuration to define use wayland for greeter, but get the error for my misconfiguration:
# cat config.scm
...
(services (cons*
;(service xfce-desktop-service-type)
(service gnome-desktop-service-type)
(service dhcp-client-service-type)
(service sddm-service
(sddm-configuration
(display-server "wayland")))
...
)
# guix system reconfigure config.scm
Backtrace:
14 (primitive-load "/root/.config/guix/current/bin/guix")
In guix/ui.scm:
1734:12 13 (run-guix-command _ . _)
In ice-9/boot-9.scm:
829:9 12 (catch _ _ #<procedure 7ff6047408f8 at guix/ui.scm:701…> …)
829:9 11 (catch _ _ #<procedure 7ff604740910 at guix/ui.scm:824…> …)
In guix/scripts/system.scm:
1301:8 10 (_)
In guix/status.scm:
768:4 9 (call-with-status-report _ _)
In guix/scripts/system.scm:
1159:4 8 (process-action _ _ _)
In guix/store.scm:
623:10 7 (call-with-store _)
1794:24 6 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
In guix/scripts/system.scm:
1175:13 5 (_ _)
882:18 4 (perform-action reconfigure #<<operating-system> kerne…> …)
In gnu/system.scm:
851:19 3 (operating-system-derivation _)
In gnu/services.scm:
743:6 2 (instantiate-missing-services _)
In guix/combinators.scm:
45:26 1 (fold2 #<procedure adjust-service-list (svc result ins…> …)
In gnu/services.scm:
733:11 0 (adjust-service-list _ (#<<service> type: #<service…> …) …)
gnu/services.scm:733:11: In procedure adjust-service-list:
In procedure struct_vtable: Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
Please, let me know how to understand such errors. Here, I saw the same structure https://www.gnu.org/software/guix/manual/en/guix.html#index-sddm_002dservice
[-- Attachment #2: config-znavko-gnome.scm --]
[-- Type: application/octet-stream, Size: 2618 bytes --]
;-*- mode: Scheme; -*-
;;this is znavko's cute config
(use-modules (gnu) (gnu system nss)
(gnu system locale) ;;for locale-definition
(gnu services desktop)
(srfi srfi-1) ;;for remove function
(gnu services networking) ;;for remove ntp
(gnu services avahi) ;;for remove avahi
(gnu services xorg)
(gnu packages admin) ;;for wpa_supplicant
(gnu services sddm) ;;for wayland gnome
)
(use-service-modules desktop)
(use-package-modules certs gnome)
(operating-system (host-name "antelope") (timezone "Europe/Moscow") (locale "en_US.utf8")
(bootloader (bootloader-configuration (bootloader grub-bootloader) (target "/dev/sda")))
(file-systems (cons (file-system (device "/dev/sda1") (mount-point "/") (type "ext4")) %base-file-systems))
(swap-devices '("/dev/sda2"))
(users (cons* (user-account (name "bob") (group "users")
(supplementary-groups '("wheel" "netdev" "audio" "video"))
(home-directory "/home/bob"))
(user-account (name "mom") (group "users")
(supplementary-groups '("wheel" "netdev" "audio" "video"))
(home-directory "/home/mom"))
%base-user-accounts))
;; This is where we specify system-wide packages.
(packages (cons* nss-certs ;for HTTPS access
gvfs ;for user mounts
wpa-supplicant
%base-packages))
(services (cons*
;(service xfce-desktop-service-type)
(service gnome-desktop-service-type)
(service dhcp-client-service-type)
(service sddm-service
(sddm-configuration
(display-server "wayland")))
(modify-services
(remove (lambda (service)
(member (service-kind service)
(list ntp-service-type avahi-service-type
bluetooth-service network-manager-service-type
gdm-service-type)))
%desktop-services) ;end of remove lambda services
(wpa-supplicant-service-type config =>
(wpa-supplicant-configuration
(interface "wlp2s0")
(config-file "/etc/wpa_supplicant/wpa_supplicant.conf")))
(elogind-service-type
c => (elogind-configuration (handle-lid-switch 'ignore)))
) ;;end of modify-services
)) ;;end of services
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss)
;;blacklist ugly sound speaker, blacklist ideapad_laptop for prevent soft blocking wlan
(kernel-arguments '("modprobe.blacklist=pcspkr,snd_pcsp,bluetooth,ideapad_laptop"))
) ;;end of operating-system
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
2019-05-09 5:55 Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)> znavko
@ 2019-05-09 7:26 ` rendaw
2019-05-09 9:13 ` znavko
1 sibling, 0 replies; 3+ messages in thread
From: rendaw @ 2019-05-09 7:26 UTC (permalink / raw)
To: help-guix
On 5/9/19 2:55 PM, znavko@disroot.org wrote:
> Hello! I try to reconfigure system with Gnome, sddm and wayland.
> I also use sddm-configuration to define use wayland for greeter, but get the error for my misconfiguration:
>
> # cat config.scm
> ...
> (services (cons*
> ;(service xfce-desktop-service-type)
> (service gnome-desktop-service-type)
> (service dhcp-client-service-type)
> (service sddm-service
> (sddm-configuration
> (display-server "wayland")))
> ...
> )
>
> # guix system reconfigure config.scm
> Backtrace:
> 14 (primitive-load "/root/.config/guix/current/bin/guix")
> In guix/ui.scm:
> 1734:12 13 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
> 829:9 12 (catch _ _ #<procedure 7ff6047408f8 at guix/ui.scm:701…> …)
> 829:9 11 (catch _ _ #<procedure 7ff604740910 at guix/ui.scm:824…> …)
> In guix/scripts/system.scm:
> 1301:8 10 (_)
> In guix/status.scm:
> 768:4 9 (call-with-status-report _ _)
> In guix/scripts/system.scm:
> 1159:4 8 (process-action _ _ _)
> In guix/store.scm:
> 623:10 7 (call-with-store _)
> 1794:24 6 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
> In guix/scripts/system.scm:
> 1175:13 5 (_ _)
> 882:18 4 (perform-action reconfigure #<<operating-system> kerne…> …)
> In gnu/system.scm:
> 851:19 3 (operating-system-derivation _)
> In gnu/services.scm:
> 743:6 2 (instantiate-missing-services _)
> In guix/combinators.scm:
> 45:26 1 (fold2 #<procedure adjust-service-list (svc result ins…> …)
> In gnu/services.scm:
> 733:11 0 (adjust-service-list _ (#<<service> type: #<service…> …) …)
>
> gnu/services.scm:733:11: In procedure adjust-service-list:
> In procedure struct_vtable: Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
> Please, let me know how to understand such errors. Here, I saw the same structure https://www.gnu.org/software/guix/manual/en/guix.html#index-sddm_002dservice
(sddm-service ...) returns a service instance so you don't need to wrap
it in (service ...). I think the key point to notice is it's
`sddm-service` and not `sddm-service-type` - service types go in
`(service ...)` as the second parameter but `service-*` functions
replace the `(service ...)` call entirely.
I'm not sure if there's more information you can get from the backtrace,
but where it says:
position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
it's saying it wanted a struct but got `sddm-service` which is a
`procedure` (function). And the last line of the trace has:
733:11 0 (adjust-service-list _ (#<<service> type: #<service…> …) …)
-- all the <service> things make me think that it's probably looking for
a struct of type <service>.
If you change it from `(service sddm-service)` to `(sddm-service
(sddm-configuration))` it should work (although you might want to
specify some values in sdm-configuration.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
2019-05-09 5:55 Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)> znavko
2019-05-09 7:26 ` rendaw
@ 2019-05-09 9:13 ` znavko
1 sibling, 0 replies; 3+ messages in thread
From: znavko @ 2019-05-09 9:13 UTC (permalink / raw)
To: rendaw, help-guix
I've got working config for gnome+wayland. here it is https://gitgud.io/znavko/guix-configs
May 9, 2019 7:26 AM, "rendaw" <7e9wc56emjakcm@s.rendaw.me> wrote:
> On 5/9/19 2:55 PM, znavko@disroot.org wrote:
>
>> Hello! I try to reconfigure system with Gnome, sddm and wayland.
>> I also use sddm-configuration to define use wayland for greeter, but get the error for my
>> misconfiguration:
>>
>> # cat config.scm
>> ...
>> (services (cons*
>> ;(service xfce-desktop-service-type)
>> (service gnome-desktop-service-type)
>> (service dhcp-client-service-type)
>> (service sddm-service
>> (sddm-configuration
>> (display-server "wayland")))
>> ...
>> )
>>
>> # guix system reconfigure config.scm
>> Backtrace:
>> 14 (primitive-load "/root/.config/guix/current/bin/guix")
>> In guix/ui.scm:
>> 1734:12 13 (run-guix-command _ . _)
>> In ice-9/boot-9.scm:
>> 829:9 12 (catch _ _ #<procedure 7ff6047408f8 at guix/ui.scm:701…> …)
>> 829:9 11 (catch _ _ #<procedure 7ff604740910 at guix/ui.scm:824…> …)
>> In guix/scripts/system.scm:
>> 1301:8 10 (_)
>> In guix/status.scm:
>> 768:4 9 (call-with-status-report _ _)
>> In guix/scripts/system.scm:
>> 1159:4 8 (process-action _ _ _)
>> In guix/store.scm:
>> 623:10 7 (call-with-store _)
>> 1794:24 6 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
>> In guix/scripts/system.scm:
>> 1175:13 5 (_ _)
>> 882:18 4 (perform-action reconfigure #<<operating-system> kerne…> …)
>> In gnu/system.scm:
>> 851:19 3 (operating-system-derivation _)
>> In gnu/services.scm:
>> 743:6 2 (instantiate-missing-services _)
>> In guix/combinators.scm:
>> 45:26 1 (fold2 #<procedure adjust-service-list (svc result ins…> …)
>> In gnu/services.scm:
>> 733:11 0 (adjust-service-list _ (#<<service> type: #<service…> …) …)
>>
>> gnu/services.scm:733:11: In procedure adjust-service-list:
>> In procedure struct_vtable: Wrong type argument in position 1 (expecting struct): #<procedure
>> sddm-service (#:optional config)>
>> Please, let me know how to understand such errors. Here, I saw the same structure
>> https://www.gnu.org/software/guix/manual/en/guix.html#index-sddm_002dservice
>
> (sddm-service ...) returns a service instance so you don't need to wrap
> it in (service ...). I think the key point to notice is it's
> `sddm-service` and not `sddm-service-type` - service types go in
> `(service ...)` as the second parameter but `service-*` functions
> replace the `(service ...)` call entirely.
>
> I'm not sure if there's more information you can get from the backtrace,
> but where it says:
>
> position 1 (expecting struct): #<procedure sddm-service (#:optional config)>
>
> it's saying it wanted a struct but got `sddm-service` which is a
> `procedure` (function). And the last line of the trace has:
>
> 733:11 0 (adjust-service-list _ (#<<service> type: #<service…> …) …)
>
> -- all the <service> things make me think that it's probably looking for
> a struct of type <service>.
>
> If you change it from `(service sddm-service)` to `(sddm-service
> (sddm-configuration))` it should work (although you might want to
> specify some values in sdm-configuration.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-05-09 9:13 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-09 5:55 Wrong type argument in position 1 (expecting struct): #<procedure sddm-service (#:optional config)> znavko
2019-05-09 7:26 ` rendaw
2019-05-09 9:13 ` znavko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).