summaryrefslogtreecommitdiff
path: root/systems/mcdowell.scm
blob: c7a418dc9a0744156852e2bf23497cdea5e93ffa (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
(define-module (systems mcdowell)
  #:use-module (gnu services)		; service
  #:use-module (gnu services guix)	; guix-home-service-type
  #: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 (desktop-services-mcdowell)
  (use-modules (suweren system))
  %suweren-services)

(define guix-home
  (service guix-home-service-type
           home-environments))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(define services-mcdowell
  (append (desktop-services-mcdowell)
          (list guix-home)))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(define (operating-system*)
  (use-modules (machines portable-bios)
	       (suweren system))
  (let* ((keyboard-layout* (keyboard-layout "pl"))
	 (timezone* "Europe/Warsaw"))
    ((@ (gnu system) operating-system)
     (kernel kernel*)
     (bootloader (bootloader-configuration* keyboard-layout*))
     (keyboard-layout keyboard-layout*)
     (initrd initrd*)
     (firmware firmware*)
     (host-name host-name*)
     (file-systems (file-systems* host-name*))
     (swap-devices (swap-devices* host-name*))
     (users users*)
     (timezone timezone*)
     ;; locale*
     (services services-mcdowell))))

(define-public operating-system*
  (operating-system*))

operating-system*