summaryrefslogtreecommitdiff
path: root/guix/rde/src/hosts/live.scm
blob: 7e15ed8e64cd2ecc2dfd7ef589ef626828edd236 (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
(define-module (abcdw hosts live)
  #:use-module (rde features base)
  #:use-module (rde features system)

  #:use-module (rde system services admin)
  #:use-module (rde system services guix)

  #:use-module (gnu services)
  #:use-module (gnu system file-systems))


;;; Hardware/host specifis features

;; TODO: Switch from UUIDs to partition labels For better
;; reproducibilty and easier setup.  Grub doesn't support luks2 yet.

(define live-file-systems
  (list (file-system
          (mount-point "/")
          (device (file-system-label "Guix_image"))
          (type "ext4"))
        (file-system
          (mount-point "/tmp")
          (device "none")
          (type "tmpfs")
          (check? #f))))

(define sudoers-extra-service
  (simple-service
   'sudoers-extra
   sudoers-service-type
   (list "%wheel ALL=(ALL) NOPASSWD: ALL")))

(define live-extra-services
  (feature-custom-services
   #:feature-name-prefix 'live-extra
   #:system-services
   (list
    sudoers-extra-service
    (service cow-store-service-type))))

(define-public %live-features
  (list
   (feature-host-info
    #:host-name "live"
    #:issue "This is rde.  Welcome.  Login and password - guest and guest.\n"
    ;; ls `guix build tzdata`/share/zoneinfo
    #:timezone  "Europe/Kiev")
   live-extra-services
   (feature-file-systems
    #:file-systems live-file-systems)))