The error:
------------------------------------------------------
guix system: warning: The 'device' field of bootloader configurations is deprecated.
guix system: warning: Use 'target' instead.
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 33.3%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 66.7%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 33.3%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 66.7%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute:
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 0.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
Backtrace:
14 (primitive-load "/gnu/store/xcnrc8lvq7yks3c02cpknphj3n0?")
In guix/ui.scm:
1375:12 13 (run-guix-command _ . _)
In ice-9/boot-9.scm:
837:9 12 (catch _ _ #<procedure b56555a8 at guix/ui.scm:451:2 (?> ?)
837:9 11 (catch _ _ #<procedure b56555b8 at guix/ui.scm:539:6 (?> ?)
In guix/scripts/system.scm:
1034:8 10 (_)
909:6 9 (process-action _ _ _)
In guix/store.scm:
1443:24 8 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
In guix/scripts/system.scm:
660:31 7 (_ _)
In srfi/srfi-1.scm:
705:23 6 (filter-map #<procedure system->boot-parameters (sys?> . #)
In ice-9/boot-9.scm:
837:9 5 (catch system-error #<procedure b9c3738 at guix/script?> ?)
In guix/scripts/system.scm:
384:30 4 (_)
In gnu/system.scm:
307:17 3 (read-boot-parameters-file "/var/guix/profiles/system-1?")
In ice-9/ports.scm:
444:17 2 (call-with-input-file _ _ #:binary _ #:encoding _ # _)
In gnu/system.scm:
282:10 1 (read-boot-parameters _)
238:4 0 (device-sexp->device _)
gnu/system.scm:238:4: In procedure device-sexp->device:
gnu/system.scm:238:4: Throw to key `match-error' with args `("match" "no matching pattern" #f)'.
--------------------------------------------------------
the below is my config:
----------------
(use-modules (gnu) (gnu system nss))
(use-modules (gnu system locale))
(use-service-modules desktop)
(use-package-modules certs gnome)
(operating-system
(host-name "tumashu")
(timezone "Asia/Shanghai")
(locale "zh_CN.UTF-8")
(locale-definitions
(cons* (locale-definition
(name "zh_CN.GB2312")
(source "zh_CN"))
(locale-definition
(name "zh_CN.GBK")
(source "zh_CN"))
(locale-definition
(name "zh_CN.GB18030")
(source "zh_CN"))
(locale-definition
(name "zh_TW.BIG5")
(source "zh_TW"))
(locale-definition
(name "zh_TW.UTF-8")
(source "zh_TW"))
%default-locale-definitions))
;; Assuming /dev/sdX is the target hard disk
(bootloader (grub-configuration (device "/dev/sda")))
(file-systems
(cons*
(file-system
(device "/dev/sda7")
(title 'device)
(mount-point "/")
(type "ext4"))
(file-system
(device "/dev/sda5")
(title 'device)
(mount-point "/home")
(type "ext4"))
(file-system
(device "/dev/sda6")
(title 'device)
(mount-point "/mnt/backup1")
(type "ext4"))
%base-file-systems))
(swap-devices '("/dev/sda8"))
(users (cons (user-account
(name "feng")
(comment "Feng Shu")
(group "users")
(supplementary-groups
'("wheel" "netdev" "audio" "video"))
(home-directory "/home/feng"))
%base-user-accounts))
;; This is where we specify system-wide packages.
(packages
(append (map specification->package
'("wpa-supplicant"
"gvfs" "nss-certs"
"font-wqy-microhei"
))
%base-packages))
;; Add GNOME and/or Xfce---we can choose at the log-in
;; screen with F1. Use the "desktop" services, which
;; include the X11 log-in service, networking with Wicd,
;; and more.
(services (cons* (xfce-desktop-service)
%desktop-services))
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss))
---------------