guix: use local channels for finer control
[~bandali/configs] / .config / guix / system / chaman.scm
1 (use-modules (gnu)
2 (gnu packages certs) ; for nss-certs
3 (gnu packages emacs-xyz) ; for exwm
4 (gnu packages linux)) ; for powertop
5 (use-service-modules admin desktop mail networking pm ssh xorg)
6
7 (operating-system
8 (host-name "chaman")
9 (locale "en_CA.utf8")
10 (timezone "Canada/Eastern")
11 (keyboard-layout
12 (keyboard-layout "us" "basic"))
13 (bootloader
14 (bootloader-configuration
15 (bootloader grub-bootloader)
16 (target "/dev/sda")
17 (keyboard-layout keyboard-layout)))
18 (mapped-devices
19 (list (mapped-device
20 (source
21 (uuid "283da85e-2c84-47e6-a8ca-20f4e8efb806"))
22 (target "groot")
23 (type luks-device-mapping))
24 (mapped-device
25 (source
26 (uuid "017ddebc-c2c3-4a0a-bda4-d47ec0bc67f0"))
27 (target "data")
28 (type luks-device-mapping))))
29 (file-systems
30 (cons* (file-system
31 (mount-point "/")
32 (device "/dev/mapper/groot")
33 (type "ext4")
34 (dependencies mapped-devices))
35 (file-system
36 (mount-point "/data")
37 (device "/dev/mapper/data")
38 (type "ext4")
39 (dependencies mapped-devices))
40 %base-file-systems))
41 (users
42 (cons* (user-account
43 (name "mab")
44 (group "users")
45 (home-directory "/home/mab")
46 (supplementary-groups
47 '("wheel" "netdev" "audio" "video")))
48 %base-user-accounts))
49 (packages
50 (cons* nss-certs
51 emacs-exwm
52 %base-packages))
53 (services
54 (cons*
55 (service xfce-desktop-service-type)
56 (set-xorg-configuration
57 (xorg-configuration
58 (keyboard-layout keyboard-layout)))
59 (dovecot-service
60 #:config
61 (dovecot-configuration
62 ;; (log-path "/dev/stderr")
63 (protocols (list (protocol-configuration
64 (name "imap"))))
65 (ssl? "no")
66 (listen '("127.0.0.1"))
67 (disable-plaintext-auth? #f)
68 (auth-mechanisms '("plain"))
69 (postmaster-address "mab@gnu.local")
70 (mail-location "maildir:/home/mab/mail/%d/%n/mail")
71 (userdbs (list (userdb-configuration
72 (driver "static")
73 (args (list "uid=mab" "gid=users" "home=/home/mab/mail/%d/%n")))))
74 (passdbs (list (passdb-configuration
75 (driver "passwd-file")
76 (args (list "/data/dovecot-passwd")))))))
77 (service rottlog-service-type)
78 (service thermald-service-type)
79 (service tlp-service-type
80 (tlp-configuration
81 (cpu-boost-on-ac? #t)
82 (sound-power-save-on-bat 0)
83 (sound-power-save-controller? #f)
84 ;; (usb-blacklist "0e8f:00a8") ;for some reason doesn't seem to work
85 (usb-autosuspend? #f)))
86 (simple-service 'my-powertop-auto-tune activation-service-type
87 #~(zero? (system* #$(file-append powertop "/sbin/powertop")
88 "--auto-tune")))
89 %desktop-services)))