summaryrefslogtreecommitdiff
path: root/systems/mcdowell.scm
blob: 8ea848dd4f25d7304997fb4df4bccbaf03a5134a (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
(define-module (systems mcdowell))

(define host-name*
  "mcdowell")

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

(define (home-environments-mcdowell)
  (use-modules (users id1000))
  `((,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 (guix-home-service-mcdowell)
  (use-modules (gnu services guix))
  ((@ (gnu services) service)
   guix-home-service-type
   (home-environments-mcdowell)))

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

(define (bootloader-mcdowell)
  (use-modules (gnu bootloader grub))
  ((@ (gnu bootloader) bootloader-configuration)
   (bootloader grub-efi32-bootloader)
   (keyboard-layout keyboard-layout-mcdowell)
   (targets (list bootloader-target-mcdowell))))

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

(define (users-mcdowell)
  (use-modules (users id1000))
  (list uid1000-account))

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

(define (operating-system*)
  (use-modules (machines amd64)
	       (suweren system))
  ((@ (gnu system) operating-system)
   (kernel kernel-amd64)
   (bootloader (bootloader-mcdowell))
   (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-mcdowell))
   (timezone "Europe/Warsaw")
   ;; locale*
   (services services-mcdowell)))

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

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

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

operating-system*