Subject: bug#31885: closed (Re: bug#31885: Bug when running guix system reconfigure after recent guix pull)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 18 Jun 2018 20:46:02 +0000

Your bug report

#31885: Bug when running guix system reconfigure after recent guix pull

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
31885: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=31885
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#31885: Bug when running guix system reconfigure after recent guix pull
From: Clément Lassieur <[email-masked]>
To: [email-masked]
Cc: [email-masked]
Date: Mon, 18 Jun 2018 22:45:42 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello!

[email-masked] writes:

> gnu/services.scm:703:40: In procedure service-kind: Wrong type argument:
> #<<slim-configuration> slim: #<package [email-masked]
> gnu/packages/display-managers.scm:312 2963cc0> allow-empty-passwords?:
> #t auto-login?: #t default-user: "annika" theme: #<<file-append> base:
> #<origin #<<git-reference> url:
> "git://git.savannah.gnu.org/guix/guix-artwork.git" commit:
> "6998d30425289b087c64f63e7415df2241e591db" recursive?: #f>

[...]

>   (services (cons* 
> 		(slim-configuration
> 			(auto-login? #t)
> 			(default-user "swedebugia")
> 			(auto-login-session "xfdesktop"))
> 		(guix-configuration
> ;			#:authorize-keys (cons "/home/swedebugia/berlin.guixsd.org.pub"
> ;						%default-authorized-guix-keys)
> 			(substitute-urls (cons	"https://berlin.guixsd.org"
> 						%default-substitute-urls)))
> 		;; Is this correct?
> ;		(tlp-servicy-type
> ;			(tlp-configuration
> ;				;; Should I use parenteses instead of "#:"?
> ;				(cpu-scaling-govenor-on-ac (list "conservative"))
> ;				(cpu-scaling-govenor-on-bat (list "conservative"))))
> 		(xfce-desktop-service)
>                    %desktop-services))

This is because this 'services' field is expecting 'services' and gets
other things like 'configuration records' instead.

You might want something like this (not tested):

--8<---------------cut here---------------start------------->8---
(services (cons*
           (service slim-service-type
                    (slim-configuration
                     (auto-login? #t)
                     (default-user "swedebugia")
                     (auto-login-session "xfdesktop")))

           (service tlp-servicy-type
                    (tlp-configuration
                     (cpu-scaling-governor-on-ac (list "conservative"))
                     (cpu-scaling-governor-on-bat (list "conservative"))))

           (xfce-desktop-service)

           (modify-services %desktop-services
             (guix-service-type
              config =>
              (guix-configuration
               (inherit config)
               (substitute-urls (cons "https://berlin.guixsd.org"
                                      %default-substitute-urls))
               (authorized-keys (cons "/home/swedebugia/berlin.guixsd.org.pub"
                                      %default-authorized-guix-keys)))))))
--8<---------------cut here---------------end--------------->8---

The guix-service-type service needs to be modified because it is already
in %desktop-services, and you can't have it twice.

> ;				;; Should I use parenteses instead of "#:"?

Things ending with '-configuration' are usually macros that can be used
to instantiate the corresponding records.  They take arguments like
'(field value)'.  '#:' is used when passing arguments to normal
functions.

This is complex, but you can usually know what things expect by looking
at the examples in the documentation.

If you have similar issues, please email [email-masked] instead.

Good luck, and don't hesitate to ask! :-)
Clément

Subject: Bug when running guix system reconfigure after recent guix pull
From: [email-masked]
To: [email-masked]
Date: Mon, 18 Jun 2018 12:24:47 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Ran guix pull twice on commit b4eae997fe5b928f179c34d281e9f2c3eccd3670
See config attached or here: https://paste.debian.net/1029776/

root@antelope ~# guix --version
guile: warning: failed to install locale
warning: failed to install locale: Invalid argument
guix (GNU Guix) b4eae997fe5b928f179c34d281e9f2c3eccd3670
Copyright (C) 2018 the Guix authors

root@antelope ~# .config/guix/current/bin/guix system reconfigure
/etc/config.scm --cores=1
guile: warning: failed to install locale
warning: failed to install locale: Invalid argument
Backtrace:
          12 (primitive-load "/root/.config/guix/current/bin/guix")
In guix/ui.scm:
  1557:12 11 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    829:9 10 (catch _ _ #<procedure 7feafe98f980 at guix/ui.scm:593?> ?)
    829:9  9 (catch _ _ #<procedure 7feafe98f998 at guix/ui.scm:711?> ?)
In guix/scripts/system.scm:
   1224:8  8 (_)
   1094:6  7 (process-action _ _ _)
In guix/store.scm:
  1414:24  6 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
In guix/scripts/system.scm:
  1107:13  5 (_ _)
   805:18  4 (perform-action reconfigure #<<operating-system> kerne?> ?)
In gnu/system.scm:
   843:19  3 (operating-system-derivation _ #:container? _)
In gnu/services.scm:
   702:19  2 (instantiate-missing-services (#<<slim-configuration?> ?))
In srfi/srfi-1.scm:
   466:18  1 (fold #<procedure 7feaf2c96a50 at gnu/services.scm:702?> ?)
In gnu/services.scm:
   703:40  0 (_ _ _)

gnu/services.scm:703:40: In procedure service-kind: Wrong type argument:
#<<slim-configuration> slim: #<package [email-masked]
gnu/packages/display-managers.scm:312 2963cc0> allow-empty-passwords?:
#t auto-login?: #t default-user: "annika" theme: #<<file-append> base:
#<origin #<<git-reference> url:
"git://git.savannah.gnu.org/guix/guix-artwork.git" commit:
"6998d30425289b087c64f63e7415df2241e591db" recursive?: #f>
gjomvsacge5nz76kqiyzbpiin32l7nn672voskuo7ahz3za56jga () 193e840> suffix:
("/slim")> theme-name: "0.x" xauth: #<package [email-masked]
gnu/packages/xorg.scm:1994 23ffa80> shepherd: #<package [email-masked]
gnu/packages/admin.scm:173 24ab180> auto-login-session: "xfdesktop"
startx: #<<program-file> name: "startx" gexp: #<gexp (apply execl
#<gexp-input #<<program-file> name: "X-wrapper" gexp: #<gexp (begin
(setenv "XORG_DRI_DRIVER_PATH" (string-append #<gexp-input #<package
[email-masked] gnu/packages/gl.scm:225 208d480>:out> "/lib/dri")) (setenv
"XKB_BINDIR" (string-append #<gexp-input #<package [email-masked]
gnu/packages/xorg.scm:3760 2415e40>:out> "/bin")) (let ((X
(string-append #<gexp-input #<package [email-masked]
gnu/packages/xorg.scm:5072 2423c00>:out> "/bin/X"))) (apply execl X X
"-xkbdir" (string-append #<gexp-input #<package [email-masked]
gnu/packages/xorg.scm:3836 2415c00>:out> "/share/X11/xkb") "-config"
#<gexp-input #<<computed-file> name: "xserver.conf" gexp: #<gexp (begin
(use-modules (ice-9 match) (srfi srfi-1) (srfi srfi-26))
(call-with-output-file #<gexp-output out> (lambda (port) (define drivers
(quote #<gexp-input ():out>)) (define (device-section driver)
(string-append "\nSection \"Device\"\n  Identifier \"device-" driver
"\"\n  Driver \"" driver "\"\nEndSection")) (define (screen-section
driver resolutions) (string-append "\nSection \"Screen\"\n  Identifier
\"screen-" driver "\"\n  Device \"device-" driver "\"\n  SubSection
\"Display\"\n    Modes " (string-join (map (match-lambda ((x y)
(string-append "\"" (number->string x) "x" (number->string y) "\"")))
resolutions)) "\n  EndSubSection\nEndSection")) (define (expand modules)
(append-map (lambda (module) (filter-map (lambda (directory) (let ((full
(string-append module directory))) (and (file-exists? full) full)))
(quote ("/lib/xorg/modules/drivers" "/lib/xorg/modules/input"
"/lib/xorg/modules/multimedia" "/lib/xorg/modules/extensions"))))
modules)) (display "Section \"Files\"\n" port) (for-each (lambda (font)
(format port "  FontPath \"~a\"~%" font)) (quote #<gexp-input
(#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix: ("/share/fonts/X11/75dpi")>
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix: ("/share/fonts/X11/100dpi")>
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix: ("/share/fonts/X11/misc")>
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix:
("/share/fonts/X11/cyrillic")> #<<file-append> base: #<package
[email-masked] gnu/packages/xorg.scm:714 23f1f00> suffix:
("/share/fonts/X11/misc")> #<<file-append> base: #<package
[email-masked] gnu/packages/xorg.scm:489 23e8600> suffix:
("/share/fonts/X11/75dpi")>):out>)) (for-each (lambda (module) (format
port "  ModulePath \"~a\"~%" module)) (append (expand (quote
#<gexp-input (#<package [email-masked] gnu/packages/xorg.scm:3417
240e780> #<package [email-masked] gnu/packages/xorg.scm:2732
2407840> #<package [email-masked] gnu/packages/xorg.scm:2675
24079c0> #<package [email-masked] gnu/packages/xorg.scm:2703
2407900> #<package [email-masked]
gnu/packages/xorg.scm:2914 2407480> #<package [email-masked]
gnu/packages/xorg.scm:2961 24073c0> #<package [email-masked]
gnu/packages/xorg.scm:3097 24070c0> #<package [email-masked]
gnu/packages/xorg.scm:3070 2407180> #<package [email-masked]
gnu/packages/xorg.scm:3259 240ec00> #<package [email-masked]
gnu/packages/xorg.scm:2447 2407f00> #<package [email-masked]
gnu/packages/xorg.scm:2413 23ff000> #<package [email-masked]
gnu/packages/xorg.scm:2507 2407d80> #<package [email-masked]
gnu/packages/xorg.scm:2531 2407cc0> #<package [email-masked]
gnu/packages/xorg.scm:2563 2407c00> #<package [email-masked]
gnu/packages/xorg.scm:5072 2423c00>):out>)) (list #<gexp-input
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:5072 2423c00> suffix:
("/lib/xorg/modules")>:out>))) (display "EndSection\n" port) (display
"\nSection \"ServerFlags\"\n  Option \"AllowMouseOpenFail\"
\"on\"\nEndSection\n" port) (display (string-join (map device-section
drivers) "\n") port) (newline port) (display (string-join (map (cut
screen-section <> (quote #<gexp-input ():out>)) drivers) "\n") port)
(newline port) (for-each (lambda (config) (display config port)) (quote
#<gexp-input ():out>))))) 2e5e090> guile: #f options: (#:local-build?
#t)>:out> "-configdir" #<gexp-input #<<computed-file> name:
"xorg.conf.d" gexp: #<gexp  2e5e000> guile: #f options: (#:local-build?
#t)>:out> (cdr (command-line))))) 2e7ce70> guile: #f path:
("/gnu/store/smr91vhrzakk8mf6ylwmmddnr7wgl1fp-guix-b4eae997f-modules"
"/gnu/store/2rfa6337gb84bx4f2jzn5h9wfi3lhjik-guile-git-0.0-6.36f93c1/share/guile/site/2.2"
"/gnu/store/1aglyrvw57cbw4njc2q4blmbqin3r7k2-guile-bytestructures-1.0.3/share/guile/site/2.2"
"/gnu/store/6jjn9fsma94qa6y86qwiyyqfsm2mjkxy-guile-json-1.0.1/share/guile/site/2.2"
"/gnu/store/5lmr2x0cl45x0f15hsbaw4y560gnwry3-guile-ssh-0.11.2/share/guile/site/2.2"
"/gnu/store/r21yw2lkm4fr1n7x1nxgpqrjw0xkln9r-guile-sqlite3-0.0-4.10c13a7/share/guile/site/2.2"
"/gnu/store/iv3yg0g269hnxc1aqk9r55aq3h72c6m1-module-import"
"/gnu/store/iv3yg0g269hnxc1aqk9r55aq3h72c6m1-module-import"
"/run/current-system/profile/share/guile/site/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/site/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/site"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile")>:out>
#<gexp-input #<<program-file> name: "X-wrapper" gexp: #<gexp (begin
(setenv "XORG_DRI_DRIVER_PATH" (string-append #<gexp-input #<package
[email-masked] gnu/packages/gl.scm:225 208d480>:out> "/lib/dri")) (setenv
"XKB_BINDIR" (string-append #<gexp-input #<package [email-masked]
gnu/packages/xorg.scm:3760 2415e40>:out> "/bin")) (let ((X
(string-append #<gexp-input #<package [email-masked]
gnu/packages/xorg.scm:5072 2423c00>:out> "/bin/X"))) (apply execl X X
"-xkbdir" (string-append #<gexp-input #<package [email-masked]
gnu/packages/xorg.scm:3836 2415c00>:out> "/share/X11/xkb") "-config"
#<gexp-input #<<computed-file> name: "xserver.conf" gexp: #<gexp (begin
(use-modules (ice-9 match) (srfi srfi-1) (srfi srfi-26))
(call-with-output-file #<gexp-output out> (lambda (port) (define drivers
(quote #<gexp-input ():out>)) (define (device-section driver)
(string-append "\nSection \"Device\"\n  Identifier \"device-" driver
"\"\n  Driver \"" driver "\"\nEndSection")) (define (screen-section
driver resolutions) (string-append "\nSection \"Screen\"\n  Identifier
\"screen-" driver "\"\n  Device \"device-" driver "\"\n  SubSection
\"Display\"\n    Modes " (string-join (map (match-lambda ((x y)
(string-append "\"" (number->string x) "x" (number->string y) "\"")))
resolutions)) "\n  EndSubSection\nEndSection")) (define (expand modules)
(append-map (lambda (module) (filter-map (lambda (directory) (let ((full
(string-append module directory))) (and (file-exists? full) full)))
(quote ("/lib/xorg/modules/drivers" "/lib/xorg/modules/input"
"/lib/xorg/modules/multimedia" "/lib/xorg/modules/extensions"))))
modules)) (display "Section \"Files\"\n" port) (for-each (lambda (font)
(format port "  FontPath \"~a\"~%" font)) (quote #<gexp-input
(#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix: ("/share/fonts/X11/75dpi")>
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix: ("/share/fonts/X11/100dpi")>
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix: ("/share/fonts/X11/misc")>
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:518 23e8540> suffix:
("/share/fonts/X11/cyrillic")> #<<file-append> base: #<package
[email-masked] gnu/packages/xorg.scm:714 23f1f00> suffix:
("/share/fonts/X11/misc")> #<<file-append> base: #<package
[email-masked] gnu/packages/xorg.scm:489 23e8600> suffix:
("/share/fonts/X11/75dpi")>):out>)) (for-each (lambda (module) (format
port "  ModulePath \"~a\"~%" module)) (append (expand (quote
#<gexp-input (#<package [email-masked] gnu/packages/xorg.scm:3417
240e780> #<package [email-masked] gnu/packages/xorg.scm:2732
2407840> #<package [email-masked] gnu/packages/xorg.scm:2675
24079c0> #<package [email-masked] gnu/packages/xorg.scm:2703
2407900> #<package [email-masked]
gnu/packages/xorg.scm:2914 2407480> #<package [email-masked]
gnu/packages/xorg.scm:2961 24073c0> #<package [email-masked]
gnu/packages/xorg.scm:3097 24070c0> #<package [email-masked]
gnu/packages/xorg.scm:3070 2407180> #<package [email-masked]
gnu/packages/xorg.scm:3259 240ec00> #<package [email-masked]
gnu/packages/xorg.scm:2447 2407f00> #<package [email-masked]
gnu/packages/xorg.scm:2413 23ff000> #<package [email-masked]
gnu/packages/xorg.scm:2507 2407d80> #<package [email-masked]
gnu/packages/xorg.scm:2531 2407cc0> #<package [email-masked]
gnu/packages/xorg.scm:2563 2407c00> #<package [email-masked]
gnu/packages/xorg.scm:5072 2423c00>):out>)) (list #<gexp-input
#<<file-append> base: #<package [email-masked]
gnu/packages/xorg.scm:5072 2423c00> suffix:
("/lib/xorg/modules")>:out>))) (display "EndSection\n" port) (display
"\nSection \"ServerFlags\"\n  Option \"AllowMouseOpenFail\"
\"on\"\nEndSection\n" port) (display (string-join (map device-section
drivers) "\n") port) (newline port) (display (string-join (map (cut
screen-section <> (quote #<gexp-input ():out>)) drivers) "\n") port)
(newline port) (for-each (lambda (config) (display config port)) (quote
#<gexp-input ():out>))))) 2e5e090> guile: #f options: (#:local-build?
#t)>:out> "-configdir" #<gexp-input #<<computed-file> name:
"xorg.conf.d" gexp: #<gexp  2e5e000> guile: #f options: (#:local-build?
#t)>:out> (cdr (command-line))))) 2e7ce70> guile: #f path:
("/gnu/store/smr91vhrzakk8mf6ylwmmddnr7wgl1fp-guix-b4eae997f-modules"
"/gnu/store/2rfa6337gb84bx4f2jzn5h9wfi3lhjik-guile-git-0.0-6.36f93c1/share/guile/site/2.2"
"/gnu/store/1aglyrvw57cbw4njc2q4blmbqin3r7k2-guile-bytestructures-1.0.3/share/guile/site/2.2"
"/gnu/store/6jjn9fsma94qa6y86qwiyyqfsm2mjkxy-guile-json-1.0.1/share/guile/site/2.2"
"/gnu/store/5lmr2x0cl45x0f15hsbaw4y560gnwry3-guile-ssh-0.11.2/share/guile/site/2.2"
"/gnu/store/r21yw2lkm4fr1n7x1nxgpqrjw0xkln9r-guile-sqlite3-0.0-4.10c13a7/share/guile/site/2.2"
"/gnu/store/iv3yg0g269hnxc1aqk9r55aq3h72c6m1-module-import"
"/gnu/store/iv3yg0g269hnxc1aqk9r55aq3h72c6m1-module-import"
"/run/current-system/profile/share/guile/site/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/site/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/site"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile")>:out>
"-logverbose" "-verbose" "-nolisten" "tcp" "-terminate" (cdr
(command-line))) 2e7cde0> guile: #f path:
("/gnu/store/smr91vhrzakk8mf6ylwmmddnr7wgl1fp-guix-b4eae997f-modules"
"/gnu/store/2rfa6337gb84bx4f2jzn5h9wfi3lhjik-guile-git-0.0-6.36f93c1/share/guile/site/2.2"
"/gnu/store/1aglyrvw57cbw4njc2q4blmbqin3r7k2-guile-bytestructures-1.0.3/share/guile/site/2.2"
"/gnu/store/6jjn9fsma94qa6y86qwiyyqfsm2mjkxy-guile-json-1.0.1/share/guile/site/2.2"
"/gnu/store/5lmr2x0cl45x0f15hsbaw4y560gnwry3-guile-ssh-0.11.2/share/guile/site/2.2"
"/gnu/store/r21yw2lkm4fr1n7x1nxgpqrjw0xkln9r-guile-sqlite3-0.0-4.10c13a7/share/guile/site/2.2"
"/gnu/store/iv3yg0g269hnxc1aqk9r55aq3h72c6m1-module-import"
"/gnu/store/iv3yg0g269hnxc1aqk9r55aq3h72c6m1-module-import"
"/run/current-system/profile/share/guile/site/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/site/2.2"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile/site"
"/gnu/store/1mr5izrbxwd7cbq8m1xrqm45rzkibpsj-guile-2.2.3/share/guile")>
sessreg: #<package [email-masked] gnu/packages/xorg.scm:1782 23f7000>>