blob: 8bd3d36a7468bc70f4c8b81cec2fcc373a3c5192 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
(define-module (systems mcdowell)
#:use-module (gnu system keyboard) ; keyboard-layout
#:use-module (machines portable-bios) ; bootloader-configuration*
; file-systems*
; firmware*
; hardware-groups
; initrd*
; kernel*
; swap-devices*
#:use-module (suweren system) ; %suweren-operating-system
#:use-module (users id1000) ; uid1000-account
; uid1000-home-environment
; uid1000-name
)
;; string
(define host-name*
"mcdowell")
;; (record user-account)
(define users*
(list uid1000-account))
;;;???????????????????????????????????????????????????????????????????
(define home-environments
`((,uid1000-name ,(uid1000-home-environment host-name*))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define bootloader-target-mcdowell
"/mnt/boot")
(define (desktop-services-mcdowell)
(use-modules (suweren system))
%suweren-services)
(define keyboard-layout-mcdowell
((@ (gnu system keyboard) keyboard-layout)
"pl"))
(define (home-environments-mcdowell)
(use-modules (gnu services guix))
((@ (gnu services) service)
guix-home-service-type
home-environments))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define (bootloader-mcdowell)
(use-modules (gnu bootloader grub))
((@ (gnu bootloader) bootloader-configuration)
(bootloader grub-efi-removable-bootloader)
(keyboard-layout keyboard-layout-mcdowell)
(targets (list bootloader-target-mcdowell))))
(define services-mcdowell
(append (desktop-services-mcdowell)
(list (home-environments-mcdowell))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define (operating-system*)
(use-modules (machines portable-bios)
(suweren system))
((@ (gnu system) operating-system)
(bootloader (bootloader-mcdowell))
(kernel kernel*)
(keyboard-layout keyboard-layout-mcdowell)
(initrd initrd*)
(firmware firmware*)
(host-name host-name*)
(file-systems (file-systems* host-name*))
(swap-devices (swap-devices* host-name*))
(users users*)
(timezone "Europe/Warsaw")
;; locale*
(services services-mcdowell)))
(define-public operating-system*
(operating-system*))
operating-system*
|