summaryrefslogtreecommitdiffstats
path: root/.config/guix/system/chaman.scm
blob: 6a60e110ad030ebdf9729176b10d6ee8a16e51d1 (plain) (blame)
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
84
85
86
87
88
89
90
(use-modules (gnu)
             (gnu packages certs)       ; for nss-certs
             (gnu packages emacs-xyz)   ; for exwm
             (gnu packages linux))      ; for powertop
(use-service-modules admin desktop mail networking pm ssh xorg)

(operating-system
 (host-name "chaman")
 (locale "en_CA.utf8")
 (timezone "Canada/Eastern")
 (keyboard-layout
  (keyboard-layout "us" "basic"))
 (bootloader
  (bootloader-configuration
   (bootloader grub-bootloader)
   (target "/dev/sda")
   (keyboard-layout keyboard-layout)))
 (mapped-devices
  (list (mapped-device
         (source
          (uuid "283da85e-2c84-47e6-a8ca-20f4e8efb806"))
         (target "groot")
         (type luks-device-mapping))
        (mapped-device
         (source
          (uuid "017ddebc-c2c3-4a0a-bda4-d47ec0bc67f0"))
         (target "data")
         (type luks-device-mapping))))
 (file-systems
  (cons* (file-system
          (mount-point "/")
          (device "/dev/mapper/groot")
          (type "ext4")
          (dependencies mapped-devices))
         (file-system
          (mount-point "/data")
          (device "/dev/mapper/data")
          (type "ext4")
          (dependencies mapped-devices))
         %base-file-systems))
 (users
  (cons* (user-account
          (name "mab")
          (group "users")
          (home-directory "/home/mab")
          (supplementary-groups
           '("wheel" "netdev" "audio" "video")))
         %base-user-accounts))
 (packages
  (cons* nss-certs
         emacs-exwm
         %base-packages))
 (services
  (cons*
   (service xfce-desktop-service-type)
   (set-xorg-configuration
    (xorg-configuration
     (keyboard-layout keyboard-layout)))
   (dovecot-service
    #:config
    (dovecot-configuration
     ;; (log-path "/dev/stderr")
     (protocols (list (protocol-configuration
                       (name "imap"))))
     (ssl? "no")
     (listen '("127.0.0.1"))
     (disable-plaintext-auth? #f)
     (auth-mechanisms '("plain"))
     (postmaster-address "mab@gnu.local")
     (mail-location "maildir:/home/mab/mail/%d/%n/mail")
     (userdbs (list (userdb-configuration
                     (driver "static")
                     (args (list "uid=mab" "gid=users" "home=/home/mab/mail/%d/%n")))))
     (passdbs (list (passdb-configuration
                     (driver "passwd-file")
                     (args (list "/data/dovecot-passwd")))))))
   (service rottlog-service-type)
   (service thermald-service-type)
   (service tlp-service-type
            (tlp-configuration
             (cpu-boost-on-ac? #t)
             (sound-power-save-on-bat 0)
             (sound-power-save-controller? #f)
             ;; (usb-blacklist "0e8f:00a8") ;for some reason doesn't seem to work
             (usb-autosuspend? #f)))
   (simple-service 'my-powertop-auto-tune activation-service-type
                   #~(zero? (system* #$(file-append powertop "/sbin/powertop")
                                     "--auto-tune")))
   (simple-service 'light-udev-rules udev-service-type (list light))
   %desktop-services)))