1 | (define-module (abcdw hosts ixy)
|
---|
2 | #:use-module (rde features base)
|
---|
3 | #:use-module (rde features system)
|
---|
4 | #:use-module (rde features wm)
|
---|
5 | #:use-module (gnu system file-systems)
|
---|
6 | #:use-module (gnu system mapped-devices)
|
---|
7 | #:use-module (ice-9 match))
|
---|
8 |
|
---|
9 | |
---|
10 |
|
---|
11 | ;;; Hardware/host specifis features
|
---|
12 |
|
---|
13 | ;; TODO: Switch from UUIDs to partition labels For better
|
---|
14 | ;; reproducibilty and easier setup. Grub doesn't support luks2 yet.
|
---|
15 |
|
---|
16 | (define ixy-mapped-devices
|
---|
17 | (list (mapped-device
|
---|
18 | (source (uuid "0e51ee1e-49ef-45c6-b0c3-6307e9980fa9"))
|
---|
19 | (target "enc")
|
---|
20 | (type luks-device-mapping))))
|
---|
21 |
|
---|
22 | (define ixy-file-systems
|
---|
23 | (append
|
---|
24 | (map (match-lambda
|
---|
25 | ((subvol . mount-point)
|
---|
26 | (file-system
|
---|
27 | (type "btrfs")
|
---|
28 | (device "/dev/mapper/enc")
|
---|
29 | (mount-point mount-point)
|
---|
30 | (options (format #f "subvol=~a" subvol))
|
---|
31 | (dependencies ixy-mapped-devices))))
|
---|
32 | '((root . "/")
|
---|
33 | (boot . "/boot")
|
---|
34 | (gnu . "/gnu")
|
---|
35 | (home . "/home")
|
---|
36 | (data . "/data")
|
---|
37 | (log . "/var/log")))
|
---|
38 | (list
|
---|
39 | (file-system
|
---|
40 | (mount-point "/boot/efi")
|
---|
41 | (type "vfat")
|
---|
42 | (device (uuid "8C99-0704" 'fat32))))))
|
---|
43 |
|
---|
44 | (define-public %ixy-features
|
---|
45 | (list
|
---|
46 | (feature-host-info
|
---|
47 | #:host-name "ixy"
|
---|
48 | ;; ls `guix build tzdata`/share/zoneinfo
|
---|
49 | #:timezone "Asia/Tbilisi")
|
---|
50 | ;;; Allows to declare specific bootloader configuration,
|
---|
51 | ;;; grub-efi-bootloader used by default
|
---|
52 | ;; (feature-bootloader)
|
---|
53 | (feature-file-systems
|
---|
54 | #:mapped-devices ixy-mapped-devices
|
---|
55 | #:file-systems ixy-file-systems)
|
---|
56 | (feature-kanshi
|
---|
57 | #:extra-config
|
---|
58 | `((profile laptop ((output eDP-1 enable)))
|
---|
59 | (profile docked ((output eDP-1 enable)
|
---|
60 | (output DP-2 scale 2)))))
|
---|
61 | (feature-hidpi)))
|
---|